From 8e6ac54c1a2966ad5c07cd51ef609005a1fd70cc Mon Sep 17 00:00:00 2001 From: David Hassell Date: Tue, 12 Oct 2021 10:35:58 +0100 Subject: [PATCH] v1.9.0.1 archive documentation --- docs/1.9.0.1/Changelog.html | 609 + .../_downloads/cfdm_tutorial_files.zip | Bin 0 -> 6677 bytes docs/1.9.0.1/_downloads/tutorial.py | 803 ++ docs/1.9.0.1/_images/cfdm_field.svg | 317 + docs/1.9.0.1/_static/alabaster.css | 703 + docs/1.9.0.1/_static/basic.css | 768 ++ docs/1.9.0.1/_static/clipboard.min.js | 7 + docs/1.9.0.1/_static/copy-button.svg | 5 + docs/1.9.0.1/_static/copybutton.css | 67 + docs/1.9.0.1/_static/copybutton.js | 153 + docs/1.9.0.1/_static/copybutton_funcs.js | 47 + docs/1.9.0.1/_static/custom.css | 1 + docs/1.9.0.1/_static/customise-alabaster.css | 104 + docs/1.9.0.1/_static/default.css | 273 + docs/1.9.0.1/_static/doctools.js | 314 + docs/1.9.0.1/_static/documentation_options.js | 11 + docs/1.9.0.1/_static/file.png | Bin 0 -> 286 bytes docs/1.9.0.1/_static/graphviz.css | 19 + docs/1.9.0.1/_static/jquery-3.4.1.js | 10598 ++++++++++++++++ docs/1.9.0.1/_static/jquery.js | 2 + docs/1.9.0.1/_static/language_data.js | 297 + docs/1.9.0.1/_static/minus.png | Bin 0 -> 90 bytes docs/1.9.0.1/_static/plus.png | Bin 0 -> 90 bytes docs/1.9.0.1/_static/pygments.css | 82 + docs/1.9.0.1/_static/searchtools.js | 506 + docs/1.9.0.1/_static/toggleprompt.js | 74 + docs/1.9.0.1/_static/underscore-1.3.1.js | 999 ++ docs/1.9.0.1/_static/underscore.js | 31 + docs/1.9.0.1/_templates/about.html | 65 + docs/1.9.0.1/_templates/attribute.rst | 7 + docs/1.9.0.1/_templates/base.rst | 4 + docs/1.9.0.1/_templates/function.rst | 7 + docs/1.9.0.1/_templates/globaltoc.html | 12 + docs/1.9.0.1/_templates/layout.html | 6 + docs/1.9.0.1/_templates/logo_EC.png | Bin 0 -> 37391 bytes docs/1.9.0.1/_templates/logo_ERC.png | Bin 0 -> 30190 bytes docs/1.9.0.1/_templates/logo_NCAS.png | Bin 0 -> 44326 bytes docs/1.9.0.1/_templates/logo_NERC.png | Bin 0 -> 2560 bytes docs/1.9.0.1/_templates/method.rst | 9 + docs/1.9.0.1/_templates/page.html | 17 + docs/1.9.0.1/_templates/sponsors.html | 21 + docs/1.9.0.1/api_reference.html | 195 + docs/1.9.0.1/attribute/cfdm.Array.array.html | 173 + docs/1.9.0.1/attribute/cfdm.Array.dtype.html | 166 + docs/1.9.0.1/attribute/cfdm.Array.ndim.html | 184 + docs/1.9.0.1/attribute/cfdm.Array.shape.html | 184 + docs/1.9.0.1/attribute/cfdm.Array.size.html | 184 + .../cfdm.AuxiliaryCoordinate.bounds.html | 188 + ...dm.AuxiliaryCoordinate.construct_type.html | 173 + .../cfdm.AuxiliaryCoordinate.data.html | 189 + .../cfdm.AuxiliaryCoordinate.dtype.html | 163 + ...fdm.AuxiliaryCoordinate.interior_ring.html | 187 + .../cfdm.AuxiliaryCoordinate.ndim.html | 193 + .../cfdm.AuxiliaryCoordinate.shape.html | 193 + .../cfdm.AuxiliaryCoordinate.size.html | 193 + docs/1.9.0.1/attribute/cfdm.Bounds.data.html | 189 + docs/1.9.0.1/attribute/cfdm.Bounds.dtype.html | 163 + docs/1.9.0.1/attribute/cfdm.Bounds.ndim.html | 193 + docs/1.9.0.1/attribute/cfdm.Bounds.shape.html | 193 + docs/1.9.0.1/attribute/cfdm.Bounds.size.html | 193 + .../cfdm.CellMeasure.construct_type.html | 173 + .../attribute/cfdm.CellMeasure.data.html | 189 + .../attribute/cfdm.CellMeasure.dtype.html | 163 + .../attribute/cfdm.CellMeasure.ndim.html | 193 + .../attribute/cfdm.CellMeasure.shape.html | 193 + .../attribute/cfdm.CellMeasure.size.html | 193 + .../cfdm.CellMethod.construct_type.html | 173 + .../attribute/cfdm.CompressedArray.array.html | 170 + ...cfdm.CompressedArray.compressed_array.html | 172 + .../attribute/cfdm.CompressedArray.dtype.html | 163 + .../attribute/cfdm.CompressedArray.ndim.html | 181 + .../attribute/cfdm.CompressedArray.shape.html | 181 + .../attribute/cfdm.CompressedArray.size.html | 181 + .../attribute/cfdm.Constant._func.html | 155 + .../attribute/cfdm.Constant.value.html | 155 + ...dm.CoordinateReference.construct_type.html | 173 + ...dinateReference.coordinate_conversion.html | 184 + .../cfdm.CoordinateReference.datum.html | 180 + docs/1.9.0.1/attribute/cfdm.Count.data.html | 189 + docs/1.9.0.1/attribute/cfdm.Count.dtype.html | 163 + docs/1.9.0.1/attribute/cfdm.Count.ndim.html | 193 + docs/1.9.0.1/attribute/cfdm.Count.shape.html | 193 + docs/1.9.0.1/attribute/cfdm.Count.size.html | 193 + docs/1.9.0.1/attribute/cfdm.Data.array.html | 179 + .../attribute/cfdm.Data.compressed_array.html | 176 + .../attribute/cfdm.Data.datetime_array.html | 201 + .../cfdm.Data.datetime_as_string.html | 190 + docs/1.9.0.1/attribute/cfdm.Data.dtype.html | 163 + docs/1.9.0.1/attribute/cfdm.Data.mask.html | 184 + docs/1.9.0.1/attribute/cfdm.Data.ndim.html | 181 + docs/1.9.0.1/attribute/cfdm.Data.shape.html | 181 + docs/1.9.0.1/attribute/cfdm.Data.size.html | 181 + .../cfdm.DimensionCoordinate.bounds.html | 188 + ...dm.DimensionCoordinate.construct_type.html | 173 + .../cfdm.DimensionCoordinate.data.html | 189 + .../cfdm.DimensionCoordinate.dtype.html | 163 + ...fdm.DimensionCoordinate.interior_ring.html | 187 + .../cfdm.DimensionCoordinate.ndim.html | 193 + .../cfdm.DimensionCoordinate.shape.html | 193 + .../cfdm.DimensionCoordinate.size.html | 193 + .../cfdm.Domain.auxiliary_coordinates.html | 145 + .../attribute/cfdm.Domain.cell_measures.html | 145 + .../attribute/cfdm.Domain.construct_type.html | 173 + .../attribute/cfdm.Domain.constructs.html | 180 + .../cfdm.Domain.coordinate_references.html | 145 + .../attribute/cfdm.Domain.coordinates.html | 145 + .../cfdm.Domain.dimension_coordinates.html | 145 + .../cfdm.Domain.domain_ancillaries.html | 145 + .../attribute/cfdm.Domain.domain_axes.html | 145 + .../cfdm.DomainAncillary.bounds.html | 188 + .../cfdm.DomainAncillary.construct_type.html | 173 + .../attribute/cfdm.DomainAncillary.data.html | 189 + .../attribute/cfdm.DomainAncillary.dtype.html | 163 + .../cfdm.DomainAncillary.interior_ring.html | 187 + .../attribute/cfdm.DomainAncillary.ndim.html | 193 + .../attribute/cfdm.DomainAncillary.shape.html | 193 + .../attribute/cfdm.DomainAncillary.size.html | 193 + .../cfdm.DomainAxis.construct_type.html | 173 + .../cfdm.Field.auxiliary_coordinates.html | 145 + .../attribute/cfdm.Field.cell_measures.html | 145 + .../attribute/cfdm.Field.cell_methods.html | 145 + .../attribute/cfdm.Field.construct_type.html | 173 + .../attribute/cfdm.Field.constructs.html | 180 + .../cfdm.Field.coordinate_references.html | 145 + .../attribute/cfdm.Field.coordinates.html | 145 + docs/1.9.0.1/attribute/cfdm.Field.data.html | 189 + .../cfdm.Field.dimension_coordinates.html | 145 + docs/1.9.0.1/attribute/cfdm.Field.domain.html | 184 + .../cfdm.Field.domain_ancillaries.html | 145 + .../attribute/cfdm.Field.domain_axes.html | 145 + docs/1.9.0.1/attribute/cfdm.Field.dtype.html | 163 + .../cfdm.Field.field_ancillaries.html | 145 + docs/1.9.0.1/attribute/cfdm.Field.ndim.html | 193 + docs/1.9.0.1/attribute/cfdm.Field.shape.html | 193 + docs/1.9.0.1/attribute/cfdm.Field.size.html | 193 + .../cfdm.FieldAncillary.construct_type.html | 173 + .../attribute/cfdm.FieldAncillary.data.html | 189 + .../attribute/cfdm.FieldAncillary.dtype.html | 163 + .../attribute/cfdm.FieldAncillary.ndim.html | 193 + .../attribute/cfdm.FieldAncillary.shape.html | 193 + .../attribute/cfdm.FieldAncillary.size.html | 193 + .../attribute/cfdm.GatheredArray.array.html | 170 + .../cfdm.GatheredArray.compressed_array.html | 172 + .../attribute/cfdm.GatheredArray.dtype.html | 163 + .../attribute/cfdm.GatheredArray.ndim.html | 181 + .../attribute/cfdm.GatheredArray.shape.html | 181 + .../attribute/cfdm.GatheredArray.size.html | 181 + docs/1.9.0.1/attribute/cfdm.Index.data.html | 189 + docs/1.9.0.1/attribute/cfdm.Index.dtype.html | 163 + docs/1.9.0.1/attribute/cfdm.Index.ndim.html | 193 + docs/1.9.0.1/attribute/cfdm.Index.shape.html | 193 + docs/1.9.0.1/attribute/cfdm.Index.size.html | 193 + .../attribute/cfdm.InteriorRing.data.html | 189 + .../attribute/cfdm.InteriorRing.dtype.html | 163 + .../attribute/cfdm.InteriorRing.ndim.html | 193 + .../attribute/cfdm.InteriorRing.shape.html | 193 + .../attribute/cfdm.InteriorRing.size.html | 193 + docs/1.9.0.1/attribute/cfdm.List.data.html | 189 + docs/1.9.0.1/attribute/cfdm.List.dtype.html | 163 + docs/1.9.0.1/attribute/cfdm.List.ndim.html | 193 + docs/1.9.0.1/attribute/cfdm.List.shape.html | 193 + docs/1.9.0.1/attribute/cfdm.List.size.html | 193 + .../attribute/cfdm.NetCDFArray.array.html | 173 + .../attribute/cfdm.NetCDFArray.dtype.html | 166 + .../attribute/cfdm.NetCDFArray.ndim.html | 184 + .../attribute/cfdm.NetCDFArray.shape.html | 184 + .../attribute/cfdm.NetCDFArray.size.html | 184 + .../attribute/cfdm.NumpyArray.array.html | 173 + .../attribute/cfdm.NumpyArray.dtype.html | 166 + .../attribute/cfdm.NumpyArray.ndim.html | 184 + .../attribute/cfdm.NumpyArray.shape.html | 184 + .../attribute/cfdm.NumpyArray.size.html | 184 + .../cfdm.RaggedContiguousArray.array.html | 170 + ...aggedContiguousArray.compressed_array.html | 172 + .../cfdm.RaggedContiguousArray.dtype.html | 163 + .../cfdm.RaggedContiguousArray.ndim.html | 181 + .../cfdm.RaggedContiguousArray.shape.html | 181 + .../cfdm.RaggedContiguousArray.size.html | 181 + .../cfdm.RaggedIndexedArray.array.html | 170 + ...m.RaggedIndexedArray.compressed_array.html | 172 + .../cfdm.RaggedIndexedArray.dtype.html | 163 + .../cfdm.RaggedIndexedArray.ndim.html | 181 + .../cfdm.RaggedIndexedArray.shape.html | 181 + .../cfdm.RaggedIndexedArray.size.html | 181 + ...dm.RaggedIndexedContiguousArray.array.html | 170 + ...dexedContiguousArray.compressed_array.html | 172 + ...dm.RaggedIndexedContiguousArray.dtype.html | 163 + ...fdm.RaggedIndexedContiguousArray.ndim.html | 181 + ...dm.RaggedIndexedContiguousArray.shape.html | 181 + ...fdm.RaggedIndexedContiguousArray.size.html | 181 + .../attribute/cfdm.core.Array.array.html | 173 + .../attribute/cfdm.core.Array.dtype.html | 166 + .../attribute/cfdm.core.Array.ndim.html | 184 + .../attribute/cfdm.core.Array.shape.html | 184 + .../attribute/cfdm.core.Array.size.html | 184 + .../cfdm.core.AuxiliaryCoordinate.bounds.html | 188 + ...re.AuxiliaryCoordinate.construct_type.html | 173 + .../cfdm.core.AuxiliaryCoordinate.data.html | 189 + ...ore.AuxiliaryCoordinate.interior_ring.html | 187 + .../attribute/cfdm.core.Bounds.data.html | 189 + .../cfdm.core.CellMeasure.construct_type.html | 173 + .../attribute/cfdm.core.CellMeasure.data.html | 189 + .../cfdm.core.CellMethod.construct_type.html | 173 + .../cfdm.core.Coordinate.bounds.html | 188 + .../attribute/cfdm.core.Coordinate.data.html | 189 + .../cfdm.core.Coordinate.interior_ring.html | 187 + ...re.CoordinateReference.construct_type.html | 173 + ...dinateReference.coordinate_conversion.html | 147 + .../cfdm.core.CoordinateReference.datum.html | 147 + .../attribute/cfdm.core.Data.array.html | 179 + .../attribute/cfdm.core.Data.dtype.html | 163 + .../attribute/cfdm.core.Data.ndim.html | 181 + .../attribute/cfdm.core.Data.shape.html | 181 + .../attribute/cfdm.core.Data.size.html | 181 + .../cfdm.core.DimensionCoordinate.bounds.html | 188 + ...re.DimensionCoordinate.construct_type.html | 173 + .../cfdm.core.DimensionCoordinate.data.html | 189 + ...ore.DimensionCoordinate.interior_ring.html | 187 + .../cfdm.core.Domain.construct_type.html | 173 + .../cfdm.core.Domain.constructs.html | 180 + .../cfdm.core.DomainAncillary.bounds.html | 188 + ...m.core.DomainAncillary.construct_type.html | 173 + .../cfdm.core.DomainAncillary.data.html | 189 + ...dm.core.DomainAncillary.interior_ring.html | 187 + .../cfdm.core.DomainAxis.construct_type.html | 173 + .../cfdm.core.Field.construct_type.html | 173 + .../attribute/cfdm.core.Field.constructs.html | 180 + .../attribute/cfdm.core.Field.data.html | 189 + .../attribute/cfdm.core.Field.domain.html | 184 + ...dm.core.FieldAncillary.construct_type.html | 173 + .../cfdm.core.FieldAncillary.data.html | 189 + .../cfdm.core.InteriorRing.data.html | 189 + .../attribute/cfdm.core.NumpyArray.array.html | 173 + .../attribute/cfdm.core.NumpyArray.dtype.html | 166 + .../attribute/cfdm.core.NumpyArray.ndim.html | 184 + .../attribute/cfdm.core.NumpyArray.shape.html | 184 + .../attribute/cfdm.core.NumpyArray.size.html | 184 + .../cfdm.core.PropertiesData.data.html | 189 + ...cfdm.core.PropertiesDataBounds.bounds.html | 188 + .../cfdm.core.PropertiesDataBounds.data.html | 189 + ...re.PropertiesDataBounds.interior_ring.html | 187 + .../cfdm.core.abstract.Coordinate.bounds.html | 178 + .../cfdm.core.abstract.Coordinate.data.html | 179 + ....abstract.PropertiesDataBounds.bounds.html | 178 + ...re.abstract.PropertiesDataBounds.data.html | 179 + docs/1.9.0.1/cf_data_model.html | 215 + docs/1.9.0.1/class.html | 324 + docs/1.9.0.1/class/cfdm.Array.html | 282 + .../class/cfdm.AuxiliaryCoordinate.html | 628 + docs/1.9.0.1/class/cfdm.Bounds.html | 484 + docs/1.9.0.1/class/cfdm.CellMeasure.html | 502 + docs/1.9.0.1/class/cfdm.CellMethod.html | 382 + docs/1.9.0.1/class/cfdm.CompressedArray.html | 308 + docs/1.9.0.1/class/cfdm.Configuration.html | 264 + docs/1.9.0.1/class/cfdm.Constant.html | 363 + docs/1.9.0.1/class/cfdm.Constructs.html | 487 + .../class/cfdm.CoordinateConversion.html | 345 + .../class/cfdm.CoordinateReference.html | 489 + docs/1.9.0.1/class/cfdm.Count.html | 514 + docs/1.9.0.1/class/cfdm.Data.html | 760 ++ docs/1.9.0.1/class/cfdm.Datum.html | 351 + .../class/cfdm.DimensionCoordinate.html | 628 + docs/1.9.0.1/class/cfdm.Domain.html | 642 + docs/1.9.0.1/class/cfdm.DomainAncillary.html | 593 + docs/1.9.0.1/class/cfdm.DomainAxis.html | 371 + docs/1.9.0.1/class/cfdm.Field.html | 750 ++ docs/1.9.0.1/class/cfdm.FieldAncillary.html | 471 + docs/1.9.0.1/class/cfdm.GatheredArray.html | 311 + docs/1.9.0.1/class/cfdm.Index.html | 522 + docs/1.9.0.1/class/cfdm.InteriorRing.html | 479 + docs/1.9.0.1/class/cfdm.List.html | 445 + docs/1.9.0.1/class/cfdm.NetCDFArray.html | 356 + docs/1.9.0.1/class/cfdm.NumpyArray.html | 265 + .../class/cfdm.RaggedContiguousArray.html | 311 + .../class/cfdm.RaggedIndexedArray.html | 310 + .../cfdm.RaggedIndexedContiguousArray.html | 319 + docs/1.9.0.1/class/cfdm.core.Array.html | 253 + .../class/cfdm.core.AuxiliaryCoordinate.html | 482 + docs/1.9.0.1/class/cfdm.core.Bounds.html | 330 + docs/1.9.0.1/class/cfdm.core.CellMeasure.html | 374 + docs/1.9.0.1/class/cfdm.core.CellMethod.html | 349 + docs/1.9.0.1/class/cfdm.core.Constructs.html | 414 + docs/1.9.0.1/class/cfdm.core.Container.html | 264 + docs/1.9.0.1/class/cfdm.core.Coordinate.html | 469 + .../class/cfdm.core.CoordinateConversion.html | 330 + .../class/cfdm.core.CoordinateReference.html | 406 + docs/1.9.0.1/class/cfdm.core.Data.html | 404 + docs/1.9.0.1/class/cfdm.core.Datum.html | 283 + .../class/cfdm.core.DimensionCoordinate.html | 483 + .../class/cfdm.core.DocstringRewriteMeta.html | 201 + docs/1.9.0.1/class/cfdm.core.Domain.html | 354 + .../class/cfdm.core.DomainAncillary.html | 448 + docs/1.9.0.1/class/cfdm.core.DomainAxis.html | 296 + docs/1.9.0.1/class/cfdm.core.Field.html | 435 + .../class/cfdm.core.FieldAncillary.html | 352 + .../1.9.0.1/class/cfdm.core.InteriorRing.html | 333 + docs/1.9.0.1/class/cfdm.core.NumpyArray.html | 233 + docs/1.9.0.1/class/cfdm.core.Parameters.html | 272 + ...cfdm.core.ParametersDomainAncillaries.html | 318 + docs/1.9.0.1/class/cfdm.core.Properties.html | 278 + .../class/cfdm.core.PropertiesData.html | 320 + .../class/cfdm.core.PropertiesDataBounds.html | 446 + docs/1.9.0.1/class_core.html | 316 + docs/1.9.0.1/constant.html | 162 + docs/1.9.0.1/contributing.html | 232 + docs/1.9.0.1/extensions.html | 426 + docs/1.9.0.1/function/cfdm.ATOL.html | 154 + docs/1.9.0.1/function/cfdm.CF.html | 174 + docs/1.9.0.1/function/cfdm.LOG_LEVEL.html | 154 + docs/1.9.0.1/function/cfdm.RTOL.html | 154 + docs/1.9.0.1/function/cfdm.abspath.html | 185 + docs/1.9.0.1/function/cfdm.atol.html | 217 + docs/1.9.0.1/function/cfdm.configuration.html | 271 + docs/1.9.0.1/function/cfdm.environment.html | 199 + .../1.9.0.1/function/cfdm.example_domain.html | 310 + docs/1.9.0.1/function/cfdm.example_field.html | 347 + .../1.9.0.1/function/cfdm.example_fields.html | 258 + .../1.9.0.1/function/cfdm.implementation.html | 200 + .../function/cfdm.is_log_level_debug.html | 167 + .../function/cfdm.is_log_level_detail.html | 167 + .../function/cfdm.is_log_level_info.html | 167 + docs/1.9.0.1/function/cfdm.log_level.html | 226 + docs/1.9.0.1/function/cfdm.read.html | 422 + docs/1.9.0.1/function/cfdm.rtol.html | 217 + .../function/cfdm.unique_constructs.html | 208 + docs/1.9.0.1/function/cfdm.write.html | 617 + docs/1.9.0.1/functions.html | 232 + docs/1.9.0.1/genindex.html | 4708 +++++++ docs/1.9.0.1/index.html | 332 + docs/1.9.0.1/installation.html | 271 + docs/1.9.0.1/introduction.html | 303 + docs/1.9.0.1/method/cfdm.Array.__array__.html | 175 + .../method/cfdm.Array.__deepcopy__.html | 168 + .../method/cfdm.Array.__getitem__.html | 173 + docs/1.9.0.1/method/cfdm.Array.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Array.__str__.html | 160 + ...dm.Array._docstring_method_exclusions.html | 193 + .../cfdm.Array._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + .../cfdm.Array._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.Array.copy.html | 175 + .../cfdm.Array.get_compression_type.html | 183 + .../method/cfdm.Array.get_subspace.html | 206 + ...cfdm.AuxiliaryCoordinate.__deepcopy__.html | 166 + .../cfdm.AuxiliaryCoordinate.__getitem__.html | 194 + .../cfdm.AuxiliaryCoordinate.__repr__.html | 160 + .../cfdm.AuxiliaryCoordinate.__str__.html | 160 + ...ordinate._docstring_method_exclusions.html | 193 + ...ryCoordinate._docstring_package_depth.html | 187 + ...nate._docstring_special_substitutions.html | 183 + ...ryCoordinate._docstring_substitutions.html | 204 + ...fdm.AuxiliaryCoordinate.apply_masking.html | 229 + ....AuxiliaryCoordinate.clear_properties.html | 193 + .../method/cfdm.AuxiliaryCoordinate.copy.html | 186 + ...AuxiliaryCoordinate.creation_commands.html | 259 + .../cfdm.AuxiliaryCoordinate.del_bounds.html | 199 + ...m.AuxiliaryCoordinate.del_climatology.html | 201 + .../cfdm.AuxiliaryCoordinate.del_data.html | 202 + ...cfdm.AuxiliaryCoordinate.del_geometry.html | 199 + ...AuxiliaryCoordinate.del_interior_ring.html | 202 + ...dm.AuxiliaryCoordinate.del_node_count.html | 194 + ...xiliaryCoordinate.del_part_node_count.html | 194 + ...cfdm.AuxiliaryCoordinate.del_property.html | 201 + .../method/cfdm.AuxiliaryCoordinate.dump.html | 179 + .../cfdm.AuxiliaryCoordinate.equals.html | 270 + .../cfdm.AuxiliaryCoordinate.get_bounds.html | 199 + ...m.AuxiliaryCoordinate.get_bounds_data.html | 187 + ...m.AuxiliaryCoordinate.get_climatology.html | 198 + .../cfdm.AuxiliaryCoordinate.get_data.html | 207 + ...fdm.AuxiliaryCoordinate.get_filenames.html | 168 + ...cfdm.AuxiliaryCoordinate.get_geometry.html | 199 + ...AuxiliaryCoordinate.get_interior_ring.html | 203 + ...dm.AuxiliaryCoordinate.get_node_count.html | 193 + ...xiliaryCoordinate.get_part_node_count.html | 194 + ...cfdm.AuxiliaryCoordinate.get_property.html | 201 + .../cfdm.AuxiliaryCoordinate.has_bounds.html | 191 + .../cfdm.AuxiliaryCoordinate.has_data.html | 193 + ...cfdm.AuxiliaryCoordinate.has_geometry.html | 190 + ...AuxiliaryCoordinate.has_interior_ring.html | 194 + ...dm.AuxiliaryCoordinate.has_node_count.html | 184 + ...xiliaryCoordinate.has_part_node_count.html | 186 + ...cfdm.AuxiliaryCoordinate.has_property.html | 199 + .../cfdm.AuxiliaryCoordinate.identities.html | 225 + .../cfdm.AuxiliaryCoordinate.identity.html | 222 + ....AuxiliaryCoordinate.insert_dimension.html | 206 + ...dm.AuxiliaryCoordinate.is_climatology.html | 192 + ...ryCoordinate.nc_clear_variable_groups.html | 204 + ...m.AuxiliaryCoordinate.nc_del_variable.html | 196 + ...m.AuxiliaryCoordinate.nc_get_variable.html | 197 + ...m.AuxiliaryCoordinate.nc_has_variable.html | 189 + ...m.AuxiliaryCoordinate.nc_set_variable.html | 196 + ...iaryCoordinate.nc_set_variable_groups.html | 210 + ...uxiliaryCoordinate.nc_variable_groups.html | 202 + .../cfdm.AuxiliaryCoordinate.properties.html | 194 + .../cfdm.AuxiliaryCoordinate.set_bounds.html | 197 + ...m.AuxiliaryCoordinate.set_climatology.html | 197 + .../cfdm.AuxiliaryCoordinate.set_data.html | 218 + ...cfdm.AuxiliaryCoordinate.set_geometry.html | 193 + ...AuxiliaryCoordinate.set_interior_ring.html | 199 + ...dm.AuxiliaryCoordinate.set_node_count.html | 191 + ...xiliaryCoordinate.set_part_node_count.html | 192 + ...dm.AuxiliaryCoordinate.set_properties.html | 204 + ...cfdm.AuxiliaryCoordinate.set_property.html | 196 + .../cfdm.AuxiliaryCoordinate.squeeze.html | 212 + .../cfdm.AuxiliaryCoordinate.transpose.html | 211 + .../cfdm.AuxiliaryCoordinate.uncompress.html | 203 + .../method/cfdm.Bounds.__deepcopy__.html | 166 + .../method/cfdm.Bounds.__getitem__.html | 191 + docs/1.9.0.1/method/cfdm.Bounds.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Bounds.__str__.html | 160 + ...m.Bounds._docstring_method_exclusions.html | 193 + .../cfdm.Bounds._docstring_package_depth.html | 187 + ...unds._docstring_special_substitutions.html | 183 + .../cfdm.Bounds._docstring_substitutions.html | 204 + .../method/cfdm.Bounds.apply_masking.html | 221 + .../method/cfdm.Bounds.clear_properties.html | 193 + docs/1.9.0.1/method/cfdm.Bounds.copy.html | 186 + .../method/cfdm.Bounds.creation_commands.html | 238 + docs/1.9.0.1/method/cfdm.Bounds.del_data.html | 202 + .../method/cfdm.Bounds.del_property.html | 201 + docs/1.9.0.1/method/cfdm.Bounds.dump.html | 179 + docs/1.9.0.1/method/cfdm.Bounds.equals.html | 266 + docs/1.9.0.1/method/cfdm.Bounds.get_data.html | 204 + .../method/cfdm.Bounds.get_filenames.html | 164 + .../method/cfdm.Bounds.get_property.html | 201 + .../method/cfdm.Bounds.has_bounds.html | 178 + docs/1.9.0.1/method/cfdm.Bounds.has_data.html | 193 + .../method/cfdm.Bounds.has_property.html | 199 + .../method/cfdm.Bounds.identities.html | 217 + docs/1.9.0.1/method/cfdm.Bounds.identity.html | 194 + .../cfdm.Bounds.inherited_properties.html | 183 + .../method/cfdm.Bounds.insert_dimension.html | 200 + ...cfdm.Bounds.nc_clear_dimension_groups.html | 204 + .../cfdm.Bounds.nc_clear_variable_groups.html | 204 + .../method/cfdm.Bounds.nc_del_dimension.html | 196 + .../method/cfdm.Bounds.nc_del_variable.html | 196 + .../cfdm.Bounds.nc_dimension_groups.html | 202 + .../method/cfdm.Bounds.nc_get_dimension.html | 196 + .../method/cfdm.Bounds.nc_get_variable.html | 197 + .../method/cfdm.Bounds.nc_has_dimension.html | 189 + .../method/cfdm.Bounds.nc_has_variable.html | 189 + .../method/cfdm.Bounds.nc_set_dimension.html | 196 + .../cfdm.Bounds.nc_set_dimension_groups.html | 210 + .../method/cfdm.Bounds.nc_set_variable.html | 196 + .../cfdm.Bounds.nc_set_variable_groups.html | 210 + .../cfdm.Bounds.nc_variable_groups.html | 202 + .../method/cfdm.Bounds.properties.html | 194 + docs/1.9.0.1/method/cfdm.Bounds.set_data.html | 218 + .../method/cfdm.Bounds.set_properties.html | 204 + .../method/cfdm.Bounds.set_property.html | 196 + docs/1.9.0.1/method/cfdm.Bounds.squeeze.html | 209 + .../1.9.0.1/method/cfdm.Bounds.transpose.html | 201 + .../method/cfdm.Bounds.uncompress.html | 203 + .../method/cfdm.CellMeasure.__deepcopy__.html | 166 + .../method/cfdm.CellMeasure.__getitem__.html | 191 + .../method/cfdm.CellMeasure.__repr__.html | 160 + .../method/cfdm.CellMeasure.__str__.html | 160 + ...lMeasure._docstring_method_exclusions.html | 193 + ....CellMeasure._docstring_package_depth.html | 187 + ...sure._docstring_special_substitutions.html | 183 + ....CellMeasure._docstring_substitutions.html | 204 + .../cfdm.CellMeasure.apply_masking.html | 221 + .../cfdm.CellMeasure.clear_properties.html | 193 + .../1.9.0.1/method/cfdm.CellMeasure.copy.html | 186 + .../cfdm.CellMeasure.creation_commands.html | 239 + .../method/cfdm.CellMeasure.del_data.html | 202 + .../method/cfdm.CellMeasure.del_measure.html | 194 + .../method/cfdm.CellMeasure.del_property.html | 201 + .../1.9.0.1/method/cfdm.CellMeasure.dump.html | 179 + .../method/cfdm.CellMeasure.equals.html | 275 + .../method/cfdm.CellMeasure.get_data.html | 207 + .../cfdm.CellMeasure.get_filenames.html | 164 + .../method/cfdm.CellMeasure.get_measure.html | 194 + .../method/cfdm.CellMeasure.get_property.html | 201 + .../method/cfdm.CellMeasure.has_bounds.html | 178 + .../method/cfdm.CellMeasure.has_data.html | 193 + .../method/cfdm.CellMeasure.has_measure.html | 188 + .../method/cfdm.CellMeasure.has_property.html | 199 + .../method/cfdm.CellMeasure.identities.html | 216 + .../method/cfdm.CellMeasure.identity.html | 211 + .../cfdm.CellMeasure.insert_dimension.html | 200 + ....CellMeasure.nc_clear_variable_groups.html | 204 + .../cfdm.CellMeasure.nc_del_variable.html | 196 + .../cfdm.CellMeasure.nc_get_external.html | 179 + .../cfdm.CellMeasure.nc_get_variable.html | 197 + .../cfdm.CellMeasure.nc_has_variable.html | 189 + .../cfdm.CellMeasure.nc_set_external.html | 186 + .../cfdm.CellMeasure.nc_set_variable.html | 196 + ...dm.CellMeasure.nc_set_variable_groups.html | 210 + .../cfdm.CellMeasure.nc_variable_groups.html | 202 + .../method/cfdm.CellMeasure.properties.html | 194 + .../method/cfdm.CellMeasure.set_data.html | 218 + .../method/cfdm.CellMeasure.set_measure.html | 191 + .../cfdm.CellMeasure.set_properties.html | 204 + .../method/cfdm.CellMeasure.set_property.html | 196 + .../method/cfdm.CellMeasure.squeeze.html | 209 + .../method/cfdm.CellMeasure.transpose.html | 201 + .../method/cfdm.CellMeasure.uncompress.html | 203 + .../method/cfdm.CellMethod.__deepcopy__.html | 166 + .../method/cfdm.CellMethod.__repr__.html | 160 + .../method/cfdm.CellMethod.__str__.html | 164 + ...llMethod._docstring_method_exclusions.html | 193 + ...m.CellMethod._docstring_package_depth.html | 187 + ...thod._docstring_special_substitutions.html | 183 + ...m.CellMethod._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.CellMethod.copy.html | 173 + .../cfdm.CellMethod.creation_commands.html | 224 + .../method/cfdm.CellMethod.del_axes.html | 197 + .../method/cfdm.CellMethod.del_method.html | 196 + .../method/cfdm.CellMethod.del_qualifier.html | 197 + docs/1.9.0.1/method/cfdm.CellMethod.dump.html | 179 + .../method/cfdm.CellMethod.equals.html | 248 + .../method/cfdm.CellMethod.get_axes.html | 197 + .../method/cfdm.CellMethod.get_method.html | 197 + .../method/cfdm.CellMethod.get_qualifier.html | 197 + .../method/cfdm.CellMethod.has_axes.html | 188 + .../method/cfdm.CellMethod.has_method.html | 188 + .../method/cfdm.CellMethod.has_qualifier.html | 189 + .../method/cfdm.CellMethod.identities.html | 207 + .../method/cfdm.CellMethod.identity.html | 195 + .../method/cfdm.CellMethod.qualifiers.html | 183 + .../method/cfdm.CellMethod.set_axes.html | 216 + .../method/cfdm.CellMethod.set_method.html | 191 + .../method/cfdm.CellMethod.set_qualifier.html | 184 + .../method/cfdm.CellMethod.sorted.html | 196 + .../cfdm.CompressedArray.__array__.html | 175 + .../cfdm.CompressedArray.__deepcopy__.html | 168 + .../cfdm.CompressedArray.__getitem__.html | 173 + .../method/cfdm.CompressedArray.__repr__.html | 160 + .../method/cfdm.CompressedArray.__str__.html | 160 + ...sedArray._docstring_method_exclusions.html | 193 + ...pressedArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...pressedArray._docstring_substitutions.html | 204 + .../method/cfdm.CompressedArray.copy.html | 175 + ...m.CompressedArray.get_compressed_axes.html | 173 + ...pressedArray.get_compressed_dimension.html | 185 + ....CompressedArray.get_compression_type.html | 183 + .../cfdm.CompressedArray.get_subspace.html | 206 + .../method/cfdm.CompressedArray.source.html | 179 + .../cfdm.CompressedArray.to_memory.html | 169 + .../method/cfdm.Configuration.__enter__.html | 156 + .../method/cfdm.Configuration.__exit__.html | 156 + .../method/cfdm.Configuration.__repr__.html | 156 + .../method/cfdm.Configuration.clear.html | 155 + .../method/cfdm.Configuration.copy.html | 168 + .../method/cfdm.Configuration.fromkeys.html | 156 + .../method/cfdm.Configuration.get.html | 156 + .../method/cfdm.Configuration.items.html | 155 + .../method/cfdm.Configuration.keys.html | 155 + .../method/cfdm.Configuration.pop.html | 156 + .../method/cfdm.Configuration.popitem.html | 158 + .../method/cfdm.Configuration.setdefault.html | 157 + .../method/cfdm.Configuration.update.html | 158 + .../method/cfdm.Configuration.values.html | 155 + .../method/cfdm.Constant.__deepcopy__.html | 157 + .../method/cfdm.Constant.__enter__.html | 156 + .../method/cfdm.Constant.__exit__.html | 156 + .../method/cfdm.Constant.__repr__.html | 156 + .../1.9.0.1/method/cfdm.Constant.__str__.html | 156 + docs/1.9.0.1/method/cfdm.Constant.copy.html | 168 + .../method/cfdm.Constructs.__call__.html | 200 + .../method/cfdm.Constructs.__contains__.html | 160 + .../method/cfdm.Constructs.__copy__.html | 159 + .../method/cfdm.Constructs.__deepcopy__.html | 159 + .../method/cfdm.Constructs.__getitem__.html | 160 + .../method/cfdm.Constructs.__iter__.html | 160 + .../method/cfdm.Constructs.__len__.html | 160 + .../method/cfdm.Constructs.__repr__.html | 160 + .../method/cfdm.Constructs.__str__.html | 160 + ...nstructs._docstring_method_exclusions.html | 193 + ...m.Constructs._docstring_package_depth.html | 187 + ...ucts._docstring_special_substitutions.html | 183 + ...m.Constructs._docstring_substitutions.html | 204 + ...cfdm.Constructs.clear_filters_applied.html | 195 + .../cfdm.Constructs.construct_type.html | 178 + .../cfdm.Constructs.construct_types.html | 163 + docs/1.9.0.1/method/cfdm.Constructs.copy.html | 180 + .../method/cfdm.Constructs.data_axes.html | 188 + .../method/cfdm.Constructs.domain_axes.html | 206 + .../cfdm.Constructs.domain_axis_identity.html | 197 + .../method/cfdm.Constructs.equals.html | 243 + .../method/cfdm.Constructs.filter.html | 312 + .../cfdm.Constructs.filter_by_axis.html | 279 + .../cfdm.Constructs.filter_by_data.html | 198 + .../cfdm.Constructs.filter_by_identity.html | 251 + .../method/cfdm.Constructs.filter_by_key.html | 208 + .../cfdm.Constructs.filter_by_measure.html | 238 + .../cfdm.Constructs.filter_by_method.html | 234 + .../cfdm.Constructs.filter_by_naxes.html | 210 + .../cfdm.Constructs.filter_by_ncdim.html | 210 + .../cfdm.Constructs.filter_by_ncvar.html | 209 + .../cfdm.Constructs.filter_by_property.html | 249 + .../cfdm.Constructs.filter_by_size.html | 206 + .../cfdm.Constructs.filter_by_type.html | 240 + .../cfdm.Constructs.filters_applied.html | 208 + docs/1.9.0.1/method/cfdm.Constructs.get.html | 163 + .../method/cfdm.Constructs.get_data_axes.html | 184 + .../cfdm.Constructs.inverse_filter.html | 249 + .../1.9.0.1/method/cfdm.Constructs.items.html | 196 + docs/1.9.0.1/method/cfdm.Constructs.key.html | 199 + docs/1.9.0.1/method/cfdm.Constructs.keys.html | 195 + .../cfdm.Constructs.new_identifier.html | 195 + .../method/cfdm.Constructs.ordered.html | 195 + .../method/cfdm.Constructs.replace.html | 160 + .../method/cfdm.Constructs.shallow_copy.html | 175 + .../method/cfdm.Constructs.todict.html | 174 + .../method/cfdm.Constructs.unfilter.html | 237 + .../1.9.0.1/method/cfdm.Constructs.value.html | 196 + .../method/cfdm.Constructs.values.html | 195 + .../cfdm.CoordinateConversion.__bool__.html | 160 + ...fdm.CoordinateConversion.__deepcopy__.html | 166 + ...cfdm.CoordinateConversion.__nonzero__.html | 150 + .../cfdm.CoordinateConversion.__repr__.html | 160 + .../cfdm.CoordinateConversion.__str__.html | 157 + ...nversion._docstring_method_exclusions.html | 193 + ...teConversion._docstring_package_depth.html | 187 + ...sion._docstring_special_substitutions.html | 183 + ...teConversion._docstring_substitutions.html | 204 + ...teConversion.clear_domain_ancillaries.html | 195 + ...CoordinateConversion.clear_parameters.html | 193 + .../cfdm.CoordinateConversion.copy.html | 173 + ...dinateConversion.del_domain_ancillary.html | 204 + ...dm.CoordinateConversion.del_parameter.html | 197 + ...ordinateConversion.domain_ancillaries.html | 195 + .../cfdm.CoordinateConversion.equals.html | 237 + ...dinateConversion.get_domain_ancillary.html | 197 + ...dm.CoordinateConversion.get_parameter.html | 192 + ...dinateConversion.has_domain_ancillary.html | 192 + ...dm.CoordinateConversion.has_parameter.html | 199 + .../cfdm.CoordinateConversion.parameters.html | 194 + ...nateConversion.set_domain_ancillaries.html | 206 + ...dinateConversion.set_domain_ancillary.html | 196 + ...dm.CoordinateConversion.set_parameter.html | 185 + ...m.CoordinateConversion.set_parameters.html | 204 + ...cfdm.CoordinateReference.__deepcopy__.html | 166 + .../cfdm.CoordinateReference.__repr__.html | 160 + .../cfdm.CoordinateReference.__str__.html | 160 + ...eference._docstring_method_exclusions.html | 193 + ...ateReference._docstring_package_depth.html | 187 + ...ence._docstring_special_substitutions.html | 183 + ...ateReference._docstring_substitutions.html | 204 + ...CoordinateReference.clear_coordinates.html | 182 + .../cfdm.CoordinateReference.coordinates.html | 182 + .../method/cfdm.CoordinateReference.copy.html | 173 + ...CoordinateReference.creation_commands.html | 239 + ...dm.CoordinateReference.del_coordinate.html | 199 + ...teReference.del_coordinate_conversion.html | 190 + .../cfdm.CoordinateReference.del_datum.html | 183 + .../method/cfdm.CoordinateReference.dump.html | 179 + .../cfdm.CoordinateReference.equals.html | 247 + ...teReference.get_coordinate_conversion.html | 190 + .../cfdm.CoordinateReference.get_datum.html | 183 + ...dm.CoordinateReference.has_coordinate.html | 197 + .../cfdm.CoordinateReference.identities.html | 219 + .../cfdm.CoordinateReference.identity.html | 204 + ...ateReference.nc_clear_variable_groups.html | 204 + ...m.CoordinateReference.nc_del_variable.html | 196 + ...m.CoordinateReference.nc_get_variable.html | 197 + ...m.CoordinateReference.nc_has_variable.html | 189 + ...m.CoordinateReference.nc_set_variable.html | 196 + ...inateReference.nc_set_variable_groups.html | 210 + ...oordinateReference.nc_variable_groups.html | 202 + ...dm.CoordinateReference.set_coordinate.html | 193 + ...teReference.set_coordinate_conversion.html | 197 + ...m.CoordinateReference.set_coordinates.html | 195 + .../cfdm.CoordinateReference.set_datum.html | 189 + .../method/cfdm.Count.__deepcopy__.html | 166 + .../method/cfdm.Count.__getitem__.html | 191 + docs/1.9.0.1/method/cfdm.Count.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Count.__str__.html | 160 + ...dm.Count._docstring_method_exclusions.html | 193 + .../cfdm.Count._docstring_package_depth.html | 187 + ...ount._docstring_special_substitutions.html | 183 + .../cfdm.Count._docstring_substitutions.html | 204 + .../method/cfdm.Count.apply_masking.html | 221 + .../method/cfdm.Count.clear_properties.html | 193 + docs/1.9.0.1/method/cfdm.Count.copy.html | 186 + .../method/cfdm.Count.creation_commands.html | 238 + docs/1.9.0.1/method/cfdm.Count.del_data.html | 202 + .../method/cfdm.Count.del_property.html | 201 + docs/1.9.0.1/method/cfdm.Count.dump.html | 179 + docs/1.9.0.1/method/cfdm.Count.equals.html | 266 + docs/1.9.0.1/method/cfdm.Count.get_data.html | 207 + .../method/cfdm.Count.get_filenames.html | 164 + .../method/cfdm.Count.get_property.html | 201 + .../1.9.0.1/method/cfdm.Count.has_bounds.html | 178 + docs/1.9.0.1/method/cfdm.Count.has_data.html | 193 + .../method/cfdm.Count.has_property.html | 199 + .../1.9.0.1/method/cfdm.Count.identities.html | 217 + docs/1.9.0.1/method/cfdm.Count.identity.html | 211 + .../method/cfdm.Count.insert_dimension.html | 200 + .../cfdm.Count.nc_clear_dimension_groups.html | 204 + ...ount.nc_clear_sample_dimension_groups.html | 204 + .../cfdm.Count.nc_clear_variable_groups.html | 204 + .../method/cfdm.Count.nc_del_dimension.html | 196 + .../cfdm.Count.nc_del_sample_dimension.html | 198 + .../method/cfdm.Count.nc_del_variable.html | 196 + .../cfdm.Count.nc_dimension_groups.html | 202 + .../method/cfdm.Count.nc_get_dimension.html | 196 + .../cfdm.Count.nc_get_sample_dimension.html | 197 + .../method/cfdm.Count.nc_get_variable.html | 197 + .../method/cfdm.Count.nc_has_dimension.html | 189 + .../cfdm.Count.nc_has_sample_dimension.html | 189 + .../method/cfdm.Count.nc_has_variable.html | 189 + ...cfdm.Count.nc_sample_dimension_groups.html | 202 + .../method/cfdm.Count.nc_set_dimension.html | 196 + .../cfdm.Count.nc_set_dimension_groups.html | 210 + .../cfdm.Count.nc_set_sample_dimension.html | 196 + ....Count.nc_set_sample_dimension_groups.html | 210 + .../method/cfdm.Count.nc_set_variable.html | 196 + .../cfdm.Count.nc_set_variable_groups.html | 210 + .../method/cfdm.Count.nc_variable_groups.html | 202 + .../1.9.0.1/method/cfdm.Count.properties.html | 194 + docs/1.9.0.1/method/cfdm.Count.set_data.html | 218 + .../method/cfdm.Count.set_properties.html | 204 + .../method/cfdm.Count.set_property.html | 196 + docs/1.9.0.1/method/cfdm.Count.squeeze.html | 209 + docs/1.9.0.1/method/cfdm.Count.transpose.html | 201 + .../1.9.0.1/method/cfdm.Count.uncompress.html | 203 + docs/1.9.0.1/method/cfdm.Data.__array__.html | 186 + .../method/cfdm.Data.__deepcopy__.html | 166 + .../1.9.0.1/method/cfdm.Data.__getitem__.html | 199 + docs/1.9.0.1/method/cfdm.Data.__int__.html | 157 + docs/1.9.0.1/method/cfdm.Data.__iter__.html | 183 + docs/1.9.0.1/method/cfdm.Data.__repr__.html | 157 + .../1.9.0.1/method/cfdm.Data.__setitem__.html | 198 + docs/1.9.0.1/method/cfdm.Data.__str__.html | 157 + ...fdm.Data._docstring_method_exclusions.html | 193 + .../cfdm.Data._docstring_package_depth.html | 187 + ...Data._docstring_special_substitutions.html | 183 + .../cfdm.Data._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.Data.any.html | 188 + .../method/cfdm.Data.apply_masking.html | 270 + docs/1.9.0.1/method/cfdm.Data.copy.html | 177 + .../method/cfdm.Data.creation_commands.html | 214 + .../method/cfdm.Data.del_calendar.html | 195 + .../method/cfdm.Data.del_fill_value.html | 195 + docs/1.9.0.1/method/cfdm.Data.del_units.html | 194 + docs/1.9.0.1/method/cfdm.Data.empty.html | 183 + docs/1.9.0.1/method/cfdm.Data.equals.html | 261 + docs/1.9.0.1/method/cfdm.Data.filled.html | 193 + .../method/cfdm.Data.first_element.html | 191 + docs/1.9.0.1/method/cfdm.Data.flatten.html | 250 + .../method/cfdm.Data.get_calendar.html | 195 + .../method/cfdm.Data.get_compressed_axes.html | 189 + .../cfdm.Data.get_compressed_dimension.html | 188 + .../cfdm.Data.get_compression_type.html | 186 + docs/1.9.0.1/method/cfdm.Data.get_count.html | 180 + .../method/cfdm.Data.get_filenames.html | 177 + .../method/cfdm.Data.get_fill_value.html | 198 + docs/1.9.0.1/method/cfdm.Data.get_index.html | 182 + docs/1.9.0.1/method/cfdm.Data.get_list.html | 180 + docs/1.9.0.1/method/cfdm.Data.get_units.html | 194 + .../method/cfdm.Data.has_calendar.html | 186 + .../method/cfdm.Data.has_fill_value.html | 189 + docs/1.9.0.1/method/cfdm.Data.has_units.html | 185 + .../method/cfdm.Data.insert_dimension.html | 203 + .../method/cfdm.Data.last_element.html | 191 + docs/1.9.0.1/method/cfdm.Data.max.html | 156 + docs/1.9.0.1/method/cfdm.Data.maximum.html | 220 + docs/1.9.0.1/method/cfdm.Data.min.html | 156 + docs/1.9.0.1/method/cfdm.Data.minimum.html | 220 + .../cfdm.Data.nc_clear_hdf5_chunksizes.html | 193 + .../method/cfdm.Data.nc_hdf5_chunksizes.html | 193 + .../cfdm.Data.nc_set_hdf5_chunksizes.html | 197 + .../method/cfdm.Data.second_element.html | 185 + .../method/cfdm.Data.set_calendar.html | 189 + .../method/cfdm.Data.set_fill_value.html | 192 + docs/1.9.0.1/method/cfdm.Data.set_units.html | 188 + docs/1.9.0.1/method/cfdm.Data.source.html | 180 + docs/1.9.0.1/method/cfdm.Data.squeeze.html | 208 + docs/1.9.0.1/method/cfdm.Data.sum.html | 217 + docs/1.9.0.1/method/cfdm.Data.to_memory.html | 169 + docs/1.9.0.1/method/cfdm.Data.transpose.html | 203 + docs/1.9.0.1/method/cfdm.Data.uncompress.html | 190 + docs/1.9.0.1/method/cfdm.Data.unique.html | 178 + docs/1.9.0.1/method/cfdm.Datum.__bool__.html | 160 + .../method/cfdm.Datum.__deepcopy__.html | 166 + .../method/cfdm.Datum.__nonzero__.html | 150 + docs/1.9.0.1/method/cfdm.Datum.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Datum.__str__.html | 160 + ...dm.Datum._docstring_method_exclusions.html | 193 + .../cfdm.Datum._docstring_package_depth.html | 187 + ...atum._docstring_special_substitutions.html | 183 + .../cfdm.Datum._docstring_substitutions.html | 204 + .../method/cfdm.Datum.clear_parameters.html | 193 + docs/1.9.0.1/method/cfdm.Datum.copy.html | 173 + .../method/cfdm.Datum.del_parameter.html | 197 + docs/1.9.0.1/method/cfdm.Datum.equals.html | 239 + .../method/cfdm.Datum.get_parameter.html | 192 + .../method/cfdm.Datum.has_parameter.html | 199 + .../cfdm.Datum.nc_clear_variable_groups.html | 204 + .../method/cfdm.Datum.nc_del_variable.html | 196 + .../method/cfdm.Datum.nc_get_variable.html | 197 + .../method/cfdm.Datum.nc_has_variable.html | 189 + .../method/cfdm.Datum.nc_set_variable.html | 196 + .../cfdm.Datum.nc_set_variable_groups.html | 210 + .../method/cfdm.Datum.nc_variable_groups.html | 202 + .../1.9.0.1/method/cfdm.Datum.parameters.html | 194 + .../method/cfdm.Datum.set_parameter.html | 185 + .../method/cfdm.Datum.set_parameters.html | 204 + ...cfdm.DimensionCoordinate.__deepcopy__.html | 166 + .../cfdm.DimensionCoordinate.__getitem__.html | 194 + .../cfdm.DimensionCoordinate.__repr__.html | 160 + .../cfdm.DimensionCoordinate.__str__.html | 160 + ...ordinate._docstring_method_exclusions.html | 193 + ...onCoordinate._docstring_package_depth.html | 187 + ...nate._docstring_special_substitutions.html | 183 + ...onCoordinate._docstring_substitutions.html | 204 + ...fdm.DimensionCoordinate.apply_masking.html | 229 + ....DimensionCoordinate.clear_properties.html | 193 + .../method/cfdm.DimensionCoordinate.copy.html | 186 + ...DimensionCoordinate.creation_commands.html | 259 + .../cfdm.DimensionCoordinate.del_bounds.html | 199 + ...m.DimensionCoordinate.del_climatology.html | 201 + .../cfdm.DimensionCoordinate.del_data.html | 202 + ...cfdm.DimensionCoordinate.del_geometry.html | 199 + ...DimensionCoordinate.del_interior_ring.html | 202 + ...dm.DimensionCoordinate.del_node_count.html | 194 + ...mensionCoordinate.del_part_node_count.html | 194 + ...cfdm.DimensionCoordinate.del_property.html | 201 + .../method/cfdm.DimensionCoordinate.dump.html | 179 + .../cfdm.DimensionCoordinate.equals.html | 270 + .../cfdm.DimensionCoordinate.get_bounds.html | 199 + ...m.DimensionCoordinate.get_bounds_data.html | 187 + ...m.DimensionCoordinate.get_climatology.html | 198 + .../cfdm.DimensionCoordinate.get_data.html | 207 + ...fdm.DimensionCoordinate.get_filenames.html | 168 + ...cfdm.DimensionCoordinate.get_geometry.html | 199 + ...DimensionCoordinate.get_interior_ring.html | 203 + ...dm.DimensionCoordinate.get_node_count.html | 193 + ...mensionCoordinate.get_part_node_count.html | 194 + ...cfdm.DimensionCoordinate.get_property.html | 201 + .../cfdm.DimensionCoordinate.has_bounds.html | 191 + .../cfdm.DimensionCoordinate.has_data.html | 193 + ...cfdm.DimensionCoordinate.has_geometry.html | 190 + ...DimensionCoordinate.has_interior_ring.html | 194 + ...dm.DimensionCoordinate.has_node_count.html | 184 + ...mensionCoordinate.has_part_node_count.html | 186 + ...cfdm.DimensionCoordinate.has_property.html | 199 + .../cfdm.DimensionCoordinate.identities.html | 225 + .../cfdm.DimensionCoordinate.identity.html | 222 + ....DimensionCoordinate.insert_dimension.html | 206 + ...dm.DimensionCoordinate.is_climatology.html | 192 + ...onCoordinate.nc_clear_variable_groups.html | 204 + ...m.DimensionCoordinate.nc_del_variable.html | 196 + ...m.DimensionCoordinate.nc_get_variable.html | 197 + ...m.DimensionCoordinate.nc_has_variable.html | 189 + ...m.DimensionCoordinate.nc_set_variable.html | 196 + ...sionCoordinate.nc_set_variable_groups.html | 210 + ...imensionCoordinate.nc_variable_groups.html | 202 + .../cfdm.DimensionCoordinate.properties.html | 194 + .../cfdm.DimensionCoordinate.set_bounds.html | 197 + ...m.DimensionCoordinate.set_climatology.html | 197 + .../cfdm.DimensionCoordinate.set_data.html | 214 + ...cfdm.DimensionCoordinate.set_geometry.html | 193 + ...DimensionCoordinate.set_interior_ring.html | 199 + ...dm.DimensionCoordinate.set_node_count.html | 191 + ...mensionCoordinate.set_part_node_count.html | 192 + ...dm.DimensionCoordinate.set_properties.html | 204 + ...cfdm.DimensionCoordinate.set_property.html | 196 + .../cfdm.DimensionCoordinate.squeeze.html | 212 + .../cfdm.DimensionCoordinate.transpose.html | 211 + .../cfdm.DimensionCoordinate.uncompress.html | 203 + .../method/cfdm.Domain.__deepcopy__.html | 166 + docs/1.9.0.1/method/cfdm.Domain.__repr__.html | 157 + docs/1.9.0.1/method/cfdm.Domain.__str__.html | 157 + ...m.Domain._docstring_method_exclusions.html | 193 + .../cfdm.Domain._docstring_package_depth.html | 187 + ...main._docstring_special_substitutions.html | 183 + .../cfdm.Domain._docstring_substitutions.html | 204 + .../method/cfdm.Domain.apply_masking.html | 225 + .../cfdm.Domain.auxiliary_coordinates.html | 209 + .../method/cfdm.Domain.cell_measures.html | 207 + .../method/cfdm.Domain.clear_properties.html | 193 + .../cfdm.Domain.climatological_time_axes.html | 176 + .../1.9.0.1/method/cfdm.Domain.construct.html | 226 + .../method/cfdm.Domain.construct_item.html | 229 + .../method/cfdm.Domain.construct_key.html | 229 + .../cfdm.Domain.coordinate_references.html | 206 + .../method/cfdm.Domain.coordinates.html | 208 + docs/1.9.0.1/method/cfdm.Domain.copy.html | 184 + .../method/cfdm.Domain.creation_commands.html | 322 + .../cfdm.Domain.dataset_compliance.html | 205 + .../method/cfdm.Domain.del_construct.html | 231 + .../method/cfdm.Domain.del_data_axes.html | 201 + .../method/cfdm.Domain.del_property.html | 201 + .../cfdm.Domain.dimension_coordinates.html | 210 + .../cfdm.Domain.domain_ancillaries.html | 207 + .../method/cfdm.Domain.domain_axes.html | 204 + .../method/cfdm.Domain.domain_axis_key.html | 212 + docs/1.9.0.1/method/cfdm.Domain.dump.html | 180 + docs/1.9.0.1/method/cfdm.Domain.equals.html | 281 + .../method/cfdm.Domain.fromconstructs.html | 191 + .../method/cfdm.Domain.get_construct.html | 198 + .../method/cfdm.Domain.get_data_axes.html | 201 + .../method/cfdm.Domain.get_filenames.html | 174 + .../method/cfdm.Domain.get_property.html | 201 + .../method/cfdm.Domain.has_bounds.html | 175 + .../method/cfdm.Domain.has_construct.html | 211 + docs/1.9.0.1/method/cfdm.Domain.has_data.html | 171 + .../method/cfdm.Domain.has_data_axes.html | 196 + .../method/cfdm.Domain.has_geometry.html | 173 + .../method/cfdm.Domain.has_property.html | 199 + .../method/cfdm.Domain.identities.html | 188 + docs/1.9.0.1/method/cfdm.Domain.identity.html | 203 + ...n.nc_clear_component_dimension_groups.html | 217 + ...ear_component_sample_dimension_groups.html | 209 + ...in.nc_clear_component_variable_groups.html | 225 + ...ain.nc_clear_geometry_variable_groups.html | 205 + ...fdm.Domain.nc_clear_global_attributes.html | 199 + ...cfdm.Domain.nc_clear_group_attributes.html | 190 + .../cfdm.Domain.nc_clear_variable_groups.html | 204 + ...fdm.Domain.nc_del_component_dimension.html | 217 + ...ain.nc_del_component_sample_dimension.html | 209 + ...cfdm.Domain.nc_del_component_variable.html | 225 + .../cfdm.Domain.nc_del_geometry_variable.html | 197 + .../method/cfdm.Domain.nc_del_variable.html | 196 + ...dm.Domain.nc_geometry_variable_groups.html | 202 + .../cfdm.Domain.nc_get_geometry_variable.html | 197 + .../method/cfdm.Domain.nc_get_variable.html | 197 + .../cfdm.Domain.nc_global_attributes.html | 212 + .../cfdm.Domain.nc_group_attributes.html | 198 + .../cfdm.Domain.nc_has_geometry_variable.html | 190 + .../method/cfdm.Domain.nc_has_variable.html | 189 + ...fdm.Domain.nc_set_component_dimension.html | 219 + ...ain.nc_set_component_dimension_groups.html | 219 + ...ain.nc_set_component_sample_dimension.html | 212 + ...set_component_sample_dimension_groups.html | 211 + ...cfdm.Domain.nc_set_component_variable.html | 227 + ...main.nc_set_component_variable_groups.html | 227 + .../cfdm.Domain.nc_set_geometry_variable.html | 197 + ...omain.nc_set_geometry_variable_groups.html | 211 + .../cfdm.Domain.nc_set_global_attribute.html | 210 + .../cfdm.Domain.nc_set_global_attributes.html | 216 + .../cfdm.Domain.nc_set_group_attribute.html | 201 + .../cfdm.Domain.nc_set_group_attributes.html | 207 + .../method/cfdm.Domain.nc_set_variable.html | 196 + .../cfdm.Domain.nc_set_variable_groups.html | 210 + .../cfdm.Domain.nc_variable_groups.html | 202 + .../method/cfdm.Domain.properties.html | 194 + .../method/cfdm.Domain.set_construct.html | 211 + .../method/cfdm.Domain.set_data_axes.html | 202 + .../method/cfdm.Domain.set_properties.html | 204 + .../method/cfdm.Domain.set_property.html | 196 + .../cfdm.DomainAncillary.__deepcopy__.html | 166 + .../cfdm.DomainAncillary.__getitem__.html | 194 + .../method/cfdm.DomainAncillary.__repr__.html | 160 + .../method/cfdm.DomainAncillary.__str__.html | 160 + ...ncillary._docstring_method_exclusions.html | 193 + ...ainAncillary._docstring_package_depth.html | 187 + ...lary._docstring_special_substitutions.html | 183 + ...ainAncillary._docstring_substitutions.html | 204 + .../cfdm.DomainAncillary.apply_masking.html | 229 + ...cfdm.DomainAncillary.clear_properties.html | 193 + .../method/cfdm.DomainAncillary.copy.html | 186 + ...fdm.DomainAncillary.creation_commands.html | 259 + .../cfdm.DomainAncillary.del_bounds.html | 199 + .../method/cfdm.DomainAncillary.del_data.html | 202 + .../cfdm.DomainAncillary.del_geometry.html | 199 + ...fdm.DomainAncillary.del_interior_ring.html | 202 + .../cfdm.DomainAncillary.del_node_count.html | 194 + ...m.DomainAncillary.del_part_node_count.html | 194 + .../cfdm.DomainAncillary.del_property.html | 201 + .../method/cfdm.DomainAncillary.dump.html | 179 + .../method/cfdm.DomainAncillary.equals.html | 270 + .../cfdm.DomainAncillary.get_bounds.html | 199 + .../cfdm.DomainAncillary.get_bounds_data.html | 187 + .../method/cfdm.DomainAncillary.get_data.html | 207 + .../cfdm.DomainAncillary.get_filenames.html | 168 + .../cfdm.DomainAncillary.get_geometry.html | 199 + ...fdm.DomainAncillary.get_interior_ring.html | 203 + .../cfdm.DomainAncillary.get_node_count.html | 193 + ...m.DomainAncillary.get_part_node_count.html | 194 + .../cfdm.DomainAncillary.get_property.html | 201 + .../cfdm.DomainAncillary.has_bounds.html | 191 + .../method/cfdm.DomainAncillary.has_data.html | 193 + .../cfdm.DomainAncillary.has_geometry.html | 190 + ...fdm.DomainAncillary.has_interior_ring.html | 194 + .../cfdm.DomainAncillary.has_node_count.html | 184 + ...m.DomainAncillary.has_part_node_count.html | 186 + .../cfdm.DomainAncillary.has_property.html | 199 + .../cfdm.DomainAncillary.identities.html | 225 + .../method/cfdm.DomainAncillary.identity.html | 222 + ...cfdm.DomainAncillary.insert_dimension.html | 206 + ...ainAncillary.nc_clear_variable_groups.html | 204 + .../cfdm.DomainAncillary.nc_del_variable.html | 196 + .../cfdm.DomainAncillary.nc_get_variable.html | 197 + .../cfdm.DomainAncillary.nc_has_variable.html | 189 + .../cfdm.DomainAncillary.nc_set_variable.html | 196 + ...omainAncillary.nc_set_variable_groups.html | 210 + ...dm.DomainAncillary.nc_variable_groups.html | 202 + .../cfdm.DomainAncillary.properties.html | 194 + .../cfdm.DomainAncillary.set_bounds.html | 197 + .../method/cfdm.DomainAncillary.set_data.html | 218 + .../cfdm.DomainAncillary.set_geometry.html | 193 + ...fdm.DomainAncillary.set_interior_ring.html | 199 + .../cfdm.DomainAncillary.set_node_count.html | 191 + ...m.DomainAncillary.set_part_node_count.html | 192 + .../cfdm.DomainAncillary.set_properties.html | 204 + .../cfdm.DomainAncillary.set_property.html | 196 + .../method/cfdm.DomainAncillary.squeeze.html | 212 + .../cfdm.DomainAncillary.transpose.html | 211 + .../cfdm.DomainAncillary.uncompress.html | 203 + .../method/cfdm.DomainAxis.__deepcopy__.html | 166 + .../method/cfdm.DomainAxis.__repr__.html | 160 + .../method/cfdm.DomainAxis.__str__.html | 160 + ...mainAxis._docstring_method_exclusions.html | 193 + ...m.DomainAxis._docstring_package_depth.html | 187 + ...Axis._docstring_special_substitutions.html | 183 + ...m.DomainAxis._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.DomainAxis.copy.html | 173 + .../cfdm.DomainAxis.creation_commands.html | 221 + .../method/cfdm.DomainAxis.del_size.html | 196 + .../method/cfdm.DomainAxis.equals.html | 231 + .../method/cfdm.DomainAxis.get_size.html | 196 + .../method/cfdm.DomainAxis.has_size.html | 190 + .../method/cfdm.DomainAxis.identities.html | 205 + .../method/cfdm.DomainAxis.identity.html | 195 + ....DomainAxis.nc_clear_dimension_groups.html | 204 + .../cfdm.DomainAxis.nc_del_dimension.html | 196 + .../cfdm.DomainAxis.nc_dimension_groups.html | 202 + .../cfdm.DomainAxis.nc_get_dimension.html | 196 + .../cfdm.DomainAxis.nc_has_dimension.html | 189 + .../cfdm.DomainAxis.nc_is_unlimited.html | 187 + .../cfdm.DomainAxis.nc_set_dimension.html | 196 + ...dm.DomainAxis.nc_set_dimension_groups.html | 210 + .../cfdm.DomainAxis.nc_set_unlimited.html | 190 + .../method/cfdm.DomainAxis.set_size.html | 193 + .../method/cfdm.Field.__deepcopy__.html | 166 + .../method/cfdm.Field.__getitem__.html | 198 + docs/1.9.0.1/method/cfdm.Field.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Field.__str__.html | 160 + ...dm.Field._docstring_method_exclusions.html | 193 + .../cfdm.Field._docstring_package_depth.html | 187 + ...ield._docstring_special_substitutions.html | 183 + .../cfdm.Field._docstring_substitutions.html | 204 + .../method/cfdm.Field.apply_masking.html | 236 + .../cfdm.Field.auxiliary_coordinates.html | 209 + .../method/cfdm.Field.cell_measures.html | 207 + .../method/cfdm.Field.cell_methods.html | 207 + .../method/cfdm.Field.clear_properties.html | 193 + .../cfdm.Field.climatological_time_axes.html | 188 + docs/1.9.0.1/method/cfdm.Field.compress.html | 305 + docs/1.9.0.1/method/cfdm.Field.construct.html | 226 + .../method/cfdm.Field.construct_item.html | 229 + .../method/cfdm.Field.construct_key.html | 229 + docs/1.9.0.1/method/cfdm.Field.convert.html | 249 + .../cfdm.Field.coordinate_references.html | 206 + .../method/cfdm.Field.coordinates.html | 208 + docs/1.9.0.1/method/cfdm.Field.copy.html | 186 + .../method/cfdm.Field.creation_commands.html | 366 + .../method/cfdm.Field.dataset_compliance.html | 205 + .../method/cfdm.Field.del_construct.html | 231 + docs/1.9.0.1/method/cfdm.Field.del_data.html | 202 + .../method/cfdm.Field.del_data_axes.html | 208 + .../method/cfdm.Field.del_property.html | 201 + .../cfdm.Field.dimension_coordinates.html | 210 + .../method/cfdm.Field.domain_ancillaries.html | 207 + .../method/cfdm.Field.domain_axes.html | 204 + .../method/cfdm.Field.domain_axis_key.html | 212 + docs/1.9.0.1/method/cfdm.Field.dump.html | 180 + docs/1.9.0.1/method/cfdm.Field.equals.html | 281 + .../method/cfdm.Field.field_ancillaries.html | 213 + .../method/cfdm.Field.get_construct.html | 198 + docs/1.9.0.1/method/cfdm.Field.get_data.html | 207 + .../method/cfdm.Field.get_data_axes.html | 206 + .../1.9.0.1/method/cfdm.Field.get_domain.html | 175 + .../method/cfdm.Field.get_filenames.html | 176 + .../method/cfdm.Field.get_property.html | 201 + .../1.9.0.1/method/cfdm.Field.has_bounds.html | 178 + .../method/cfdm.Field.has_construct.html | 211 + docs/1.9.0.1/method/cfdm.Field.has_data.html | 193 + .../method/cfdm.Field.has_data_axes.html | 203 + .../method/cfdm.Field.has_geometry.html | 173 + .../method/cfdm.Field.has_property.html | 199 + .../1.9.0.1/method/cfdm.Field.identities.html | 217 + docs/1.9.0.1/method/cfdm.Field.identity.html | 211 + .../method/cfdm.Field.insert_dimension.html | 212 + ...d.nc_clear_component_dimension_groups.html | 217 + ...ear_component_sample_dimension_groups.html | 209 + ...ld.nc_clear_component_variable_groups.html | 225 + ...eld.nc_clear_geometry_variable_groups.html | 205 + ...cfdm.Field.nc_clear_global_attributes.html | 199 + .../cfdm.Field.nc_clear_group_attributes.html | 190 + .../cfdm.Field.nc_clear_variable_groups.html | 204 + ...cfdm.Field.nc_del_component_dimension.html | 217 + ...eld.nc_del_component_sample_dimension.html | 209 + .../cfdm.Field.nc_del_component_variable.html | 225 + .../cfdm.Field.nc_del_geometry_variable.html | 197 + .../method/cfdm.Field.nc_del_variable.html | 196 + ...fdm.Field.nc_geometry_variable_groups.html | 202 + .../cfdm.Field.nc_get_geometry_variable.html | 197 + .../method/cfdm.Field.nc_get_variable.html | 197 + .../cfdm.Field.nc_global_attributes.html | 212 + .../cfdm.Field.nc_group_attributes.html | 198 + .../cfdm.Field.nc_has_geometry_variable.html | 190 + .../method/cfdm.Field.nc_has_variable.html | 189 + ...cfdm.Field.nc_set_component_dimension.html | 219 + ...eld.nc_set_component_dimension_groups.html | 219 + ...eld.nc_set_component_sample_dimension.html | 212 + ...set_component_sample_dimension_groups.html | 211 + .../cfdm.Field.nc_set_component_variable.html | 227 + ...ield.nc_set_component_variable_groups.html | 227 + .../cfdm.Field.nc_set_geometry_variable.html | 197 + ...Field.nc_set_geometry_variable_groups.html | 211 + .../cfdm.Field.nc_set_global_attribute.html | 210 + .../cfdm.Field.nc_set_global_attributes.html | 216 + .../cfdm.Field.nc_set_group_attribute.html | 201 + .../cfdm.Field.nc_set_group_attributes.html | 207 + .../method/cfdm.Field.nc_set_variable.html | 196 + .../cfdm.Field.nc_set_variable_groups.html | 210 + .../method/cfdm.Field.nc_variable_groups.html | 202 + .../1.9.0.1/method/cfdm.Field.properties.html | 194 + .../method/cfdm.Field.set_construct.html | 211 + docs/1.9.0.1/method/cfdm.Field.set_data.html | 235 + .../method/cfdm.Field.set_data_axes.html | 208 + .../method/cfdm.Field.set_properties.html | 204 + .../method/cfdm.Field.set_property.html | 196 + docs/1.9.0.1/method/cfdm.Field.squeeze.html | 207 + docs/1.9.0.1/method/cfdm.Field.transpose.html | 209 + .../1.9.0.1/method/cfdm.Field.uncompress.html | 216 + .../cfdm.FieldAncillary.__deepcopy__.html | 166 + .../cfdm.FieldAncillary.__getitem__.html | 191 + .../method/cfdm.FieldAncillary.__repr__.html | 160 + .../method/cfdm.FieldAncillary.__str__.html | 160 + ...ncillary._docstring_method_exclusions.html | 193 + ...eldAncillary._docstring_package_depth.html | 187 + ...lary._docstring_special_substitutions.html | 183 + ...eldAncillary._docstring_substitutions.html | 204 + .../cfdm.FieldAncillary.apply_masking.html | 221 + .../cfdm.FieldAncillary.clear_properties.html | 193 + .../method/cfdm.FieldAncillary.copy.html | 186 + ...cfdm.FieldAncillary.creation_commands.html | 238 + .../method/cfdm.FieldAncillary.del_data.html | 202 + .../cfdm.FieldAncillary.del_property.html | 201 + .../method/cfdm.FieldAncillary.dump.html | 179 + .../method/cfdm.FieldAncillary.equals.html | 266 + .../method/cfdm.FieldAncillary.get_data.html | 207 + .../cfdm.FieldAncillary.get_filenames.html | 164 + .../cfdm.FieldAncillary.get_property.html | 201 + .../cfdm.FieldAncillary.has_bounds.html | 178 + .../method/cfdm.FieldAncillary.has_data.html | 193 + .../cfdm.FieldAncillary.has_property.html | 199 + .../cfdm.FieldAncillary.identities.html | 217 + .../method/cfdm.FieldAncillary.identity.html | 211 + .../cfdm.FieldAncillary.insert_dimension.html | 200 + ...eldAncillary.nc_clear_variable_groups.html | 204 + .../cfdm.FieldAncillary.nc_del_variable.html | 196 + .../cfdm.FieldAncillary.nc_get_variable.html | 197 + .../cfdm.FieldAncillary.nc_has_variable.html | 189 + .../cfdm.FieldAncillary.nc_set_variable.html | 196 + ...FieldAncillary.nc_set_variable_groups.html | 210 + ...fdm.FieldAncillary.nc_variable_groups.html | 202 + .../cfdm.FieldAncillary.properties.html | 194 + .../method/cfdm.FieldAncillary.set_data.html | 218 + .../cfdm.FieldAncillary.set_properties.html | 204 + .../cfdm.FieldAncillary.set_property.html | 196 + .../method/cfdm.FieldAncillary.squeeze.html | 209 + .../method/cfdm.FieldAncillary.transpose.html | 201 + .../cfdm.FieldAncillary.uncompress.html | 203 + .../method/cfdm.GatheredArray.__array__.html | 175 + .../cfdm.GatheredArray.__deepcopy__.html | 168 + .../cfdm.GatheredArray.__getitem__.html | 172 + .../method/cfdm.GatheredArray.__repr__.html | 160 + .../method/cfdm.GatheredArray.__str__.html | 160 + .../method/cfdm.GatheredArray.copy.html | 175 + ...fdm.GatheredArray.get_compressed_axes.html | 173 + ...atheredArray.get_compressed_dimension.html | 185 + ...dm.GatheredArray.get_compression_type.html | 183 + .../method/cfdm.GatheredArray.get_list.html | 183 + .../cfdm.GatheredArray.get_subspace.html | 206 + .../method/cfdm.GatheredArray.source.html | 179 + .../method/cfdm.GatheredArray.to_memory.html | 169 + .../method/cfdm.Index.__deepcopy__.html | 166 + .../method/cfdm.Index.__getitem__.html | 191 + docs/1.9.0.1/method/cfdm.Index.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.Index.__str__.html | 160 + ...dm.Index._docstring_method_exclusions.html | 193 + .../cfdm.Index._docstring_package_depth.html | 187 + ...ndex._docstring_special_substitutions.html | 183 + .../cfdm.Index._docstring_substitutions.html | 204 + .../method/cfdm.Index.apply_masking.html | 221 + .../method/cfdm.Index.clear_properties.html | 193 + docs/1.9.0.1/method/cfdm.Index.copy.html | 186 + .../method/cfdm.Index.creation_commands.html | 238 + docs/1.9.0.1/method/cfdm.Index.del_data.html | 202 + .../method/cfdm.Index.del_property.html | 201 + docs/1.9.0.1/method/cfdm.Index.dump.html | 179 + docs/1.9.0.1/method/cfdm.Index.equals.html | 266 + docs/1.9.0.1/method/cfdm.Index.get_data.html | 207 + .../method/cfdm.Index.get_filenames.html | 164 + .../method/cfdm.Index.get_property.html | 201 + .../1.9.0.1/method/cfdm.Index.has_bounds.html | 178 + docs/1.9.0.1/method/cfdm.Index.has_data.html | 193 + .../method/cfdm.Index.has_property.html | 199 + .../1.9.0.1/method/cfdm.Index.identities.html | 217 + docs/1.9.0.1/method/cfdm.Index.identity.html | 211 + .../method/cfdm.Index.insert_dimension.html | 200 + .../cfdm.Index.nc_clear_dimension_groups.html | 204 + ...ndex.nc_clear_sample_dimension_groups.html | 204 + .../cfdm.Index.nc_clear_variable_groups.html | 204 + .../method/cfdm.Index.nc_del_dimension.html | 196 + .../cfdm.Index.nc_del_sample_dimension.html | 198 + .../method/cfdm.Index.nc_del_variable.html | 196 + .../cfdm.Index.nc_dimension_groups.html | 202 + .../method/cfdm.Index.nc_get_dimension.html | 196 + .../cfdm.Index.nc_get_sample_dimension.html | 197 + .../method/cfdm.Index.nc_get_variable.html | 197 + .../method/cfdm.Index.nc_has_dimension.html | 189 + .../cfdm.Index.nc_has_sample_dimension.html | 189 + .../method/cfdm.Index.nc_has_variable.html | 189 + ...cfdm.Index.nc_sample_dimension_groups.html | 202 + .../method/cfdm.Index.nc_set_dimension.html | 196 + .../cfdm.Index.nc_set_dimension_groups.html | 210 + .../cfdm.Index.nc_set_sample_dimension.html | 196 + ....Index.nc_set_sample_dimension_groups.html | 210 + .../method/cfdm.Index.nc_set_variable.html | 196 + .../cfdm.Index.nc_set_variable_groups.html | 210 + .../method/cfdm.Index.nc_variable_groups.html | 202 + .../1.9.0.1/method/cfdm.Index.properties.html | 194 + docs/1.9.0.1/method/cfdm.Index.set_data.html | 218 + .../method/cfdm.Index.set_properties.html | 204 + .../method/cfdm.Index.set_property.html | 196 + docs/1.9.0.1/method/cfdm.Index.squeeze.html | 209 + docs/1.9.0.1/method/cfdm.Index.transpose.html | 201 + .../1.9.0.1/method/cfdm.Index.uncompress.html | 203 + .../cfdm.InteriorRing.__deepcopy__.html | 166 + .../method/cfdm.InteriorRing.__getitem__.html | 191 + .../method/cfdm.InteriorRing.__repr__.html | 160 + .../method/cfdm.InteriorRing.__str__.html | 160 + ...riorRing._docstring_method_exclusions.html | 193 + ...InteriorRing._docstring_package_depth.html | 187 + ...Ring._docstring_special_substitutions.html | 183 + ...InteriorRing._docstring_substitutions.html | 204 + .../cfdm.InteriorRing.apply_masking.html | 221 + .../cfdm.InteriorRing.clear_properties.html | 193 + .../method/cfdm.InteriorRing.copy.html | 186 + .../cfdm.InteriorRing.creation_commands.html | 238 + .../method/cfdm.InteriorRing.del_data.html | 202 + .../cfdm.InteriorRing.del_property.html | 201 + .../method/cfdm.InteriorRing.dump.html | 179 + .../method/cfdm.InteriorRing.equals.html | 266 + .../method/cfdm.InteriorRing.get_data.html | 207 + .../cfdm.InteriorRing.get_filenames.html | 164 + .../cfdm.InteriorRing.get_property.html | 201 + .../method/cfdm.InteriorRing.has_bounds.html | 178 + .../method/cfdm.InteriorRing.has_data.html | 193 + .../cfdm.InteriorRing.has_property.html | 199 + .../method/cfdm.InteriorRing.identities.html | 217 + .../method/cfdm.InteriorRing.identity.html | 211 + .../cfdm.InteriorRing.insert_dimension.html | 200 + ...nteriorRing.nc_clear_dimension_groups.html | 204 + ...InteriorRing.nc_clear_variable_groups.html | 204 + .../cfdm.InteriorRing.nc_del_dimension.html | 196 + .../cfdm.InteriorRing.nc_del_variable.html | 196 + ...cfdm.InteriorRing.nc_dimension_groups.html | 202 + .../cfdm.InteriorRing.nc_get_dimension.html | 196 + .../cfdm.InteriorRing.nc_get_variable.html | 197 + .../cfdm.InteriorRing.nc_has_dimension.html | 189 + .../cfdm.InteriorRing.nc_has_variable.html | 189 + .../cfdm.InteriorRing.nc_set_dimension.html | 196 + ....InteriorRing.nc_set_dimension_groups.html | 210 + .../cfdm.InteriorRing.nc_set_variable.html | 196 + ...m.InteriorRing.nc_set_variable_groups.html | 210 + .../cfdm.InteriorRing.nc_variable_groups.html | 202 + .../method/cfdm.InteriorRing.properties.html | 194 + .../method/cfdm.InteriorRing.set_data.html | 218 + .../cfdm.InteriorRing.set_properties.html | 204 + .../cfdm.InteriorRing.set_property.html | 196 + .../method/cfdm.InteriorRing.squeeze.html | 209 + .../method/cfdm.InteriorRing.transpose.html | 201 + .../method/cfdm.InteriorRing.uncompress.html | 203 + .../method/cfdm.List.__deepcopy__.html | 166 + .../1.9.0.1/method/cfdm.List.__getitem__.html | 191 + docs/1.9.0.1/method/cfdm.List.__repr__.html | 160 + docs/1.9.0.1/method/cfdm.List.__str__.html | 160 + ...fdm.List._docstring_method_exclusions.html | 193 + .../cfdm.List._docstring_package_depth.html | 187 + ...List._docstring_special_substitutions.html | 183 + .../cfdm.List._docstring_substitutions.html | 204 + .../method/cfdm.List.apply_masking.html | 221 + .../method/cfdm.List.clear_properties.html | 193 + docs/1.9.0.1/method/cfdm.List.copy.html | 186 + .../method/cfdm.List.creation_commands.html | 238 + docs/1.9.0.1/method/cfdm.List.del_data.html | 202 + .../method/cfdm.List.del_property.html | 201 + docs/1.9.0.1/method/cfdm.List.dump.html | 179 + docs/1.9.0.1/method/cfdm.List.equals.html | 266 + docs/1.9.0.1/method/cfdm.List.get_data.html | 207 + .../method/cfdm.List.get_filenames.html | 164 + .../method/cfdm.List.get_property.html | 201 + docs/1.9.0.1/method/cfdm.List.has_bounds.html | 178 + docs/1.9.0.1/method/cfdm.List.has_data.html | 193 + .../method/cfdm.List.has_property.html | 199 + docs/1.9.0.1/method/cfdm.List.identities.html | 217 + docs/1.9.0.1/method/cfdm.List.identity.html | 211 + .../method/cfdm.List.insert_dimension.html | 200 + .../cfdm.List.nc_clear_variable_groups.html | 204 + .../method/cfdm.List.nc_del_variable.html | 196 + .../method/cfdm.List.nc_get_variable.html | 197 + .../method/cfdm.List.nc_has_variable.html | 189 + .../method/cfdm.List.nc_set_variable.html | 196 + .../cfdm.List.nc_set_variable_groups.html | 210 + .../method/cfdm.List.nc_variable_groups.html | 202 + docs/1.9.0.1/method/cfdm.List.properties.html | 194 + docs/1.9.0.1/method/cfdm.List.set_data.html | 218 + .../method/cfdm.List.set_properties.html | 204 + .../method/cfdm.List.set_property.html | 196 + docs/1.9.0.1/method/cfdm.List.squeeze.html | 209 + docs/1.9.0.1/method/cfdm.List.transpose.html | 201 + docs/1.9.0.1/method/cfdm.List.uncompress.html | 203 + .../method/cfdm.NetCDFArray.__getitem__.html | 174 + ...CDFArray._docstring_method_exclusions.html | 193 + ....NetCDFArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ....NetCDFArray._docstring_substitutions.html | 204 + .../method/cfdm.NetCDFArray.close.html | 168 + .../1.9.0.1/method/cfdm.NetCDFArray.copy.html | 175 + ...cfdm.NetCDFArray.get_compression_type.html | 183 + .../method/cfdm.NetCDFArray.get_filename.html | 164 + .../method/cfdm.NetCDFArray.get_group.html | 163 + .../method/cfdm.NetCDFArray.get_mask.html | 163 + .../method/cfdm.NetCDFArray.get_ncvar.html | 172 + .../method/cfdm.NetCDFArray.get_subspace.html | 206 + .../method/cfdm.NetCDFArray.get_varid.html | 172 + .../1.9.0.1/method/cfdm.NetCDFArray.open.html | 171 + .../method/cfdm.NetCDFArray.to_memory.html | 172 + .../method/cfdm.NumpyArray.__getitem__.html | 175 + ...mpyArray._docstring_method_exclusions.html | 193 + ...m.NumpyArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...m.NumpyArray._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.NumpyArray.copy.html | 175 + .../cfdm.NumpyArray.get_compression_type.html | 183 + .../method/cfdm.NumpyArray.get_subspace.html | 206 + .../method/cfdm.NumpyArray.to_memory.html | 172 + .../cfdm.RaggedContiguousArray.__array__.html | 175 + ...dm.RaggedContiguousArray.__deepcopy__.html | 168 + ...fdm.RaggedContiguousArray.__getitem__.html | 175 + .../cfdm.RaggedContiguousArray.__repr__.html | 160 + .../cfdm.RaggedContiguousArray.__str__.html | 160 + ...ousArray._docstring_method_exclusions.html | 193 + ...tiguousArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...tiguousArray._docstring_substitutions.html | 204 + .../cfdm.RaggedContiguousArray.copy.html | 175 + ...edContiguousArray.get_compressed_axes.html | 173 + ...tiguousArray.get_compressed_dimension.html | 185 + ...dContiguousArray.get_compression_type.html | 183 + .../cfdm.RaggedContiguousArray.get_count.html | 177 + ...dm.RaggedContiguousArray.get_subspace.html | 206 + .../cfdm.RaggedContiguousArray.source.html | 179 + .../cfdm.RaggedContiguousArray.to_memory.html | 172 + .../cfdm.RaggedIndexedArray.__array__.html | 175 + .../cfdm.RaggedIndexedArray.__deepcopy__.html | 168 + .../cfdm.RaggedIndexedArray.__getitem__.html | 175 + .../cfdm.RaggedIndexedArray.__repr__.html | 160 + .../cfdm.RaggedIndexedArray.__str__.html | 160 + ...xedArray._docstring_method_exclusions.html | 193 + ...IndexedArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...IndexedArray._docstring_substitutions.html | 204 + .../method/cfdm.RaggedIndexedArray.copy.html | 175 + ...aggedIndexedArray.get_compressed_axes.html | 173 + ...IndexedArray.get_compressed_dimension.html | 185 + ...ggedIndexedArray.get_compression_type.html | 183 + .../cfdm.RaggedIndexedArray.get_index.html | 177 + .../cfdm.RaggedIndexedArray.get_subspace.html | 206 + .../cfdm.RaggedIndexedArray.source.html | 179 + .../cfdm.RaggedIndexedArray.to_memory.html | 172 + ...aggedIndexedContiguousArray.__array__.html | 175 + ...edIndexedContiguousArray.__deepcopy__.html | 168 + ...gedIndexedContiguousArray.__getitem__.html | 175 + ...RaggedIndexedContiguousArray.__repr__.html | 160 + ....RaggedIndexedContiguousArray.__str__.html | 160 + ...ousArray._docstring_method_exclusions.html | 193 + ...tiguousArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...tiguousArray._docstring_substitutions.html | 204 + ...fdm.RaggedIndexedContiguousArray.copy.html | 175 + ...edContiguousArray.get_compressed_axes.html | 173 + ...tiguousArray.get_compressed_dimension.html | 185 + ...dContiguousArray.get_compression_type.html | 183 + ...aggedIndexedContiguousArray.get_count.html | 177 + ...aggedIndexedContiguousArray.get_index.html | 177 + ...edIndexedContiguousArray.get_subspace.html | 206 + ...m.RaggedIndexedContiguousArray.source.html | 179 + ...aggedIndexedContiguousArray.to_memory.html | 172 + .../method/cfdm.core.Array.__deepcopy__.html | 168 + ...re.Array._docstring_method_exclusions.html | 193 + ...m.core.Array._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...m.core.Array._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.core.Array.copy.html | 175 + ...core.AuxiliaryCoordinate.__deepcopy__.html | 166 + ...ordinate._docstring_method_exclusions.html | 193 + ...ryCoordinate._docstring_package_depth.html | 187 + ...nate._docstring_special_substitutions.html | 183 + ...ryCoordinate._docstring_substitutions.html | 204 + ....AuxiliaryCoordinate.clear_properties.html | 193 + .../cfdm.core.AuxiliaryCoordinate.copy.html | 186 + ...m.core.AuxiliaryCoordinate.del_bounds.html | 199 + ...e.AuxiliaryCoordinate.del_climatology.html | 201 + ...fdm.core.AuxiliaryCoordinate.del_data.html | 202 + ...core.AuxiliaryCoordinate.del_geometry.html | 199 + ...AuxiliaryCoordinate.del_interior_ring.html | 202 + ...core.AuxiliaryCoordinate.del_property.html | 201 + ...m.core.AuxiliaryCoordinate.get_bounds.html | 200 + ...e.AuxiliaryCoordinate.get_climatology.html | 198 + ...fdm.core.AuxiliaryCoordinate.get_data.html | 207 + ...core.AuxiliaryCoordinate.get_geometry.html | 199 + ...AuxiliaryCoordinate.get_interior_ring.html | 203 + ...core.AuxiliaryCoordinate.get_property.html | 201 + ...m.core.AuxiliaryCoordinate.has_bounds.html | 191 + ...fdm.core.AuxiliaryCoordinate.has_data.html | 193 + ...core.AuxiliaryCoordinate.has_geometry.html | 190 + ...AuxiliaryCoordinate.has_interior_ring.html | 194 + ...core.AuxiliaryCoordinate.has_property.html | 199 + ...re.AuxiliaryCoordinate.is_climatology.html | 192 + ...m.core.AuxiliaryCoordinate.properties.html | 194 + ...m.core.AuxiliaryCoordinate.set_bounds.html | 197 + ...e.AuxiliaryCoordinate.set_climatology.html | 197 + ...fdm.core.AuxiliaryCoordinate.set_data.html | 218 + ...core.AuxiliaryCoordinate.set_geometry.html | 193 + ...AuxiliaryCoordinate.set_interior_ring.html | 199 + ...re.AuxiliaryCoordinate.set_properties.html | 204 + ...core.AuxiliaryCoordinate.set_property.html | 196 + .../method/cfdm.core.Bounds.__deepcopy__.html | 166 + .../cfdm.core.Bounds.clear_properties.html | 193 + .../1.9.0.1/method/cfdm.core.Bounds.copy.html | 186 + .../method/cfdm.core.Bounds.del_data.html | 202 + .../method/cfdm.core.Bounds.del_property.html | 201 + .../method/cfdm.core.Bounds.get_data.html | 207 + .../method/cfdm.core.Bounds.get_property.html | 201 + .../method/cfdm.core.Bounds.has_bounds.html | 178 + .../method/cfdm.core.Bounds.has_data.html | 193 + .../method/cfdm.core.Bounds.has_property.html | 199 + .../method/cfdm.core.Bounds.properties.html | 194 + .../method/cfdm.core.Bounds.set_data.html | 218 + .../cfdm.core.Bounds.set_properties.html | 204 + .../method/cfdm.core.Bounds.set_property.html | 196 + .../cfdm.core.CellMeasure.__deepcopy__.html | 166 + ...lMeasure._docstring_method_exclusions.html | 193 + ....CellMeasure._docstring_package_depth.html | 187 + ...sure._docstring_special_substitutions.html | 183 + ....CellMeasure._docstring_substitutions.html | 204 + ...fdm.core.CellMeasure.clear_properties.html | 193 + .../method/cfdm.core.CellMeasure.copy.html | 186 + .../cfdm.core.CellMeasure.del_data.html | 202 + .../cfdm.core.CellMeasure.del_measure.html | 194 + .../cfdm.core.CellMeasure.del_property.html | 201 + .../cfdm.core.CellMeasure.get_data.html | 207 + .../cfdm.core.CellMeasure.get_measure.html | 194 + .../cfdm.core.CellMeasure.get_property.html | 201 + .../cfdm.core.CellMeasure.has_bounds.html | 178 + .../cfdm.core.CellMeasure.has_data.html | 193 + .../cfdm.core.CellMeasure.has_measure.html | 188 + .../cfdm.core.CellMeasure.has_property.html | 199 + .../cfdm.core.CellMeasure.properties.html | 194 + .../cfdm.core.CellMeasure.set_data.html | 218 + .../cfdm.core.CellMeasure.set_measure.html | 191 + .../cfdm.core.CellMeasure.set_properties.html | 204 + .../cfdm.core.CellMeasure.set_property.html | 196 + .../cfdm.core.CellMethod.__deepcopy__.html | 166 + ...llMethod._docstring_method_exclusions.html | 193 + ...e.CellMethod._docstring_package_depth.html | 187 + ...thod._docstring_special_substitutions.html | 183 + ...e.CellMethod._docstring_substitutions.html | 204 + .../method/cfdm.core.CellMethod.copy.html | 173 + .../method/cfdm.core.CellMethod.del_axes.html | 197 + .../cfdm.core.CellMethod.del_method.html | 196 + .../cfdm.core.CellMethod.del_qualifier.html | 197 + .../method/cfdm.core.CellMethod.get_axes.html | 197 + .../cfdm.core.CellMethod.get_method.html | 197 + .../cfdm.core.CellMethod.get_qualifier.html | 197 + .../method/cfdm.core.CellMethod.has_axes.html | 188 + .../cfdm.core.CellMethod.has_method.html | 188 + .../cfdm.core.CellMethod.has_qualifier.html | 189 + .../cfdm.core.CellMethod.qualifiers.html | 183 + .../method/cfdm.core.CellMethod.set_axes.html | 216 + .../cfdm.core.CellMethod.set_method.html | 191 + .../cfdm.core.CellMethod.set_qualifier.html | 184 + .../method/cfdm.core.Constructs.__call__.html | 146 + .../cfdm.core.Constructs.__contains__.html | 160 + .../method/cfdm.core.Constructs.__copy__.html | 159 + .../cfdm.core.Constructs.__deepcopy__.html | 159 + .../cfdm.core.Constructs.__getitem__.html | 160 + .../method/cfdm.core.Constructs.__iter__.html | 160 + .../method/cfdm.core.Constructs.__len__.html | 160 + ...nstructs._docstring_method_exclusions.html | 193 + ...e.Constructs._docstring_package_depth.html | 187 + ...ucts._docstring_special_substitutions.html | 183 + ...e.Constructs._docstring_substitutions.html | 204 + .../cfdm.core.Constructs.construct_type.html | 178 + .../cfdm.core.Constructs.construct_types.html | 163 + .../method/cfdm.core.Constructs.copy.html | 182 + .../cfdm.core.Constructs.data_axes.html | 188 + .../cfdm.core.Constructs.filter_by_type.html | 241 + .../method/cfdm.core.Constructs.get.html | 163 + .../cfdm.core.Constructs.get_data_axes.html | 184 + .../method/cfdm.core.Constructs.items.html | 196 + .../method/cfdm.core.Constructs.key.html | 199 + .../method/cfdm.core.Constructs.keys.html | 195 + .../cfdm.core.Constructs.new_identifier.html | 195 + .../method/cfdm.core.Constructs.ordered.html | 195 + .../method/cfdm.core.Constructs.replace.html | 160 + .../cfdm.core.Constructs.shallow_copy.html | 182 + .../method/cfdm.core.Constructs.todict.html | 174 + .../method/cfdm.core.Constructs.value.html | 196 + .../method/cfdm.core.Constructs.values.html | 195 + .../cfdm.core.Container.__deepcopy__.html | 166 + .../cfdm.core.Container._del_component.html | 192 + ...ontainer._docstring_method_exclusions.html | 193 + ...re.Container._docstring_package_depth.html | 187 + ...iner._docstring_special_substitutions.html | 183 + ...re.Container._docstring_substitutions.html | 204 + .../cfdm.core.Container._get_component.html | 192 + .../cfdm.core.Container._has_component.html | 190 + .../cfdm.core.Container._set_component.html | 189 + .../method/cfdm.core.Container.copy.html | 173 + .../cfdm.core.Coordinate.__deepcopy__.html | 166 + ...ordinate._docstring_method_exclusions.html | 193 + ...e.Coordinate._docstring_package_depth.html | 187 + ...nate._docstring_special_substitutions.html | 183 + ...e.Coordinate._docstring_substitutions.html | 204 + ...cfdm.core.Coordinate.clear_properties.html | 193 + .../method/cfdm.core.Coordinate.copy.html | 186 + .../cfdm.core.Coordinate.del_bounds.html | 199 + .../cfdm.core.Coordinate.del_climatology.html | 201 + .../method/cfdm.core.Coordinate.del_data.html | 202 + .../cfdm.core.Coordinate.del_geometry.html | 199 + ...fdm.core.Coordinate.del_interior_ring.html | 202 + .../cfdm.core.Coordinate.del_property.html | 201 + .../cfdm.core.Coordinate.get_bounds.html | 200 + .../cfdm.core.Coordinate.get_climatology.html | 198 + .../method/cfdm.core.Coordinate.get_data.html | 207 + .../cfdm.core.Coordinate.get_geometry.html | 199 + ...fdm.core.Coordinate.get_interior_ring.html | 203 + .../cfdm.core.Coordinate.get_property.html | 201 + .../cfdm.core.Coordinate.has_bounds.html | 191 + .../method/cfdm.core.Coordinate.has_data.html | 193 + .../cfdm.core.Coordinate.has_geometry.html | 190 + ...fdm.core.Coordinate.has_interior_ring.html | 194 + .../cfdm.core.Coordinate.has_property.html | 199 + .../cfdm.core.Coordinate.is_climatology.html | 192 + .../cfdm.core.Coordinate.properties.html | 194 + .../cfdm.core.Coordinate.set_bounds.html | 197 + .../cfdm.core.Coordinate.set_climatology.html | 197 + .../method/cfdm.core.Coordinate.set_data.html | 218 + .../cfdm.core.Coordinate.set_geometry.html | 193 + ...fdm.core.Coordinate.set_interior_ring.html | 199 + .../cfdm.core.Coordinate.set_properties.html | 204 + .../cfdm.core.Coordinate.set_property.html | 196 + ...ore.CoordinateConversion.__deepcopy__.html | 166 + ...nversion._docstring_method_exclusions.html | 193 + ...teConversion._docstring_package_depth.html | 187 + ...sion._docstring_special_substitutions.html | 183 + ...teConversion._docstring_substitutions.html | 204 + ...teConversion.clear_domain_ancillaries.html | 195 + ...CoordinateConversion.clear_parameters.html | 193 + .../cfdm.core.CoordinateConversion.copy.html | 173 + ...dinateConversion.del_domain_ancillary.html | 204 + ...re.CoordinateConversion.del_parameter.html | 197 + ...ordinateConversion.domain_ancillaries.html | 195 + ...dinateConversion.get_domain_ancillary.html | 197 + ...re.CoordinateConversion.get_parameter.html | 192 + ...dinateConversion.has_domain_ancillary.html | 192 + ...re.CoordinateConversion.has_parameter.html | 199 + ....core.CoordinateConversion.parameters.html | 194 + ...nateConversion.set_domain_ancillaries.html | 206 + ...dinateConversion.set_domain_ancillary.html | 196 + ...re.CoordinateConversion.set_parameter.html | 185 + ...e.CoordinateConversion.set_parameters.html | 204 + ...core.CoordinateReference.__deepcopy__.html | 166 + ...eference._docstring_method_exclusions.html | 193 + ...ateReference._docstring_package_depth.html | 187 + ...ence._docstring_special_substitutions.html | 183 + ...ateReference._docstring_substitutions.html | 204 + ...CoordinateReference.clear_coordinates.html | 182 + ....core.CoordinateReference.coordinates.html | 182 + .../cfdm.core.CoordinateReference.copy.html | 173 + ...re.CoordinateReference.del_coordinate.html | 199 + ...teReference.del_coordinate_conversion.html | 190 + ...dm.core.CoordinateReference.del_datum.html | 183 + ...teReference.get_coordinate_conversion.html | 190 + ...dm.core.CoordinateReference.get_datum.html | 183 + ...re.CoordinateReference.has_coordinate.html | 197 + ...re.CoordinateReference.set_coordinate.html | 193 + ...teReference.set_coordinate_conversion.html | 197 + ...e.CoordinateReference.set_coordinates.html | 195 + ...dm.core.CoordinateReference.set_datum.html | 189 + .../method/cfdm.core.Data.__deepcopy__.html | 166 + .../method/cfdm.core.Data.__repr__.html | 156 + .../method/cfdm.core.Data.__str__.html | 156 + ...ore.Data._docstring_method_exclusions.html | 193 + ...dm.core.Data._docstring_package_depth.html | 187 + ...Data._docstring_special_substitutions.html | 183 + ...dm.core.Data._docstring_substitutions.html | 204 + docs/1.9.0.1/method/cfdm.core.Data.copy.html | 179 + .../method/cfdm.core.Data.del_calendar.html | 195 + .../method/cfdm.core.Data.del_fill_value.html | 195 + .../method/cfdm.core.Data.del_units.html | 194 + .../method/cfdm.core.Data.get_calendar.html | 195 + .../method/cfdm.core.Data.get_fill_value.html | 198 + .../method/cfdm.core.Data.get_units.html | 194 + .../method/cfdm.core.Data.has_calendar.html | 186 + .../method/cfdm.core.Data.has_fill_value.html | 189 + .../method/cfdm.core.Data.has_units.html | 185 + .../method/cfdm.core.Data.set_calendar.html | 189 + .../method/cfdm.core.Data.set_fill_value.html | 192 + .../method/cfdm.core.Data.set_units.html | 188 + .../1.9.0.1/method/cfdm.core.Data.source.html | 180 + .../method/cfdm.core.Datum.__deepcopy__.html | 166 + ...re.Datum._docstring_method_exclusions.html | 193 + ...m.core.Datum._docstring_package_depth.html | 187 + ...atum._docstring_special_substitutions.html | 183 + ...m.core.Datum._docstring_substitutions.html | 204 + .../cfdm.core.Datum.clear_parameters.html | 193 + docs/1.9.0.1/method/cfdm.core.Datum.copy.html | 173 + .../method/cfdm.core.Datum.del_parameter.html | 197 + .../method/cfdm.core.Datum.get_parameter.html | 192 + .../method/cfdm.core.Datum.has_parameter.html | 199 + .../method/cfdm.core.Datum.parameters.html | 194 + .../method/cfdm.core.Datum.set_parameter.html | 185 + .../cfdm.core.Datum.set_parameters.html | 204 + ...core.DimensionCoordinate.__deepcopy__.html | 166 + ...ordinate._docstring_method_exclusions.html | 193 + ...onCoordinate._docstring_package_depth.html | 187 + ...nate._docstring_special_substitutions.html | 183 + ...onCoordinate._docstring_substitutions.html | 204 + ....DimensionCoordinate.clear_properties.html | 193 + .../cfdm.core.DimensionCoordinate.copy.html | 186 + ...m.core.DimensionCoordinate.del_bounds.html | 199 + ...e.DimensionCoordinate.del_climatology.html | 201 + ...fdm.core.DimensionCoordinate.del_data.html | 202 + ...core.DimensionCoordinate.del_geometry.html | 199 + ...DimensionCoordinate.del_interior_ring.html | 202 + ...core.DimensionCoordinate.del_property.html | 201 + ...m.core.DimensionCoordinate.get_bounds.html | 200 + ...e.DimensionCoordinate.get_climatology.html | 198 + ...fdm.core.DimensionCoordinate.get_data.html | 207 + ...core.DimensionCoordinate.get_geometry.html | 199 + ...DimensionCoordinate.get_interior_ring.html | 203 + ...core.DimensionCoordinate.get_property.html | 201 + ...m.core.DimensionCoordinate.has_bounds.html | 191 + ...fdm.core.DimensionCoordinate.has_data.html | 193 + ...core.DimensionCoordinate.has_geometry.html | 190 + ...DimensionCoordinate.has_interior_ring.html | 194 + ...core.DimensionCoordinate.has_property.html | 199 + ...re.DimensionCoordinate.is_climatology.html | 192 + ...m.core.DimensionCoordinate.properties.html | 194 + ...m.core.DimensionCoordinate.set_bounds.html | 197 + ...e.DimensionCoordinate.set_climatology.html | 197 + ...fdm.core.DimensionCoordinate.set_data.html | 214 + ...core.DimensionCoordinate.set_geometry.html | 193 + ...DimensionCoordinate.set_interior_ring.html | 199 + ...re.DimensionCoordinate.set_properties.html | 204 + ...core.DimensionCoordinate.set_property.html | 196 + ...riteMeta._docstring_method_exclusions.html | 193 + ...gRewriteMeta._docstring_package_depth.html | 187 + ...Meta._docstring_special_substitutions.html | 183 + ...gRewriteMeta._docstring_substitutions.html | 204 + .../cfdm.core.DocstringRewriteMeta.mro.html | 156 + .../method/cfdm.core.Domain.__deepcopy__.html | 166 + ...e.Domain._docstring_method_exclusions.html | 193 + ....core.Domain._docstring_package_depth.html | 187 + ...main._docstring_special_substitutions.html | 183 + ....core.Domain._docstring_substitutions.html | 204 + .../cfdm.core.Domain.clear_properties.html | 193 + .../1.9.0.1/method/cfdm.core.Domain.copy.html | 184 + .../cfdm.core.Domain.del_construct.html | 199 + .../cfdm.core.Domain.del_data_axes.html | 201 + .../method/cfdm.core.Domain.del_property.html | 201 + .../cfdm.core.Domain.fromconstructs.html | 191 + .../cfdm.core.Domain.get_construct.html | 198 + .../cfdm.core.Domain.get_data_axes.html | 201 + .../method/cfdm.core.Domain.get_property.html | 201 + .../method/cfdm.core.Domain.has_bounds.html | 175 + .../cfdm.core.Domain.has_construct.html | 191 + .../method/cfdm.core.Domain.has_data.html | 171 + .../cfdm.core.Domain.has_data_axes.html | 196 + .../method/cfdm.core.Domain.has_property.html | 199 + .../method/cfdm.core.Domain.properties.html | 194 + .../cfdm.core.Domain.set_construct.html | 211 + .../cfdm.core.Domain.set_data_axes.html | 202 + .../cfdm.core.Domain.set_properties.html | 204 + .../method/cfdm.core.Domain.set_property.html | 196 + ...fdm.core.DomainAncillary.__deepcopy__.html | 166 + ...ncillary._docstring_method_exclusions.html | 193 + ...ainAncillary._docstring_package_depth.html | 187 + ...lary._docstring_special_substitutions.html | 183 + ...ainAncillary._docstring_substitutions.html | 204 + ...core.DomainAncillary.clear_properties.html | 193 + .../cfdm.core.DomainAncillary.copy.html | 186 + .../cfdm.core.DomainAncillary.del_bounds.html | 199 + .../cfdm.core.DomainAncillary.del_data.html | 202 + ...fdm.core.DomainAncillary.del_geometry.html | 199 + ...ore.DomainAncillary.del_interior_ring.html | 202 + ...fdm.core.DomainAncillary.del_property.html | 201 + .../cfdm.core.DomainAncillary.get_bounds.html | 200 + .../cfdm.core.DomainAncillary.get_data.html | 207 + ...fdm.core.DomainAncillary.get_geometry.html | 199 + ...ore.DomainAncillary.get_interior_ring.html | 203 + ...fdm.core.DomainAncillary.get_property.html | 201 + .../cfdm.core.DomainAncillary.has_bounds.html | 191 + .../cfdm.core.DomainAncillary.has_data.html | 193 + ...fdm.core.DomainAncillary.has_geometry.html | 190 + ...ore.DomainAncillary.has_interior_ring.html | 194 + ...fdm.core.DomainAncillary.has_property.html | 199 + .../cfdm.core.DomainAncillary.properties.html | 194 + .../cfdm.core.DomainAncillary.set_bounds.html | 197 + .../cfdm.core.DomainAncillary.set_data.html | 218 + ...fdm.core.DomainAncillary.set_geometry.html | 193 + ...ore.DomainAncillary.set_interior_ring.html | 199 + ...m.core.DomainAncillary.set_properties.html | 204 + ...fdm.core.DomainAncillary.set_property.html | 196 + .../cfdm.core.DomainAxis.__deepcopy__.html | 166 + ...mainAxis._docstring_method_exclusions.html | 193 + ...e.DomainAxis._docstring_package_depth.html | 187 + ...Axis._docstring_special_substitutions.html | 183 + ...e.DomainAxis._docstring_substitutions.html | 204 + .../method/cfdm.core.DomainAxis.copy.html | 173 + .../method/cfdm.core.DomainAxis.del_size.html | 196 + .../method/cfdm.core.DomainAxis.get_size.html | 196 + .../method/cfdm.core.DomainAxis.has_size.html | 190 + .../method/cfdm.core.DomainAxis.set_size.html | 193 + .../method/cfdm.core.Field.__deepcopy__.html | 166 + ...re.Field._docstring_method_exclusions.html | 193 + ...m.core.Field._docstring_package_depth.html | 187 + ...ield._docstring_special_substitutions.html | 183 + ...m.core.Field._docstring_substitutions.html | 204 + .../cfdm.core.Field.clear_properties.html | 193 + docs/1.9.0.1/method/cfdm.core.Field.copy.html | 186 + .../method/cfdm.core.Field.del_construct.html | 206 + .../method/cfdm.core.Field.del_data.html | 202 + .../method/cfdm.core.Field.del_data_axes.html | 208 + .../method/cfdm.core.Field.del_property.html | 201 + .../method/cfdm.core.Field.get_construct.html | 198 + .../method/cfdm.core.Field.get_data.html | 207 + .../method/cfdm.core.Field.get_data_axes.html | 208 + .../method/cfdm.core.Field.get_domain.html | 183 + .../method/cfdm.core.Field.get_property.html | 201 + .../method/cfdm.core.Field.has_bounds.html | 178 + .../method/cfdm.core.Field.has_construct.html | 191 + .../method/cfdm.core.Field.has_data.html | 193 + .../method/cfdm.core.Field.has_data_axes.html | 203 + .../method/cfdm.core.Field.has_property.html | 199 + .../method/cfdm.core.Field.properties.html | 194 + .../method/cfdm.core.Field.set_construct.html | 211 + .../method/cfdm.core.Field.set_data.html | 235 + .../method/cfdm.core.Field.set_data_axes.html | 208 + .../cfdm.core.Field.set_properties.html | 204 + .../method/cfdm.core.Field.set_property.html | 196 + ...cfdm.core.FieldAncillary.__deepcopy__.html | 166 + ...ncillary._docstring_method_exclusions.html | 193 + ...eldAncillary._docstring_package_depth.html | 187 + ...lary._docstring_special_substitutions.html | 183 + ...eldAncillary._docstring_substitutions.html | 204 + ....core.FieldAncillary.clear_properties.html | 193 + .../method/cfdm.core.FieldAncillary.copy.html | 186 + .../cfdm.core.FieldAncillary.del_data.html | 202 + ...cfdm.core.FieldAncillary.del_property.html | 201 + .../cfdm.core.FieldAncillary.get_data.html | 207 + ...cfdm.core.FieldAncillary.get_property.html | 201 + .../cfdm.core.FieldAncillary.has_bounds.html | 178 + .../cfdm.core.FieldAncillary.has_data.html | 193 + ...cfdm.core.FieldAncillary.has_property.html | 199 + .../cfdm.core.FieldAncillary.properties.html | 194 + .../cfdm.core.FieldAncillary.set_data.html | 218 + ...dm.core.FieldAncillary.set_properties.html | 204 + ...cfdm.core.FieldAncillary.set_property.html | 196 + .../cfdm.core.InteriorRing.__deepcopy__.html | 166 + ...riorRing._docstring_method_exclusions.html | 193 + ...InteriorRing._docstring_package_depth.html | 187 + ...Ring._docstring_special_substitutions.html | 183 + ...InteriorRing._docstring_substitutions.html | 204 + ...dm.core.InteriorRing.clear_properties.html | 193 + .../method/cfdm.core.InteriorRing.copy.html | 186 + .../cfdm.core.InteriorRing.del_data.html | 202 + .../cfdm.core.InteriorRing.del_property.html | 201 + .../cfdm.core.InteriorRing.get_data.html | 207 + .../cfdm.core.InteriorRing.get_property.html | 201 + .../cfdm.core.InteriorRing.has_bounds.html | 178 + .../cfdm.core.InteriorRing.has_data.html | 193 + .../cfdm.core.InteriorRing.has_property.html | 199 + .../cfdm.core.InteriorRing.properties.html | 194 + .../cfdm.core.InteriorRing.set_data.html | 218 + ...cfdm.core.InteriorRing.set_properties.html | 204 + .../cfdm.core.InteriorRing.set_property.html | 196 + ...mpyArray._docstring_method_exclusions.html | 193 + ...e.NumpyArray._docstring_package_depth.html | 187 + ...rray._docstring_special_substitutions.html | 183 + ...e.NumpyArray._docstring_substitutions.html | 204 + .../method/cfdm.core.NumpyArray.copy.html | 175 + .../cfdm.core.Parameters.__deepcopy__.html | 166 + ...rameters._docstring_method_exclusions.html | 193 + ...e.Parameters._docstring_package_depth.html | 187 + ...ters._docstring_special_substitutions.html | 183 + ...e.Parameters._docstring_substitutions.html | 204 + ...cfdm.core.Parameters.clear_parameters.html | 193 + .../method/cfdm.core.Parameters.copy.html | 173 + .../cfdm.core.Parameters.del_parameter.html | 197 + .../cfdm.core.Parameters.get_parameter.html | 192 + .../cfdm.core.Parameters.has_parameter.html | 199 + .../cfdm.core.Parameters.parameters.html | 194 + .../cfdm.core.Parameters.set_parameter.html | 185 + .../cfdm.core.Parameters.set_parameters.html | 204 + ...ametersDomainAncillaries.__deepcopy__.html | 166 + ...nAncillaries.clear_domain_ancillaries.html | 195 + ...ersDomainAncillaries.clear_parameters.html | 193 + ...core.ParametersDomainAncillaries.copy.html | 173 + ...omainAncillaries.del_domain_ancillary.html | 204 + ...metersDomainAncillaries.del_parameter.html | 197 + ...sDomainAncillaries.domain_ancillaries.html | 195 + ...omainAncillaries.get_domain_ancillary.html | 197 + ...metersDomainAncillaries.get_parameter.html | 192 + ...omainAncillaries.has_domain_ancillary.html | 192 + ...metersDomainAncillaries.has_parameter.html | 199 + ...arametersDomainAncillaries.parameters.html | 194 + ...ainAncillaries.set_domain_ancillaries.html | 206 + ...omainAncillaries.set_domain_ancillary.html | 196 + ...metersDomainAncillaries.set_parameter.html | 185 + ...etersDomainAncillaries.set_parameters.html | 204 + .../cfdm.core.Properties.__deepcopy__.html | 166 + ...operties._docstring_method_exclusions.html | 193 + ...e.Properties._docstring_package_depth.html | 187 + ...ties._docstring_special_substitutions.html | 183 + ...e.Properties._docstring_substitutions.html | 204 + ...cfdm.core.Properties.clear_properties.html | 193 + .../method/cfdm.core.Properties.copy.html | 173 + .../cfdm.core.Properties.del_property.html | 201 + .../cfdm.core.Properties.get_property.html | 201 + .../cfdm.core.Properties.has_bounds.html | 175 + .../method/cfdm.core.Properties.has_data.html | 171 + .../cfdm.core.Properties.has_property.html | 199 + .../cfdm.core.Properties.properties.html | 194 + .../cfdm.core.Properties.set_properties.html | 204 + .../cfdm.core.Properties.set_property.html | 196 + ...cfdm.core.PropertiesData.__deepcopy__.html | 166 + ...tiesData._docstring_method_exclusions.html | 193 + ...opertiesData._docstring_package_depth.html | 187 + ...Data._docstring_special_substitutions.html | 183 + ...opertiesData._docstring_substitutions.html | 204 + ....core.PropertiesData.clear_properties.html | 193 + .../method/cfdm.core.PropertiesData.copy.html | 186 + .../cfdm.core.PropertiesData.del_data.html | 202 + ...cfdm.core.PropertiesData.del_property.html | 201 + .../cfdm.core.PropertiesData.get_data.html | 207 + ...cfdm.core.PropertiesData.get_property.html | 201 + .../cfdm.core.PropertiesData.has_bounds.html | 178 + .../cfdm.core.PropertiesData.has_data.html | 193 + ...cfdm.core.PropertiesData.has_property.html | 199 + .../cfdm.core.PropertiesData.properties.html | 194 + .../cfdm.core.PropertiesData.set_data.html | 218 + ...dm.core.PropertiesData.set_properties.html | 204 + ...cfdm.core.PropertiesData.set_property.html | 196 + ...ore.PropertiesDataBounds.__deepcopy__.html | 166 + ...taBounds._docstring_method_exclusions.html | 193 + ...esDataBounds._docstring_package_depth.html | 187 + ...unds._docstring_special_substitutions.html | 183 + ...esDataBounds._docstring_substitutions.html | 204 + ...PropertiesDataBounds.clear_properties.html | 193 + .../cfdm.core.PropertiesDataBounds.copy.html | 186 + ....core.PropertiesDataBounds.del_bounds.html | 199 + ...dm.core.PropertiesDataBounds.del_data.html | 202 + ...ore.PropertiesDataBounds.del_geometry.html | 199 + ...ropertiesDataBounds.del_interior_ring.html | 202 + ...ore.PropertiesDataBounds.del_property.html | 201 + ....core.PropertiesDataBounds.get_bounds.html | 200 + ...dm.core.PropertiesDataBounds.get_data.html | 207 + ...ore.PropertiesDataBounds.get_geometry.html | 199 + ...ropertiesDataBounds.get_interior_ring.html | 203 + ...ore.PropertiesDataBounds.get_property.html | 201 + ....core.PropertiesDataBounds.has_bounds.html | 191 + ...dm.core.PropertiesDataBounds.has_data.html | 193 + ...ore.PropertiesDataBounds.has_geometry.html | 190 + ...ropertiesDataBounds.has_interior_ring.html | 194 + ...ore.PropertiesDataBounds.has_property.html | 199 + ....core.PropertiesDataBounds.properties.html | 194 + ....core.PropertiesDataBounds.set_bounds.html | 197 + ...dm.core.PropertiesDataBounds.set_data.html | 218 + ...ore.PropertiesDataBounds.set_geometry.html | 193 + ...ropertiesDataBounds.set_interior_ring.html | 199 + ...e.PropertiesDataBounds.set_properties.html | 204 + ...ore.PropertiesDataBounds.set_property.html | 196 + ....core.abstract.Container.__deepcopy__.html | 156 + ...ore.abstract.Container._del_component.html | 182 + ...ore.abstract.Container._get_component.html | 182 + ...ore.abstract.Container._has_component.html | 180 + ...ore.abstract.Container._set_component.html | 179 + .../cfdm.core.abstract.Container.copy.html | 163 + ...core.abstract.Coordinate.__deepcopy__.html | 156 + ....abstract.Coordinate.clear_properties.html | 183 + .../cfdm.core.abstract.Coordinate.copy.html | 176 + ...m.core.abstract.Coordinate.del_bounds.html | 189 + ...fdm.core.abstract.Coordinate.del_data.html | 192 + ...core.abstract.Coordinate.del_property.html | 191 + ...m.core.abstract.Coordinate.get_bounds.html | 190 + ...fdm.core.abstract.Coordinate.get_data.html | 197 + ...core.abstract.Coordinate.get_property.html | 191 + ...m.core.abstract.Coordinate.has_bounds.html | 181 + ...fdm.core.abstract.Coordinate.has_data.html | 183 + ...core.abstract.Coordinate.has_property.html | 189 + ...m.core.abstract.Coordinate.properties.html | 184 + ...m.core.abstract.Coordinate.set_bounds.html | 187 + ...fdm.core.abstract.Coordinate.set_data.html | 208 + ...re.abstract.Coordinate.set_properties.html | 194 + ...core.abstract.Coordinate.set_property.html | 186 + ...core.abstract.Parameters.__deepcopy__.html | 156 + ....abstract.Parameters.clear_parameters.html | 183 + .../cfdm.core.abstract.Parameters.copy.html | 163 + ...ore.abstract.Parameters.del_parameter.html | 187 + ...ore.abstract.Parameters.get_parameter.html | 182 + ...m.core.abstract.Parameters.parameters.html | 184 + ...ore.abstract.Parameters.set_parameter.html | 175 + ...re.abstract.Parameters.set_parameters.html | 194 + ...ametersDomainAncillaries.__deepcopy__.html | 156 + ...nAncillaries.clear_domain_ancillaries.html | 185 + ...ersDomainAncillaries.clear_parameters.html | 183 + ...ract.ParametersDomainAncillaries.copy.html | 163 + ...omainAncillaries.del_domain_ancillary.html | 194 + ...metersDomainAncillaries.del_parameter.html | 187 + ...sDomainAncillaries.domain_ancillaries.html | 185 + ...omainAncillaries.get_domain_ancillary.html | 187 + ...metersDomainAncillaries.get_parameter.html | 182 + ...arametersDomainAncillaries.parameters.html | 184 + ...ainAncillaries.set_domain_ancillaries.html | 196 + ...omainAncillaries.set_domain_ancillary.html | 186 + ...metersDomainAncillaries.set_parameter.html | 175 + ...etersDomainAncillaries.set_parameters.html | 194 + ...core.abstract.Properties.__deepcopy__.html | 156 + ....abstract.Properties.clear_properties.html | 183 + .../cfdm.core.abstract.Properties.copy.html | 163 + ...core.abstract.Properties.del_property.html | 191 + ...core.abstract.Properties.get_property.html | 191 + ...core.abstract.Properties.has_property.html | 189 + ...m.core.abstract.Properties.properties.html | 184 + ...re.abstract.Properties.set_properties.html | 194 + ...core.abstract.Properties.set_property.html | 186 + ....abstract.PropertiesData.__deepcopy__.html | 156 + ...tract.PropertiesData.clear_properties.html | 183 + ...fdm.core.abstract.PropertiesData.copy.html | 176 + ...core.abstract.PropertiesData.del_data.html | 192 + ....abstract.PropertiesData.del_property.html | 191 + ...core.abstract.PropertiesData.get_data.html | 197 + ....abstract.PropertiesData.get_property.html | 191 + ...core.abstract.PropertiesData.has_data.html | 183 + ....abstract.PropertiesData.has_property.html | 189 + ...re.abstract.PropertiesData.properties.html | 184 + ...core.abstract.PropertiesData.set_data.html | 208 + ...bstract.PropertiesData.set_properties.html | 194 + ....abstract.PropertiesData.set_property.html | 186 + ...act.PropertiesDataBounds.__deepcopy__.html | 156 + ...PropertiesDataBounds.clear_properties.html | 183 + ...re.abstract.PropertiesDataBounds.copy.html | 176 + ...tract.PropertiesDataBounds.del_bounds.html | 189 + ...bstract.PropertiesDataBounds.del_data.html | 192 + ...act.PropertiesDataBounds.del_property.html | 191 + ...tract.PropertiesDataBounds.get_bounds.html | 190 + ...bstract.PropertiesDataBounds.get_data.html | 197 + ...act.PropertiesDataBounds.get_property.html | 191 + ...tract.PropertiesDataBounds.has_bounds.html | 181 + ...bstract.PropertiesDataBounds.has_data.html | 183 + ...act.PropertiesDataBounds.has_property.html | 189 + ...tract.PropertiesDataBounds.properties.html | 184 + ...tract.PropertiesDataBounds.set_bounds.html | 187 + ...bstract.PropertiesDataBounds.set_data.html | 208 + ...t.PropertiesDataBounds.set_properties.html | 194 + ...act.PropertiesDataBounds.set_property.html | 186 + docs/1.9.0.1/objects.inv | Bin 0 -> 35729 bytes docs/1.9.0.1/performance.html | 204 + docs/1.9.0.1/philosophy.html | 214 + docs/1.9.0.1/releases.html | 260 + docs/1.9.0.1/sample_datasets.html | 162 + docs/1.9.0.1/search.html | 151 + docs/1.9.0.1/searchindex.js | 1 + docs/1.9.0.1/support.html | 154 + docs/1.9.0.1/tutorial.html | 5036 ++++++++ 1980 files changed, 411919 insertions(+) create mode 100644 docs/1.9.0.1/Changelog.html create mode 100644 docs/1.9.0.1/_downloads/cfdm_tutorial_files.zip create mode 100644 docs/1.9.0.1/_downloads/tutorial.py create mode 100644 docs/1.9.0.1/_images/cfdm_field.svg create mode 100644 docs/1.9.0.1/_static/alabaster.css create mode 100644 docs/1.9.0.1/_static/basic.css create mode 100644 docs/1.9.0.1/_static/clipboard.min.js create mode 100644 docs/1.9.0.1/_static/copy-button.svg create mode 100644 docs/1.9.0.1/_static/copybutton.css create mode 100644 docs/1.9.0.1/_static/copybutton.js create mode 100644 docs/1.9.0.1/_static/copybutton_funcs.js create mode 100644 docs/1.9.0.1/_static/custom.css create mode 100644 docs/1.9.0.1/_static/customise-alabaster.css create mode 100644 docs/1.9.0.1/_static/default.css create mode 100644 docs/1.9.0.1/_static/doctools.js create mode 100644 docs/1.9.0.1/_static/documentation_options.js create mode 100644 docs/1.9.0.1/_static/file.png create mode 100644 docs/1.9.0.1/_static/graphviz.css create mode 100644 docs/1.9.0.1/_static/jquery-3.4.1.js create mode 100644 docs/1.9.0.1/_static/jquery.js create mode 100644 docs/1.9.0.1/_static/language_data.js create mode 100644 docs/1.9.0.1/_static/minus.png create mode 100644 docs/1.9.0.1/_static/plus.png create mode 100644 docs/1.9.0.1/_static/pygments.css create mode 100644 docs/1.9.0.1/_static/searchtools.js create mode 100644 docs/1.9.0.1/_static/toggleprompt.js create mode 100644 docs/1.9.0.1/_static/underscore-1.3.1.js create mode 100644 docs/1.9.0.1/_static/underscore.js create mode 100644 docs/1.9.0.1/_templates/about.html create mode 100644 docs/1.9.0.1/_templates/attribute.rst create mode 100644 docs/1.9.0.1/_templates/base.rst create mode 100644 docs/1.9.0.1/_templates/function.rst create mode 100644 docs/1.9.0.1/_templates/globaltoc.html create mode 100644 docs/1.9.0.1/_templates/layout.html create mode 100644 docs/1.9.0.1/_templates/logo_EC.png create mode 100644 docs/1.9.0.1/_templates/logo_ERC.png create mode 100644 docs/1.9.0.1/_templates/logo_NCAS.png create mode 100644 docs/1.9.0.1/_templates/logo_NERC.png create mode 100644 docs/1.9.0.1/_templates/method.rst create mode 100644 docs/1.9.0.1/_templates/page.html create mode 100644 docs/1.9.0.1/_templates/sponsors.html create mode 100644 docs/1.9.0.1/api_reference.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Array.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Array.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Array.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Array.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Array.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Bounds.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Bounds.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Bounds.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Bounds.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Bounds.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMeasure.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CellMethod.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CompressedArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Constant._func.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Constant.value.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CoordinateReference.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CoordinateReference.coordinate_conversion.html create mode 100644 docs/1.9.0.1/attribute/cfdm.CoordinateReference.datum.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Count.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Count.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Count.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Count.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Count.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.datetime_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.datetime_as_string.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.mask.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Data.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.auxiliary_coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.cell_measures.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.constructs.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.coordinate_references.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.dimension_coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.domain_ancillaries.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Domain.domain_axes.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAncillary.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.DomainAxis.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.auxiliary_coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.cell_measures.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.cell_methods.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.constructs.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.coordinate_references.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.dimension_coordinates.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.domain.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.domain_ancillaries.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.domain_axes.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.field_ancillaries.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Field.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.FieldAncillary.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.GatheredArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Index.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Index.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Index.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Index.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.Index.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.InteriorRing.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.InteriorRing.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.InteriorRing.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.InteriorRing.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.InteriorRing.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.List.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.List.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.List.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.List.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.List.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NetCDFArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NetCDFArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NetCDFArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NetCDFArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NetCDFArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NumpyArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NumpyArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NumpyArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NumpyArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.NumpyArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.compressed_array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Array.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Array.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Array.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Array.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Array.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Bounds.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CellMeasure.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CellMeasure.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CellMethod.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Coordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Coordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Coordinate.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.coordinate_conversion.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.datum.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Data.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Data.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Data.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Data.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Data.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Domain.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Domain.constructs.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.DomainAxis.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Field.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Field.constructs.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Field.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.Field.domain.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.construct_type.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.InteriorRing.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.NumpyArray.array.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.NumpyArray.dtype.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.NumpyArray.ndim.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.NumpyArray.shape.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.NumpyArray.size.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.PropertiesData.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.interior_ring.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.data.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.bounds.html create mode 100644 docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.data.html create mode 100644 docs/1.9.0.1/cf_data_model.html create mode 100644 docs/1.9.0.1/class.html create mode 100644 docs/1.9.0.1/class/cfdm.Array.html create mode 100644 docs/1.9.0.1/class/cfdm.AuxiliaryCoordinate.html create mode 100644 docs/1.9.0.1/class/cfdm.Bounds.html create mode 100644 docs/1.9.0.1/class/cfdm.CellMeasure.html create mode 100644 docs/1.9.0.1/class/cfdm.CellMethod.html create mode 100644 docs/1.9.0.1/class/cfdm.CompressedArray.html create mode 100644 docs/1.9.0.1/class/cfdm.Configuration.html create mode 100644 docs/1.9.0.1/class/cfdm.Constant.html create mode 100644 docs/1.9.0.1/class/cfdm.Constructs.html create mode 100644 docs/1.9.0.1/class/cfdm.CoordinateConversion.html create mode 100644 docs/1.9.0.1/class/cfdm.CoordinateReference.html create mode 100644 docs/1.9.0.1/class/cfdm.Count.html create mode 100644 docs/1.9.0.1/class/cfdm.Data.html create mode 100644 docs/1.9.0.1/class/cfdm.Datum.html create mode 100644 docs/1.9.0.1/class/cfdm.DimensionCoordinate.html create mode 100644 docs/1.9.0.1/class/cfdm.Domain.html create mode 100644 docs/1.9.0.1/class/cfdm.DomainAncillary.html create mode 100644 docs/1.9.0.1/class/cfdm.DomainAxis.html create mode 100644 docs/1.9.0.1/class/cfdm.Field.html create mode 100644 docs/1.9.0.1/class/cfdm.FieldAncillary.html create mode 100644 docs/1.9.0.1/class/cfdm.GatheredArray.html create mode 100644 docs/1.9.0.1/class/cfdm.Index.html create mode 100644 docs/1.9.0.1/class/cfdm.InteriorRing.html create mode 100644 docs/1.9.0.1/class/cfdm.List.html create mode 100644 docs/1.9.0.1/class/cfdm.NetCDFArray.html create mode 100644 docs/1.9.0.1/class/cfdm.NumpyArray.html create mode 100644 docs/1.9.0.1/class/cfdm.RaggedContiguousArray.html create mode 100644 docs/1.9.0.1/class/cfdm.RaggedIndexedArray.html create mode 100644 docs/1.9.0.1/class/cfdm.RaggedIndexedContiguousArray.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Array.html create mode 100644 docs/1.9.0.1/class/cfdm.core.AuxiliaryCoordinate.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Bounds.html create mode 100644 docs/1.9.0.1/class/cfdm.core.CellMeasure.html create mode 100644 docs/1.9.0.1/class/cfdm.core.CellMethod.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Constructs.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Container.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Coordinate.html create mode 100644 docs/1.9.0.1/class/cfdm.core.CoordinateConversion.html create mode 100644 docs/1.9.0.1/class/cfdm.core.CoordinateReference.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Data.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Datum.html create mode 100644 docs/1.9.0.1/class/cfdm.core.DimensionCoordinate.html create mode 100644 docs/1.9.0.1/class/cfdm.core.DocstringRewriteMeta.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Domain.html create mode 100644 docs/1.9.0.1/class/cfdm.core.DomainAncillary.html create mode 100644 docs/1.9.0.1/class/cfdm.core.DomainAxis.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Field.html create mode 100644 docs/1.9.0.1/class/cfdm.core.FieldAncillary.html create mode 100644 docs/1.9.0.1/class/cfdm.core.InteriorRing.html create mode 100644 docs/1.9.0.1/class/cfdm.core.NumpyArray.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Parameters.html create mode 100644 docs/1.9.0.1/class/cfdm.core.ParametersDomainAncillaries.html create mode 100644 docs/1.9.0.1/class/cfdm.core.Properties.html create mode 100644 docs/1.9.0.1/class/cfdm.core.PropertiesData.html create mode 100644 docs/1.9.0.1/class/cfdm.core.PropertiesDataBounds.html create mode 100644 docs/1.9.0.1/class_core.html create mode 100644 docs/1.9.0.1/constant.html create mode 100644 docs/1.9.0.1/contributing.html create mode 100644 docs/1.9.0.1/extensions.html create mode 100644 docs/1.9.0.1/function/cfdm.ATOL.html create mode 100644 docs/1.9.0.1/function/cfdm.CF.html create mode 100644 docs/1.9.0.1/function/cfdm.LOG_LEVEL.html create mode 100644 docs/1.9.0.1/function/cfdm.RTOL.html create mode 100644 docs/1.9.0.1/function/cfdm.abspath.html create mode 100644 docs/1.9.0.1/function/cfdm.atol.html create mode 100644 docs/1.9.0.1/function/cfdm.configuration.html create mode 100644 docs/1.9.0.1/function/cfdm.environment.html create mode 100644 docs/1.9.0.1/function/cfdm.example_domain.html create mode 100644 docs/1.9.0.1/function/cfdm.example_field.html create mode 100644 docs/1.9.0.1/function/cfdm.example_fields.html create mode 100644 docs/1.9.0.1/function/cfdm.implementation.html create mode 100644 docs/1.9.0.1/function/cfdm.is_log_level_debug.html create mode 100644 docs/1.9.0.1/function/cfdm.is_log_level_detail.html create mode 100644 docs/1.9.0.1/function/cfdm.is_log_level_info.html create mode 100644 docs/1.9.0.1/function/cfdm.log_level.html create mode 100644 docs/1.9.0.1/function/cfdm.read.html create mode 100644 docs/1.9.0.1/function/cfdm.rtol.html create mode 100644 docs/1.9.0.1/function/cfdm.unique_constructs.html create mode 100644 docs/1.9.0.1/function/cfdm.write.html create mode 100644 docs/1.9.0.1/functions.html create mode 100644 docs/1.9.0.1/genindex.html create mode 100644 docs/1.9.0.1/index.html create mode 100644 docs/1.9.0.1/installation.html create mode 100644 docs/1.9.0.1/introduction.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Array._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Array._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Array._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Array._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.Array.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds_data.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.is_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.inherited_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_clear_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_del_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_get_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_has_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.Bounds.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.del_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.get_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.has_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_external.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_external.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.set_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMeasure.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.del_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.del_method.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.del_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.get_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.get_method.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.get_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.has_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.has_method.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.has_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.qualifiers.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.set_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.set_method.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.set_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.CellMethod.sorted.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.source.html create mode 100644 docs/1.9.0.1/method/cfdm.CompressedArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.__enter__.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.__exit__.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.clear.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.fromkeys.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.get.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.items.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.keys.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.pop.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.popitem.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.setdefault.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.update.html create mode 100644 docs/1.9.0.1/method/cfdm.Configuration.values.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.__enter__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.__exit__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constant.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__call__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__contains__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__copy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__iter__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__len__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.clear_filters_applied.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.construct_type.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.construct_types.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.domain_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.domain_axis_identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_axis.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_key.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_method.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_naxes.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncdim.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncvar.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_size.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filter_by_type.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.filters_applied.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.get.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.inverse_filter.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.items.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.key.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.keys.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.new_identifier.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.ordered.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.replace.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.shallow_copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.todict.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.unfilter.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.value.html create mode 100644 docs/1.9.0.1/method/cfdm.Constructs.values.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.__bool__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.__nonzero__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.del_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.get_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.has_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.clear_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.del_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.get_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.get_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.has_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.CoordinateReference.set_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Count._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Count._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Count._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Count._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_clear_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_clear_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_del_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_del_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_get_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_get_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_has_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_has_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.Count.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__int__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__iter__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__setitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Data._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Data._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Data._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Data._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.any.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.del_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.del_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.del_units.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.empty.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.filled.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.first_element.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.flatten.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_count.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_index.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_list.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.get_units.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.has_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.has_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.has_units.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.last_element.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.max.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.maximum.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.min.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.minimum.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.nc_clear_hdf5_chunksizes.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.nc_hdf5_chunksizes.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.nc_set_hdf5_chunksizes.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.second_element.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.set_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.set_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.set_units.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.source.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.sum.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.Data.unique.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.__bool__.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.__nonzero__.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.Datum.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.is_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.DimensionCoordinate.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.auxiliary_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.cell_measures.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.climatological_time_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.construct_item.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.construct_key.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.coordinate_references.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.dataset_compliance.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.del_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.del_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.dimension_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.domain_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.domain_axis_key.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.fromconstructs.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.get_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_del_component_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_del_component_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_del_component_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_del_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_get_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_has_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attribute.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attribute.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.set_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.set_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Domain.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_part_node_count.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAncillary.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.del_size.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.get_size.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.has_size.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_clear_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_del_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_get_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_has_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_is_unlimited.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_unlimited.html create mode 100644 docs/1.9.0.1/method/cfdm.DomainAxis.set_size.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Field._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Field._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Field._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Field._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.auxiliary_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.cell_measures.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.cell_methods.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.climatological_time_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.compress.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.construct_item.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.construct_key.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.convert.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.coordinate_references.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.dataset_compliance.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.del_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.del_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.dimension_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.domain_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.domain_axis_key.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.field_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_domain.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_component_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_component_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_component_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_del_component_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_del_component_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_del_component_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_del_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_get_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_has_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_global_attribute.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_global_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_group_attribute.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_group_attributes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.set_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.set_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.Field.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.FieldAncillary.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.get_list.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.source.html create mode 100644 docs/1.9.0.1/method/cfdm.GatheredArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.Index._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.Index._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.Index._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Index._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_clear_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_clear_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_del_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_del_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_get_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_get_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_has_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_has_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.Index.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.InteriorRing.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.List.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.List.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.List.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.List.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.List._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.List._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.List._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.List._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.List.apply_masking.html create mode 100644 docs/1.9.0.1/method/cfdm.List.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.List.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.List.creation_commands.html create mode 100644 docs/1.9.0.1/method/cfdm.List.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.List.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.List.dump.html create mode 100644 docs/1.9.0.1/method/cfdm.List.equals.html create mode 100644 docs/1.9.0.1/method/cfdm.List.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.List.get_filenames.html create mode 100644 docs/1.9.0.1/method/cfdm.List.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.List.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.List.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.List.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.List.identities.html create mode 100644 docs/1.9.0.1/method/cfdm.List.identity.html create mode 100644 docs/1.9.0.1/method/cfdm.List.insert_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_clear_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_del_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_get_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_has_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_set_variable.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_set_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.List.nc_variable_groups.html create mode 100644 docs/1.9.0.1/method/cfdm.List.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.List.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.List.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.List.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.List.squeeze.html create mode 100644 docs/1.9.0.1/method/cfdm.List.transpose.html create mode 100644 docs/1.9.0.1/method/cfdm.List.uncompress.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.close.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_filename.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_group.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_mask.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_ncvar.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.get_varid.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.open.html create mode 100644 docs/1.9.0.1/method/cfdm.NetCDFArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.NumpyArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_count.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.source.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedContiguousArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_index.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.source.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__array__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compression_type.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_count.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_index.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_subspace.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.source.html create mode 100644 docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.to_memory.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Array.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.is_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Bounds.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.del_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.get_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.has_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.set_measure.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMeasure.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.del_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.del_method.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.del_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.get_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.get_method.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.get_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.has_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.has_method.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.has_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.qualifiers.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.set_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.set_method.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CellMethod.set_qualifier.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__call__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__contains__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__copy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__getitem__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__iter__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.__len__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.construct_type.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.construct_types.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.filter_by_type.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.get.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.items.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.key.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.keys.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.new_identifier.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.ordered.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.replace.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.shallow_copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.todict.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.value.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Constructs.values.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._del_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._get_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._has_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container._set_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Container.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.is_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Coordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.clear_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.has_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate_conversion.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinates.html create mode 100644 docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_datum.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.__repr__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.__str__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.del_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.del_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.del_units.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.get_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.get_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.get_units.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.has_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.has_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.has_units.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.set_calendar.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.set_fill_value.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.set_units.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Data.source.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Datum.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.is_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_climatology.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta.mro.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.del_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.del_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.fromconstructs.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.get_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.has_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.has_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.set_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.set_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Domain.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.del_size.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.get_size.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.has_size.html create mode 100644 docs/1.9.0.1/method/cfdm.core.DomainAxis.set_size.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.del_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.del_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.get_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.get_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.get_domain.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.has_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.has_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.set_construct.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.set_data_axes.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Field.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.InteriorRing.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.NumpyArray.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Parameters.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.Properties.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesData.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_package_depth.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_substitutions.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_geometry.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_interior_ring.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container._del_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container._get_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container._has_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container._set_component.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Container.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.clear_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.copy.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_property.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_bounds.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_data.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_properties.html create mode 100644 docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_property.html create mode 100644 docs/1.9.0.1/objects.inv create mode 100644 docs/1.9.0.1/performance.html create mode 100644 docs/1.9.0.1/philosophy.html create mode 100644 docs/1.9.0.1/releases.html create mode 100644 docs/1.9.0.1/sample_datasets.html create mode 100644 docs/1.9.0.1/search.html create mode 100644 docs/1.9.0.1/searchindex.js create mode 100644 docs/1.9.0.1/support.html create mode 100644 docs/1.9.0.1/tutorial.html diff --git a/docs/1.9.0.1/Changelog.html b/docs/1.9.0.1/Changelog.html new file mode 100644 index 0000000000..6685f700d2 --- /dev/null +++ b/docs/1.9.0.1/Changelog.html @@ -0,0 +1,609 @@ + + + + + + + Change log — Documentation + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Change log

+ +
+

Version 1.9.0.1

+

2021-10-12

+ +
+
+
+

Version 1.9.0.0

+

2021-09-21

+ +
+
+
+

Version 1.8.9.0

+

2021-05-25

+ +
+
+
+

Version 1.8.8.0

+

2020-12-18

+ +
+
+
+

Version 1.8.7.0

+

2020-10-09

+ +
+
+
+

Version 1.8.6.0

+

2020-07-24

+ +
+
+
+

Version 1.8.5

+

2020-06-10

+
    +
  • Fixed bug that prevented the reading of certain netCDF files, such +as those with at least one external variable.

  • +
+
+
+
+

Version 1.8.4

+

2020-06-08

+ +
+
+
+

Version 1.8.3

+

2020-04-30

+ +
+
+
+

Version 1.8.2

+

2020-04-24

+ +
+
+
+

Version 1.8.1

+

2020-04-16

+
    +
  • Improved source code highlighting in links from the documentation +(https://github.com/NCAS-CMS/cfdm/issues/21).

  • +
  • Fixed bug that erroneously required netCDF geometry container +variables to have a geometry_dimension netCDF attribute.

  • +
+
+
+
+

Version 1.8.0

+

2020-03-23

+ +
+
+
+

Version 1.7.11

+

2019-11-27

+ +
+
+
+

Version 1.7.10

+

2019-11-14

+ +
+
+
+

Version 1.7.9

+

2019-11-07

+ +
+
+
+

Version 1.7.8

+

2019-10-04

+
    +
  • During writing to netCDF files, ensured that _FillValue and +missing_value have the same data type as the data.

  • +
  • Fixed bug during construct equality testing that didn’t recognise +equal cell method constructs in transposed, but otherwise equal +field constructs.

  • +
  • Bounds netCDF dimension name is now saved, and can be set. The +saved/set value is written out to disk.

  • +
  • Now reads CDL files (https://github.com/NCAS-CMS/cfdm/issues/5)

  • +
+
+
+
+

Version 1.7.7

+

2019-06-13

+ +
+
+
+

Version 1.7.6

+

2019-06-05

+
    +
  • Added attributes _ATOL and _RTOL to facilitate subclassing.

  • +
  • Fixed bug in cfdm.Field.convert.

  • +
  • Fixed bug in cfdm.core.constructs.new_identifier.

  • +
+
+
+ +
+
+

Version 1.7.4

+

2019-05-14

+
    +
  • Changed behaviour of cfdm.Constructs.filter_by_axis.

  • +
  • New methods: cfdm.Data.has_units, cfdm.Data.has_calendar, +cfdm.Data.has_fill_value.

  • +
  • New constructs keyword parameter to Field.transpose.

  • +
  • Keyword parameter axes to cfdm.Field.set_data is now optional.

  • +
  • Added the ‘has_bounds’ method to constructs that have data but can’t +have bounds.

  • +
  • New methods: cfdm.DomainAxis.nc_is_unlimited, +cfdm.DomainAxis.nc_set_unlimited.

  • +
  • Made Data a virtual subclass of Array.

  • +
  • Deprecated methods: cfdm.Field.nc_unlimited, +cfdm.Field.nc_clear_unlimited, cfdm.Field.nc_clear_unlimited.

  • +
  • Fixed bug when writing new horizontal coordinate reference for the +vertical datum.

  • +
  • Fixed bug in del_data methods.

  • +
  • Fixed bug with in-place operations.

  • +
  • Fixed bug with position in some insert_dimension methods.

  • +
  • Fixed bug that sometimes made duplicate netCDF dimensions when +writing to a file.

  • +
  • Added _shape keyword to cfdm.Field.set_data_axes to allow the data +shape to be checked prior to insertion.

  • +
  • Added the ‘_custom’ attribute to facilitate subclassing.

  • +
  • New class cfdm.mixin.NetCDFUnlimitedDimension replaces +cfdm.mixin.NetCDFUnlimitedDimensions, which is deprecated.

  • +
  • New method cfdm.CFDMImplementation.nc_is_unlimited_axis replaces +cfdm.CFDMImplementation.nc_get_unlimited_axes, which is +deprecated.

  • +
  • New method cfdm.CFDMImplementation.nc_set_unlimited_axis replaces +cfdm.CFDMImplementation.nc_set_unlimited_dimensions, which is +deprecated.

  • +
+
+
+
+

Version 1.7.3

+

2019-04-24

+
    +
  • New method: cfdm.Constructs.filter_by_size.

  • +
  • New method: cfdm.Data.uncompress.

  • +
  • Changed the default behaviours of the +cfdm.Construct.filter_by_axis, cfdm.Construct.filter_by_size, +cfdm.Construct.filter_by_naxes, +cfdm.Construct.filter_by_property, +cfdm.Construct.filter_by_ncvar, cfdm.Construct.filter_by_ncdim, +cfdm.Construct.filter_by_method, +cfdm.Construct.filter_by_measure methods in the case when no +arguments are provided: Now returns all possible constructs that +could have the feature, with any values.

  • +
  • Renamed the “underlying_array” methods to “source”

  • +
  • Added _field_data_axes attribute to Constructs instances.

  • +
  • Added _units and _fill_value arguments to get_data method.

  • +
  • Moved contents of cfdm/read_write/constants.py to NetCDFRead and +NetCDFWrite.

  • +
  • Fixed bug in cfdm.CoordinateReference.clear_coordinates.

  • +
  • Fixed bug in cfdm.Field.convert (which omitted domain ancillaries +in the result).

  • +
  • Added kwargs parameter to +cfdm.CFDMImplementation.initialise_Data, to facilitate +subclassing.

  • +
  • Added NetCDFRead._customize_read_vars to facilitate subclassing.

  • +
  • Added NetCDFWrite._transform_strings to facilitate subclassing.

  • +
+
+
+
+

Version 1.7.2

+

2019-04-05

+ +
+
+
+

Version 1.7.1

+

2019-04-02

+ +
+
+
+

Version 1.7.0

+

2019-04-02

+
    +
  • First release for CF-1.7

  • +
+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/_downloads/cfdm_tutorial_files.zip b/docs/1.9.0.1/_downloads/cfdm_tutorial_files.zip new file mode 100644 index 0000000000000000000000000000000000000000..00b7751322d66506f8fe570cf8df481419c426bd GIT binary patch literal 6677 zcma)BbySpl*BwAaMFFJ+1}QGk}D2gVYS64Bed{ z_kF*+Uhn(eyYBZqXFbn)001p71NiM3_Kd?ag=l}roeE{GI zfE)k<+q+mf*@28kJK znz%1c2)mbxFtS#|>>j!n{FgFQ8zqw$mj+yp_txX|7NR;{w2p)JL}Z+b3|8Hj#ZNgW zCc@GNES(lMTD7GxHUydVYPvT*uexEDa_C`y{bo5I&wY)G4ir_ROk+5d=1D&yERh{G zFq3dtz&1@ip&LikpiFeu4F<5*uy1;WkMayg9?pLM><;Ii4Z}IW$#m|1N{>hXw1|C2 zXc_#&IgGB825U2AAKtVL@Bw?pU z*kM@FcKw`!*sc zge`6rs#;RZ#fq7^yoFAjvyQF~tM9kVDu62O03pGw8lA0d9K#|R1t@Q zL#63ygI|r_Q8w+tmalHQ&b4NS&x(}$c}40{TG#dJLRj+%Gzo9A~_E~q@? z69+ruYnyjn8^LOk;S%Hgqjt%Hesi$*Dz?zZ1b>OL=W! zHpLg8{7I|Cm1(Drh*9JLBWn+4Wr00CseUD+tc=9dC|k*#Fg*gsS%f!y7p7aq4Lo>_ zN>AHe@P=Rd!okf78-+^lug>~GETOfEaMG1)i54WDHI7$qyoZ?7!27@}p`_YT3ue6V zkk&-I##Xy0b;Bzsda#$^fd!IBGeDz}NZs_Le)n2Bmj=CkZ}ue0s2K>8N1f&I{YXkAjBoew}Nx2O~tYD5NlO844^-yqQybVm+ zJnc#q@nImlPUfVqbR-8Q_Z^!G6DW44k7BIKM4pPPGwXLwldbwdXE^gJMfY$l4pM0s zfgJQ-9Ld|H-;)l8pXZa%L)J+`ya(z&JwL`IV{skp+^Fu>QhCl-*#y3Q)2L6}UmrL* zKP6|1sEj#0p(^5kUiaJ=+b7B%?A(Uh?_wYx=V*E`94mbx*hpXbgHI0v7c%Z@p`w@d zEVN7Ev2NoG;*@3GNwb_eeRcimse5V`*Q>&FX>6k4E%9okOAoV9Y_PkqhV__fZH}y6 zERsrSLNiY`Z5z`f?jCW>5SU}V zV&{nbs`zGW(4Fx#!$EHsk=sJnciObYn{xgUSN^oAC2ODP6|{9o#;0}C9A~m%EHvv; zY6J8Q*&AHZH{G({v#N$nGiAleSjYb7%5gYQkr^4E*FlYV97VP-7uf3yO*4BP*qP-s zxhD-WmTjQLMXlyv=8+aFI`9(^??kVQy#-Q={L?4R3&v70!Qst!mh~cp$2i`>!zqJh zqVVCGxo20pKX7#~O?^`bK9CN;OSol~ibYm?IDvioTxyuT-ttacx{LkGKJ$v5hEt8D zSZM|UoqBKa%`?(@k5q6^t4pc0R5)>y>eCKSR70WWOP7RUrQ28)BT(cYDsd#cYae-mx~(%E7^cXXDT7e22sz$Hjh zhQ~w8O1k6l4cw^VoJ7Iy8r=eF+IQ<0=tdGGU3CSD8Hap@**6};_cWMgzg&iM_8raG z8a)YSnTzD8r;Enuuak1)^g~vb?h3iBdrbh3R3FQx_f2=Q=WrF%Z4R$X4Uce($Q$Xz zAJSRD?(L#m%}g9-EK5U*RPo6&Q)_UGt-PfmP6HRDr6v|%Mp36+q&r08Cn-;Ef_H8@ z%Zr+a1nhXMnGmiMOlPkK_OL`YNQ`1BzOWR+Wi$9;dIf{~W(n`UH4MHr$`*(vC@P`Z z_lyYsz;8E;Bf^&;DVUKVTab>uB3A@5y79jdKV0ah%Se(%xfhIKMyMAXDHSZ0Yd$x~ zkbn2v0;x0#4_QzHi#zjij=hijqSlhyu3Wr?3bMV?<6NpTJ6>3}H(NTXooI#dHf1w} z48m*QSzYZcQi3nLEK$EP!M%9}uEJS&e-<`j8Q-QkLwgw9h3#K%31w1b+W z*>_X7Ker-kL#-fB;vq<>x!SjSa4*zVaecagg16&9d(uwBkr~U7B?>qu_}hX)C;X&^ z&@aZwC|AU9W_@<@wnf3)RPyJ+Ng`hj8TffxT!q-~qKCSocP$odZclAS2~=BjieTTE z!9KB48M%7i;Z8By{LK*hdYO3P>$@7l8qo#FdJ&R^SiBbFBi2XUS*i_7L&nGBH-~2H z30cD)V>zM8&V|90E^FEf=esI63%xZvtxGzgFqs>w**InBa1L!xPJT~LFou5q?t@-2 zxr-CETl{>^VWCe*i9?D`q{QaRS5^BKlIztG>eM9eTb3K|xtt)&z4u%cf?aMQRo1YG}w<Wd*M{J3nE5Nm0jT9WX@)>!?j!Uvu&t4CyCOYaO(Z1%5%g)Y{@hHTD%__qV14N~^ zjIyUe>Blo9D%a>l-BDtJqQomDM!}Bb2_c8b%MFeZtfw&Hr^X}Lx;ldHfrgS!{oniu z$%kAdKM*frI^#n^J!S_ai1Q0w62&s-hCCjPla3L2v4KNy0IvHkXY}5u z(vDbSU%C=3wGN&0q!vGy`yA7!9_g+n+O05%cl?A^t(;gAC$zPN;sD;`^U5&Hk@1=i zS3~sU@Q-D(>;vXXK#7AGS}kDnt4xFQUYmcQ%?Mi;Ztnb8m#g2I(g{@69wee^7zim& zeK|y-+RstJxz`e?KLqJ`%aGl|NMu^>ukI)u8FFB5HeKNevlgAI^djFOOQAQ(_-WrJ z%#?riic0L`4!(c(70*DHe91K9vPO@oq1gvm`@q><9iBhJHN8^k45_*o67Sc43KDr+ z4q`X-zE=W?@tWwJx2vX7NY=s(>W$9PgwxIUJ)|+_?=8jK;mvj;Q>cF(BTm?*TW~d) z>&sDrh6-I4z@hUaM6o>vceRwB2`mGt2KXsT42ds=K7Bk5lJi5j&9j9o6P`X{n29>( zOkaLG8g@t%y)tL@prq;B@Nc*jDo+v{KJ%pn0P=wS!_9B`H$d7mOpZ9Wj2snbd+(*) zshS@~m@pJLdkc@^hh@swgshqUyj{gQW$M#3R@%<6+!zd3?=KImwGtkYv6*pasct>7 zpAuEn>p|ht>TNSlA=Ez#t|sZ7^p%&rD8a*RKAnK|tbz^lCq#N+(^YjLwQf^}W-D9i zWuO7qgwHINc7xOfC!W0ZK|Cj>6(E(xCPLe7y{W`1H+maBj&!E1S<3SBo7ub~m8_Gs zSNLp#UQHIut!&J?VgMJ^QHxe}bf%~?+T0mBhIks%b8Gu2hB(%PVexaz>}4MI^RG4v zb5WL=bt!AgEt}Sx#qekZ(BMe+dx*P{B?Na6{I&JFE)rT>+GVxy(#yGKB|~R3e_v(K z{=9QfhxeZiQ1>9liyZJQVu2d%)6^bR_33hZDT6geTi0@xyup+zs*Ig?VwF2_tDQ zC#!2M+S6ybg8REP*W+QVbmuIzMziPS`~9v*Z^P0R4h_egg^r2ifgSh=nH6yCRd4=o zs-~EXET@&oI<`~^oWgsZ1@Bei@n-K0^Vs3LR3ka36TE2Z4^r0-LNf+&MDFWZ zjrl6ew;?|Ub8qffS&H>i`No-8-H0h(BtB*Bcp3-Mm)R_e7hVTLL6}Qf@=jA~SvRj= z9tIt(!hcyE?qmrG;`kR|?{+og|J~IrOl2`;SCpCPGe)mRo{xSA|r$A=?(ow*;+TBN_Af8tjZv9U6=c*7y7&rerb zrIW+Y#U`ND{;jP|d|GuHkGAK2C%QNtkKB!Mu&Jb*BVf`p@nfNJbqpUJPb&jYEx#xm z{1Yt(HBOZR8pA>mfpVnkaq!miy%LpB-Hh=`D%O5@`c-1w~nkYS2qB z1**phouUZBsVdPO{m@i5f`UY(+uCs@DIeJQkL2Ls3EpD_y7;4!@_!Py!e_9fQvNb4(ZpPa(W->b?Z(WF6g}K@lr2qoyDp{P&7x+32_zH z>_HV~Y`BtZSpl zy_(xhCrxi7xNd!5Ahud<>-Wn=DS-d*pj0VVbxJAi!^=Ak;63{H&TeTAwljBe^8AAb z)MUwjB~A^#9kj>iz*A0DIvmeu(Tc;n>$rwGc^Vvt0L>^yDk?%K@R8)Ko-RF)*>=Ko z@rRO7p!Z@MlwQ0Az}6o3dYy*7x{j}Tj=9Vq<1O>tO3FEmG^TZCb2mw$i6=)pM<^VV z;PskoH;v30U|NA;rK87_3`G^!x5n~XKKfP6b+#e47v@D@=3>!Drk5UOr-`R0^=@@p z-AznV@)OcyUv=fSA^7`9)!yH1)k~g8O-dKtG`8&NN>6cWemNw#DaKHg7iaOS|s(;@MF%W>TF%~EDXsWi@fT7 zqiEL|xttuCu!Js(%p26~?`ypJDNyGl_<@;%)BPHSD{_ux-L#mYi$$P0CGDoo}{)Sjx+ zSt7(8WJrpt%*YOksSI=T2A)jaSm%%o%L<0PG!2M>!a6RZQD&PKEcwIyY7?0%<{RBJ zR#CKvt^UDOD>T*G$4l$%$6r41Op?DqmG`bZhiMrSxfF{dEcDxz2*=`|4`iOAH|BY- zct|LoY}rO2HAarH9r{-z$1gmHR?xSouMhR@w>+0_GF*VpJXIz(6a7T}deRv8c_{%4 z`WX$%ea){!kzTWqpmr`cnvEyz(A@bCk;h&Kn|W-E4Z-I@owf8Kh73zuN9Yd*EQ9GU zijzxT!n0yQ4EW{i^+4C~4G7mqmo~}52arJFXUS$2FE0+U3H{PUqvwrF$ts8^CwzT+ z3^a6hQqnF7=5>l(y^U;#uy;sS(bVV89)q~h6GYWIH(4X$2U!l+x~YC*vGH6BDX!is zHPwg}^}=J`>H~zEy@A>3SfnqP=0g~f#xk@cV_~qiducwklR`?l>hKtjoq>M^ z*5X)rGgwJ?41s7dwl;8{5LMWBACvET3+QXd_}ScI|EJY{SAx-0HJV56My@|50Pyfm zt#L4MGPig6qtX6m;1+yXu*R1l38^njn0m<|lOHChDJ`uRNnWO{{ z6x*R)Y7fX#jHgyLQ6tRZRI9|d+H%#T2;h6Z*C`6aNLsGSq}5JCU|rwf$)xMh;lg8I z;Nxqtm5!maW>SkU<4x=jvrx-muvjnsdb-S`GC~h*L4<>~accxZ2AjnNMSH+?bx*7V*8vL_y1U5hgNL7I{vVm~S3v!Hfd7b&cVNGZj{lI|pD!N2f+gVr0DroM{Bw5y_XPVDFzeYJ;IHS| p9pLZh**|3X=RW-v@DUN<*RK7${4npV9suC}-Mf6(?iBw*_#YTwW1av2 literal 0 HcmV?d00001 diff --git a/docs/1.9.0.1/_downloads/tutorial.py b/docs/1.9.0.1/_downloads/tutorial.py new file mode 100644 index 0000000000..c445f1c55e --- /dev/null +++ b/docs/1.9.0.1/_downloads/tutorial.py @@ -0,0 +1,803 @@ +import cfdm +cfdm.log_level('INFO') +cfdm.CF() +x = cfdm.read('file.nc') +print(type(x)) +len(x) +x +q = x[0] +t = x[1] +q +print(q) +print(t) +q.dump() +t.dump() +t.properties() +t.has_property('standard_name') +t.get_property('standard_name') +t.del_property('standard_name') +t.get_property('standard_name', default='not set') +t.set_property('standard_name', value='air_temperature') +t.get_property('standard_name', default='not set') +original = t.properties() +original +t.set_properties({'foo': 'bar', 'units': 'K'}) +t.properties() +t.clear_properties() +t.properties() +t.set_properties(original) +t.properties() +t.coordinate_references() +print(t.coordinate_references()) +list(t.coordinate_references().keys()) +for key, value in t.coordinate_references().items(): + print(key, repr(value)) +print(t.dimension_coordinates()) +print(t.domain_axes()) +q.constructs +print(q.constructs) +t.constructs +print(t.constructs) +t.data +print(t.data.array) +t.dtype +t.ndim +t.shape +t.size +t.data.size +print(t.domain_axes()) +t +t.shape +t.get_data_axes() +data = t.del_data() +t.has_data() +t.set_data(data, axes=None) +t.data +d = cfdm.Data([1, 2, 3], units='days since 2004-2-28') +print(d.array) +print(d.datetime_array) +e = cfdm.Data([1, 2, 3], units='days since 2004-2-28', + calendar='360_day') +print(e.array) +print(e.datetime_array) +q, t = cfdm.read('file.nc') +t +t2 = t.squeeze() +t2 +print(t2.dimension_coordinates()) +t3 = t2.insert_dimension(axis='domainaxis3', position=1) +t3 +t3.transpose([2, 0, 1]) +t4 = t.transpose([0, 2, 1], constructs=True) +print(q) +print(q.data.mask) +print(q.data.mask.array) +q.data[[0, 4], :] = cfdm.masked +print(q.data.mask.array) +q.data.mask.any() +cfdm.write(q, 'masked_q.nc') +no_mask_q = cfdm.read('masked_q.nc', mask=False)[0] +print(no_mask_q.data.array) +masked_q = no_mask_q.apply_masking() +print(masked_q.data.array) +data = t.data +data.shape +data[:, :, 1].shape +data[:, 0].shape +data[..., 6:3:-1, 3:6].shape +data[0, [2, 9], [4, 8]].shape +data[0, :, -2].shape +import numpy +t.data[:, 0, 0] = -1 +t.data[:, :, 1] = -2 +t.data[..., 6:3:-1, 3:6] = -3 +print(t.data.array) +t.data[..., 6:3:-1, 3:6] = numpy.arange(9).reshape(3, 3) +t.data[0, [2, 9], [4, 8]] = cfdm.Data([[-4, -5]]) +print(t.data.array) +t.data[0, :, -2] = cfdm.masked +t.data[0, 5, -2] = -6 +print(t.data.array) +print(q) +new = q[::-1, 0] +print(new) +print(t.constructs.filter_by_type('dimension_coordinate')) +print(t.constructs.filter_by_type('cell_method', 'field_ancillary')) +print(t.constructs.filter_by_property( + standard_name='air_temperature standard_error')) +print(t.constructs.filter_by_property( + standard_name='air_temperature standard_error', + units='K')) +print(t.constructs.filter_by_property( + 'or', + standard_name='air_temperature standard_error', + units='m')) +print(t.constructs.filter_by_axis('grid_latitude', 'grid_longitude', + axis_mode='or')) +print(t.constructs.filter_by_measure('area')) +print(t.constructs.filter_by_method('maximum')) +print( + t.constructs.filter_by_type('auxiliary_coordinate').filter_by_axis('domainaxis2') +) +c = t.constructs.filter_by_type('dimension_coordinate') +d = c.filter_by_property(units='degrees') +print(d) +c = t.constructs.filter(filter_by_type=('dimension_coordinate',), + filter_by_property={'units': 'degrees'}) +print(c) +d = t.constructs.filter(filter_by_type=('dimension_coordinate',), + filter_by_property={'units': 'degrees'}, + todict=True) +type(d) +print(d) +c = t.constructs.filter(filter_by_type=('dimension_coordinate',), + filter_by_property={'units': 'degrees'}) +print(c) +print(t) +print(t.constructs.filter_by_identity('latitude')) +print(t.constructs.filter_by_identity('long_name=Grid latitude name')) +print(t.constructs.filter_by_identity('measure:area')) +print(t.constructs.filter_by_identity('ncvar%b')) +print(t.constructs.filter_by_identity('latitude')) +print(t.constructs('latitude')) +print(t.constructs.filter_by_key('domainancillary2')) +print(t.constructs.filter_by_key('cellmethod1')) +print(t.constructs.filter_by_key('auxiliarycoordinate2', 'cellmeasure0')) +c = t.constructs('radiation_wavelength') +c +print(c) +len(c) +c = t.constructs.filter_by_type('auxiliary_coordinate') +c +c.inverse_filter() +print(t.constructs.filter_by_type('cell_measure')) +print(t.cell_measures()) +t.construct('latitude') +key = t.construct_key('latitude') +t.construct(key) +key, lat = t.construct_item('latitude') +key = t.construct_key('latitude') +t.constructs[key] +key = t.construct_key('latitude') +c = t.constructs.get(key) +try: + t.construct('measure:volume') # Raises Exception +except: + pass +t.construct('measure:volume', default=False) +try: + t.construct('measure:volume', default=Exception("my error")) # Raises Exception +except: + pass +c = t.constructs.filter_by_measure("volume") +len(c) +d = t.constructs("units=degrees") +len(d) +try: + t.construct("units=degrees") # Raises Exception +except: + pass +print(t.construct("units=degrees", default=None)) +lon = q.construct('longitude') +lon +lon.set_property('long_name', 'Longitude') +lon.properties() +area = t.constructs.filter_by_property(units='km2').value() +area +area.identity() +area.identities() +lon = q.constructs('longitude').value() +lon +lon.data +lon.data[2] +lon.data[2] = 133.33 +print(lon.data.array) +key = t.construct_key('latitude') +key +t.get_data_axes(key=key) +t.constructs.data_axes() +time = q.construct('time') +time +time.get_property('units') +time.get_property('calendar', default='standard') +print(time.data.array) +print(time.data.datetime_array) +domain = t.domain +domain +print(domain) +description = domain.dump(display=False) +domain_latitude = t.domain.constructs('latitude').value() +field_latitude = t.constructs('latitude').value() +domain_latitude.set_property('test', 'set by domain') +print(field_latitude.get_property('test')) +field_latitude.set_property('test', 'set by field') +print(domain_latitude.get_property('test')) +domain_latitude.del_property('test') +field_latitude.has_property('test') +print(q.domain_axes()) +d = q.domain_axes().get('domainaxis1') +d +d.get_size() +print(t.coordinates()) +lon = t.constructs('grid_longitude').value() +bounds = lon.bounds +bounds +bounds.data +print(bounds.data.array) +bounds.inherited_properties() +bounds.properties() +f = cfdm.read('geometry.nc')[0] +print(f) +lon = f.construct('longitude') +lon.dump() +lon.get_geometry() +print(lon.bounds.data.array) +print(lon.get_interior_ring().data.array) +a = t.constructs.get('domainancillary0') +print(a.data.array) +bounds = a.bounds +bounds +print(bounds.data.array) +crs = t.constructs('standard_name:atmosphere_hybrid_height_coordinate').value() +crs +crs.dump() +crs.coordinates() +crs.datum +crs.datum.parameters() +crs.coordinate_conversion +crs.coordinate_conversion.parameters() +crs.coordinate_conversion.domain_ancillaries() +print(t.cell_methods()) +cm = t.constructs('method:mean').value() +cm +cm.get_axes() +cm.get_method() +cm.qualifiers() +cm.get_qualifier('where') +a = t.get_construct('fieldancillary0') +a +a.properties() +a.data +p = cfdm.Field(properties={'standard_name': 'precipitation_flux'}) +p +dc = cfdm.DimensionCoordinate(properties={'long_name': 'Longitude'}, + data=cfdm.Data([0, 1, 2.])) +dc +fa = cfdm.FieldAncillary( + properties={'standard_name': 'precipitation_flux status_flag'}, + data=cfdm.Data(numpy.array([0, 0, 2], dtype='int8'))) +fa +p = cfdm.Field() +p +p.set_property('standard_name', 'precipitation_flux') +p +dc = cfdm.DimensionCoordinate() +dc +dc.set_property('long_name', 'Longitude') +dc.set_data(cfdm.Data([1, 2, 3.])) +dc +fa = cfdm.FieldAncillary( + data=cfdm.Data(numpy.array([0, 0, 2], dtype='int8'))) +fa +fa.set_property('standard_name', 'precipitation_flux status_flag') +fa +longitude_axis = p.set_construct(cfdm.DomainAxis(3)) +longitude_axis +key = p.set_construct(dc, axes=longitude_axis) +key +cm = cfdm.CellMethod(axes=longitude_axis, method='minimum') +p.set_construct(cm) +# Start of code block + +import numpy +import cfdm + +# Initialise the field construct with properties +Q = cfdm.Field( +properties={'project': 'research', +'standard_name': 'specific_humidity', +'units': '1'}) + +# Create the domain axis constructs +domain_axisT = cfdm.DomainAxis(1) +domain_axisY = cfdm.DomainAxis(5) +domain_axisX = cfdm.DomainAxis(8) + +# Insert the domain axis constructs into the field. The +# set_construct method returns the domain axis construct key that +# will be used later to specify which domain axis corresponds to +# which dimension coordinate construct. +axisT = Q.set_construct(domain_axisT) +axisY = Q.set_construct(domain_axisY) +axisX = Q.set_construct(domain_axisX) + +# Create and insert the field construct data +data = cfdm.Data(numpy.arange(40.).reshape(5, 8)) +Q.set_data(data, axes=[axisY, axisX]) + +# Create the cell method constructs +cell_method1 = cfdm.CellMethod(axes='area', method='mean') + +cell_method2 = cfdm.CellMethod() +cell_method2.set_axes(axisT) +cell_method2.set_method('maximum') + +# Insert the cell method constructs into the field in the same +# order that their methods were applied to the data +Q.set_construct(cell_method1) +Q.set_construct(cell_method2) + +# Create a "time" dimension coordinate construct, with coordinate +# bounds +dimT = cfdm.DimensionCoordinate( +properties={'standard_name': 'time', +'units': 'days since 2018-12-01'}, +data=cfdm.Data([15.5]), +bounds=cfdm.Bounds(data=cfdm.Data([[0,31.]]))) + +# Create a "longitude" dimension coordinate construct, without +# coordinate bounds +dimX = cfdm.DimensionCoordinate(data=cfdm.Data(numpy.arange(8.))) +dimX.set_properties({'standard_name': 'longitude', +'units': 'degrees_east'}) + +# Create a "longitude" dimension coordinate construct +dimY = cfdm.DimensionCoordinate(properties={'standard_name': 'latitude', +'units': 'degrees_north'}) +array = numpy.arange(5.) +dimY.set_data(cfdm.Data(array)) + +# Create and insert the latitude coordinate bounds +bounds_array = numpy.empty((5, 2)) +bounds_array[:, 0] = array - 0.5 +bounds_array[:, 1] = array + 0.5 +bounds = cfdm.Bounds(data=cfdm.Data(bounds_array)) +dimY.set_bounds(bounds) + +# Insert the dimension coordinate constructs into the field, +# specifying to # which domain axis each one corresponds +Q.set_construct(dimT, axes=axisT) +Q.set_construct(dimY, axes=axisY) +Q.set_construct(dimX, axes=axisX) + +# End of code block +Q.dump() +# Start of code block + +import numpy +import cfdm + +# Initialize the field construct +tas = cfdm.Field( +properties={'project': 'research', +'standard_name': 'air_temperature', +'units': 'K'}) + +# Create and set domain axis constructs +axis_T = tas.set_construct(cfdm.DomainAxis(1)) +axis_Z = tas.set_construct(cfdm.DomainAxis(1)) +axis_Y = tas.set_construct(cfdm.DomainAxis(10)) +axis_X = tas.set_construct(cfdm.DomainAxis(9)) + +# Set the field construct data +tas.set_data(cfdm.Data(numpy.arange(90.).reshape(10, 9)), +axes=[axis_Y, axis_X]) + +# Create and set the cell method constructs +cell_method1 = cfdm.CellMethod( +axes=[axis_Y, axis_X], +method='mean', +qualifiers={'where': 'land', +'interval': [cfdm.Data(0.1, units='degrees')]}) + +cell_method2 = cfdm.CellMethod(axes=axis_T, method='maximum') + +tas.set_construct(cell_method1) +tas.set_construct(cell_method2) + +# Create and set the field ancillary constructs +field_ancillary = cfdm.FieldAncillary( +properties={'standard_name': 'air_temperature standard_error', +'units': 'K'}, +data=cfdm.Data(numpy.arange(90.).reshape(10, 9))) + +tas.set_construct(field_ancillary, axes=[axis_Y, axis_X]) + +# Create and set the dimension coordinate constructs +dimension_coordinate_T = cfdm.DimensionCoordinate( +properties={'standard_name': 'time', +'units': 'days since 2018-12-01'}, +data=cfdm.Data([15.5]), +bounds=cfdm.Bounds(data=cfdm.Data([[0., 31]]))) + +dimension_coordinate_Z = cfdm.DimensionCoordinate( +properties={'computed_standard_name': 'altitude', +'standard_name': 'atmosphere_hybrid_height_coordinate'}, +data = cfdm.Data([1.5]), +bounds=cfdm.Bounds(data=cfdm.Data([[1.0, 2.0]]))) + +dimension_coordinate_Y = cfdm.DimensionCoordinate( +properties={'standard_name': 'grid_latitude', +'units': 'degrees'}, +data=cfdm.Data(numpy.arange(10.)), +bounds=cfdm.Bounds(data=cfdm.Data(numpy.arange(20).reshape(10, 2)))) + +dimension_coordinate_X = cfdm.DimensionCoordinate( +properties={'standard_name': 'grid_longitude', +'units': 'degrees'}, +data=cfdm.Data(numpy.arange(9.)), +bounds=cfdm.Bounds(data=cfdm.Data(numpy.arange(18).reshape(9, 2)))) + +dim_T = tas.set_construct(dimension_coordinate_T, axes=axis_T) +dim_Z = tas.set_construct(dimension_coordinate_Z, axes=axis_Z) +dim_Y = tas.set_construct(dimension_coordinate_Y, axes=axis_Y) +dim_X = tas.set_construct(dimension_coordinate_X, axes=axis_X) + +# Create and set the auxiliary coordinate constructs +auxiliary_coordinate_lat = cfdm.AuxiliaryCoordinate( +properties={'standard_name': 'latitude', +'units': 'degrees_north'}, +data=cfdm.Data(numpy.arange(90.).reshape(10, 9))) + +auxiliary_coordinate_lon = cfdm.AuxiliaryCoordinate( +properties={'standard_name': 'longitude', +'units': 'degrees_east'}, +data=cfdm.Data(numpy.arange(90.).reshape(9, 10))) + +array = numpy.ma.array(list('abcdefghij')) +array[0] = numpy.ma.masked +auxiliary_coordinate_name = cfdm.AuxiliaryCoordinate( +properties={'long_name': 'Grid latitude name'}, +data=cfdm.Data(array)) + +aux_LAT = tas.set_construct(auxiliary_coordinate_lat, axes=[axis_Y, axis_X]) +aux_LON = tas.set_construct(auxiliary_coordinate_lon, axes=[axis_X, axis_Y]) +aux_NAME = tas.set_construct(auxiliary_coordinate_name, axes=[axis_Y]) + +# Create and set domain ancillary constructs +domain_ancillary_a = cfdm.DomainAncillary( +properties={'units': 'm'}, +data=cfdm.Data([10.]), +bounds=cfdm.Bounds(data=cfdm.Data([[5., 15.]]))) + +domain_ancillary_b = cfdm.DomainAncillary( +properties={'units': '1'}, +data=cfdm.Data([20.]), +bounds=cfdm.Bounds(data=cfdm.Data([[14, 26.]]))) + +domain_ancillary_orog = cfdm.DomainAncillary( +properties={'standard_name': 'surface_altitude', +'units': 'm'}, +data=cfdm.Data(numpy.arange(90.).reshape(10, 9))) + +domain_anc_A = tas.set_construct(domain_ancillary_a, axes=axis_Z) +domain_anc_B = tas.set_construct(domain_ancillary_b, axes=axis_Z) +domain_anc_OROG = tas.set_construct(domain_ancillary_orog, +axes=[axis_Y, axis_X]) + +# Create the datum for the coordinate reference constructs +datum = cfdm.Datum(parameters={'earth_radius': 6371007.}) + +# Create the coordinate conversion for the horizontal coordinate +# reference construct +coordinate_conversion_h = cfdm.CoordinateConversion( +parameters={'grid_mapping_name': 'rotated_latitude_longitude', +'grid_north_pole_latitude': 38.0, +'grid_north_pole_longitude': 190.0}) + +# Create the coordinate conversion for the vertical coordinate +# reference construct +coordinate_conversion_v = cfdm.CoordinateConversion( +parameters={'standard_name': 'atmosphere_hybrid_height_coordinate', +'computed_standard_name': 'altitude'}, +domain_ancillaries={'a': domain_anc_A, +'b': domain_anc_B, +'orog': domain_anc_OROG}) + +# Create the vertical coordinate reference construct +horizontal_crs = cfdm.CoordinateReference( +datum=datum, +coordinate_conversion=coordinate_conversion_h, +coordinates=[dim_X, +dim_Y, +aux_LAT, +aux_LON]) + +# Create the vertical coordinate reference construct +vertical_crs = cfdm.CoordinateReference( +datum=datum, +coordinate_conversion=coordinate_conversion_v, +coordinates=[dim_Z]) + +# Set the coordinate reference constructs +tas.set_construct(horizontal_crs) +tas.set_construct(vertical_crs) + +# Create and set the cell measure constructs +cell_measure = cfdm.CellMeasure(measure='area', +properties={'units': 'km2'}, +data=cfdm.Data(numpy.arange(90.).reshape(9, 10))) + +tas.set_construct(cell_measure, axes=[axis_X, axis_Y]) + +# End of code block +print(tas) +q, t = cfdm.read('file.nc') +print(q.creation_commands()) +import netCDF4 +nc = netCDF4.Dataset('file.nc', 'r') +v = nc.variables['ta'] +netcdf_array = cfdm.NetCDFArray(filename='file.nc', ncvar='ta', + dtype=v.dtype, ndim=v.ndim, + shape=v.shape, size=v.size) +data_disk = cfdm.Data(netcdf_array) +numpy_array = v[...] +data_memory = cfdm.Data(numpy_array) +data_disk.equals(data_memory) +key = tas.construct_key('surface_altitude') +orog = tas.convert(key) +print(orog) +orog1 = tas.convert(key, full_domain=False) +print(orog1) +cfdm.write(tas, 'tas.nc') +f = cfdm.read('tas.nc') +f +fields = cfdm.read('tas.nc', extra='domain_ancillary') +fields +orog_from_file = fields[3] +print(orog_from_file) +u = t.copy() +u.data[0, 0, 0] = -1e30 +u.data[0, 0, 0] +t.data[0, 0, 0] +u.del_construct('grid_latitude') +u.constructs('grid_latitude') +t.constructs('grid_latitude') +import copy +u = copy.deepcopy(t) +orog = t.constructs('surface_altitude').value().copy() +t.equals(t) +t.equals(t.copy()) +t.equals(t[...]) +t.equals(q) +t.equals(q, verbose=True) +print(cfdm.atol()) +print(cfdm.rtol()) +original = cfdm.rtol(0.00001) +print(cfdm.rtol()) +print(cfdm.rtol(original)) +print(cfdm.rtol()) +print(cfdm.atol()) +with cfdm.atol(1e-5): + print(cfdm.atol()) +print(cfdm.atol()) +orog = t.constructs('surface_altitude').value() +orog.equals(orog.copy()) +print(t.constructs.filter_by_ncvar('b')) +t.constructs('ncvar%x').value() +t.constructs('ncdim%x') +q.nc_get_variable() +q.nc_global_attributes() +q.nc_set_variable('humidity') +q.nc_get_variable() +q.constructs('latitude').value().nc_get_variable() +print(q) +cfdm.write(q, 'q_file.nc') +x +cfdm.write(x, 'new_file.nc') +g = cfdm.example_field(2) +cfdm.write(g, 'append-example-file.nc') +cfdm.read('append-example-file.nc') +h = cfdm.example_field(0) +h +cfdm.write(h, 'append-example-file.nc', mode='a') +cfdm.read('append-example-file.nc') +f = cfdm.read('q_file.nc')[0] +q.equals(f) +f.set_property('model', 'model_A') +cfdm.write(f, 'f_file.nc', global_attributes='model') +f.nc_global_attributes() +f.nc_set_global_attribute('model') +f.nc_global_attributes() +f.nc_global_attributes(values=True) +cfdm.write(f, 'f_file.nc') +f.set_property('information', 'variable information') +f.properties() +f.nc_set_global_attribute('information', 'global information') +f.nc_global_attributes() +cfdm.write(f, 'f_file.nc') +cfdm.write(f, 'f_file.nc', file_descriptors={'history': 'created in 2021'}) +f_file = cfdm.read('f_file.nc')[0] +f_file.properties() +f_file.nc_global_attributes() +f_file.set_property('Conventions', 'UGRID1.0') +cfdm.write(f, 'f_file.nc', Conventions='UGRID1.0') +print(q) +key = q.construct_key('time') +axes = q.get_data_axes(key) +axes +q2 = q.insert_dimension(axis=axes[0]) +q2 +cfdm.write(q2, 'q2_file.nc') +q, t = cfdm.read('file.nc') +print(q) +q.set_property('comment', 'comment') +q.nc_set_group_attribute('comment', 'group comment') +q.nc_set_variable_groups(['forecast', 'model']) +q.construct('time').nc_set_variable_groups(['forecast']) +cfdm.write(q, 'grouped.nc') +g = cfdm.read('grouped.nc')[0] +print(g) +g.nc_get_variable() +g.nc_variable_groups() +g.nc_group_attributes(values=True) +g.construct('latitude').nc_get_variable() +cfdm.write(g, 'flat.nc', group=False) +f = cfdm.read('flat.nc')[0] +f.equals(g) +u = cfdm.read('parent.nc')[0] +print(u) +area = u.constructs('measure:area').value() +area +area.nc_get_external() +area.nc_get_variable() +area.properties() +area.has_data() +g = cfdm.read('parent.nc', external='external.nc')[0] +print(g) +area = g.constructs('measure:area').value() +area +area.nc_get_external() +area.nc_get_variable() +area.properties() +area.data +area.nc_set_external(True) +cfdm.write(g, 'new_parent.nc') +cfdm.write(g, 'new_parent.nc', external='new_external.nc') +h = cfdm.read('contiguous.nc')[0] +print(h) +print(h.data.array) +h.data.get_compression_type() +print(h.data.compressed_array) +count_variable = h.data.get_count() +count_variable +print(count_variable.data.array) +station2 = h[1] +station2 +print(station2.data.array) +h.data.get_compression_type() +h.data[1, 2] = -9 +print(h.data.array) +h.data.get_compression_type() +# Start of code block + +import numpy +import cfdm + +# Define the array values +data = cfdm.Data([[280.0,-99, -99, -99], +[281.0, 279.0, 278.0, 279.5]], +mask=[[0, 1, 1, 1], +[0, 0, 0, 0]]) + +# Create the field construct +T = cfdm.Field() +T.set_properties({'standard_name': 'air_temperature', +'units': 'K', +'featureType': 'timeSeries'}) + +# Create the domain axis constructs +X = T.set_construct(cfdm.DomainAxis(4)) +Y = T.set_construct(cfdm.DomainAxis(2)) + +# Set the data for the field +T.set_data(data, axes=[Y, X]) + +# Compress the data +T.compress('contiguous', +count_properties={'long_name': 'number of obs for this timeseries'}, +inplace=True) + +# End of code block +T +print(T.data.array) +T.data.get_compression_type() +print(T.data.compressed_array) +count_variable = T.data.get_count() +count_variable +print(count_variable.data.array) +cfdm.write(T, 'T_contiguous.nc') +# Start of code block + +import numpy +import cfdm + +# Define the ragged array values +ragged_array = cfdm.Data([280, 281, 279, 278, 279.5]) + +# Define the count array values +count_array = [1, 4] + +# Create the count variable +count_variable = cfdm.Count(data=cfdm.Data(count_array)) +count_variable.set_property('long_name', 'number of obs for this timeseries') + +# Create the contiguous ragged array object, specifying the +# uncompressed shape +array = cfdm.RaggedContiguousArray( +compressed_array=ragged_array, +shape=(2, 4), size=8, ndim=2, +count_variable=count_variable) + +# Create the field construct with the domain axes and the ragged +# array +T = cfdm.Field() +T.set_properties({'standard_name': 'air_temperature', +'units': 'K', +'featureType': 'timeSeries'}) + +# Create the domain axis constructs for the uncompressed array +X = T.set_construct(cfdm.DomainAxis(4)) +Y = T.set_construct(cfdm.DomainAxis(2)) + +# Set the data for the field +T.set_data(cfdm.Data(array), axes=[Y, X]) + +# End of code block +p = cfdm.read('gathered.nc')[0] +print(p) +print(p.data.array) +p.data.get_compression_type() +print(p.data.compressed_array) +list_variable = p.data.get_list() +list_variable +print(list_variable.data.array) +p[0] +p[1, :, 3:5] +p.data.get_compression_type() +p.data[1] = -9 +p.data.get_compression_type() +# Start of code block + +import numpy +import cfdm + +# Define the gathered values +gathered_array = cfdm.Data([[2, 1, 3], [4, 0, 5]]) + +# Define the list array values +list_array = [1, 4, 5] + +# Create the list variable +list_variable = cfdm.List(data=cfdm.Data(list_array)) + +# Create the gathered array object, specifying the uncompressed +# shape +array = cfdm.GatheredArray( +compressed_array=gathered_array, +compressed_dimension=1, +shape=(2, 3, 2), size=12, ndim=3, +list_variable=list_variable) + +# Create the field construct with the domain axes and the gathered +# array +P = cfdm.Field(properties={'standard_name': 'precipitation_flux', +'units': 'kg m-2 s-1'}) + +# Create the domain axis constructs for the uncompressed array +T = P.set_construct(cfdm.DomainAxis(2)) +Y = P.set_construct(cfdm.DomainAxis(3)) +X = P.set_construct(cfdm.DomainAxis(2)) + +# Set the data for the field +P.set_data(cfdm.Data(array), axes=[T, Y, X]) + +# End of code block +P +print(P.data.array) +P.data.get_compression_type() +print(P.data.compressed_array) +list_variable = P.data.get_list() +list_variable +print(list_variable.data.array) +cfdm.write(P, 'P_gathered.nc') diff --git a/docs/1.9.0.1/_images/cfdm_field.svg b/docs/1.9.0.1/_images/cfdm_field.svg new file mode 100644 index 0000000000..f4d430f88b --- /dev/null +++ b/docs/1.9.0.1/_images/cfdm_field.svg @@ -0,0 +1,317 @@ + + + + + + +%3 + + + +DomainVariable + +CN::Domain +Variable + + + +route9 + + + + +DomainVariable->route9 + + + + + +DataVariable + +CN::Data +Variable + + + +Field + +<<construct>> +Field + + + +DataVariable->Field + + + + + +Domain + +<<construct>> +Domain + + + +DomainAxis + +<<construct>> +DomainAxis + + + +Domain->DomainAxis + + + +0..*   + + + +DomainAncillary + +<<construct>> +DomainAncillary + + + +Domain->DomainAncillary + + + +0..*   + + + +GenericCoordinate + +<<abstract>> +Generic +Coordinate +Construct + + + +Domain->GenericCoordinate + + + +0..*    + + + +route7 + + + + +Domain->route7 + + + + + +route2 + + + + +Field->route2 + + + + + +route8 + + + + +Field->route8 + + + + + +CellMethod + +<<construct>> +CellMethod + + + +CellMethod->DomainAxis + + + +1..*   + + + +CellMeasure + +<<construct>> +CellMeasure + + + + +AuxiliaryCoordinate + +<<construct>> +AuxillaryCoordinate + + + + +CoordinateReference + +<<construct>> +CoordinateReference + + + +DomainAncillary->CoordinateReference + + +0..*       + + + + +DimensionCoordinate + +<<construct>> +DimensionCoordinate + + + + +FieldAncillary + +<<construct>> +FieldAncillary + + + +FieldAncillary->Domain + + +uses       +parent         + + + +route3 + + + + +GenericCoordinate->route3 + + +0..*       + + + +route4 + + + + +GenericCoordinate->route4 + + + + + +route1 + + + + +route1->Field + + + + + +route1->FieldAncillary + + +0..*   + + + +route2->CellMethod + + +0..*    + + + +route3->CoordinateReference + + + + +route4->AuxiliaryCoordinate + + + + +route5 + + + + +route4->route5 + + + + +route5->DimensionCoordinate + + + + +route6 + + + + +route6->Domain + + + + + +route6->CoordinateReference + + +0..*   + + + +route7->CellMeasure + + +0..*   + + + +route8->Domain + + +0..1   + + + +route9->Domain + + + + diff --git a/docs/1.9.0.1/_static/alabaster.css b/docs/1.9.0.1/_static/alabaster.css new file mode 100644 index 0000000000..46d1d3098b --- /dev/null +++ b/docs/1.9.0.1/_static/alabaster.css @@ -0,0 +1,703 @@ +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: Arial; + font-size: 13pt; + background-color: #fff; + color: #000; + margin: 0; + padding: 0; +} + + +div.document { + width: 85%; + margin: 30px auto 0 auto; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 220px; +} + +div.sphinxsidebar { + width: 220px; + font-size: 14px; + line-height: 1.5; +} + +hr { + border: 1px solid #B1B4B6; +} + +div.body { + background-color: #fff; + color: #3E4349; + padding: 0 30px 0 30px; +} + +div.body > .section { + text-align: left; +} + +div.footer { + width: 85%; + margin: 20px auto 30px auto; + font-size: 14px; + color: #888; + text-align: right; +} + +div.footer a { + color: #888; +} + +p.caption { + font-family: inherit; + font-size: inherit; +} + + + +div.sphinxsidebar a { + color: #444; + text-decoration: none; + border-bottom: 1px dotted #999; +} + +div.sphinxsidebar a:hover { + border-bottom: 1px solid #999; +} + +div.sphinxsidebarwrapper { + padding: 18px 10px; +} + +div.sphinxsidebarwrapper p.logo { + padding: 0; + margin: -10px 0 0 0px; + text-align: center; +} + +div.sphinxsidebarwrapper h1.logo { + margin-top: -10px; + text-align: center; + margin-bottom: 5px; + text-align: left; +} + +div.sphinxsidebarwrapper h1.logo-name { + margin-top: 0px; +} + +div.sphinxsidebarwrapper p.blurb { + margin-top: 0; + font-style: normal; +} + +div.sphinxsidebar h3, +div.sphinxsidebar h4 { + font-family: Arial; + color: #444; + font-size: 24px; + font-weight: normal; + margin: 0 0 5px 0; + padding: 0; +} + +div.sphinxsidebar h4 { + font-size: 20px; +} + +div.sphinxsidebar h3 a { + color: #444; +} + +div.sphinxsidebar p.logo a, +div.sphinxsidebar h3 a, +div.sphinxsidebar p.logo a:hover, +div.sphinxsidebar h3 a:hover { + border: none; +} + +div.sphinxsidebar p { + color: #555; + margin: 10px 0; +} + +div.sphinxsidebar ul { + margin: 10px 0; + padding: 0; + color: #000; +} + +div.sphinxsidebar ul li.toctree-l1 > a { + font-size: 120%; +} + +div.sphinxsidebar ul li.toctree-l2 > a { + font-size: 110%; +} + +div.sphinxsidebar input { + border: 1px solid #CCC; + font-family: Arial; + font-size: 1em; +} + +div.sphinxsidebar hr { + border: none; + height: 1px; + color: #AAA; + background: #AAA; + + text-align: left; + margin-left: 0; + width: 50%; +} + +div.sphinxsidebar .badge { + border-bottom: none; +} + +div.sphinxsidebar .badge:hover { + border-bottom: none; +} + +/* To address an issue with donation coming after search */ +div.sphinxsidebar h3.donation { + margin-top: 10px; +} + +/* -- body styles ----------------------------------------------------------- */ + +a { + color: #004B6B; + text-decoration: underline; +} + +a:hover { + color: #6b0000; + text-decoration: underline; +} + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: Arial; + font-weight: normal; + margin: 30px 0px 10px 0px; + padding: 0; +} + +div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; } +div.body h2 { font-size: 180%; } +div.body h3 { font-size: 150%; } +div.body h4 { font-size: 130%; } +div.body h5 { font-size: 100%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: #DDD; + padding: 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + color: #444; + background: #EAEAEA; +} + +div.body p, div.body dd, div.body li { + line-height: 1.4em; +} + +div.admonition { + margin: 20px 0px; + padding: 10px 30px; + background-color: #EEE; + border: 1px solid #CCC; +} + +div.admonition tt.xref, div.admonition code.xref, div.admonition a tt { + background-color: #FBFBFB; + border-bottom: 1px solid #fafafa; +} + +div.admonition p.admonition-title { + font-family: Arial; + font-weight: normal; + font-size: 24px; + margin: 0 0 10px 0; + padding: 0; + line-height: 1; +} + +div.admonition p.last { + margin-bottom: 0; +} + +div.highlight { + background-color: #fff; +} + +dt:target, .highlight { + background: #FAF3E8; +} + +div.warning { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.danger { + background-color: #FCC; + border: 1px solid #FAA; + -moz-box-shadow: 2px 2px 4px #D52C2C; + -webkit-box-shadow: 2px 2px 4px #D52C2C; + box-shadow: 2px 2px 4px #D52C2C; +} + +div.error { + background-color: #FCC; + border: 1px solid #FAA; + -moz-box-shadow: 2px 2px 4px #D52C2C; + -webkit-box-shadow: 2px 2px 4px #D52C2C; + box-shadow: 2px 2px 4px #D52C2C; +} + +div.caution { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.attention { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.important { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.note { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.tip { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.hint { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.seealso { + background-color: transparent; + border: 1px solid transparent; +} + +div.topic { + background-color: #EEE; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre, tt, code { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 10pt; +} + +.hll { + background-color: #FFC; + margin: 0 -12px; + padding: 0 12px; + display: block; +} + +img.screenshot { +} + +tt.descname, tt.descclassname, code.descname, code.descclassname { + font-size: 0.95em; +} + +tt.descname, code.descname { + padding-right: 0.08em; +} + +img.screenshot { + -moz-box-shadow: 2px 2px 4px false; + -webkit-box-shadow: 2px 2px 4px false; + box-shadow: 2px 2px 4px false; +} + +table.docutils { + border: 1px solid #888; + -moz-box-shadow: 2px 2px 4px false; + -webkit-box-shadow: 2px 2px 4px false; + box-shadow: 2px 2px 4px false; +} + +table.docutils td, table.docutils th { + border: 1px solid #888; + padding: 0.25em 0.7em; +} + +table.field-list, table.footnote { + border: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + +table.footnote { + margin: 15px 0; + width: 100%; + border: 1px solid #EEE; + background: #FDFDFD; + font-size: 0.9em; +} + +table.footnote + table.footnote { + margin-top: -15px; + border-top: none; +} + +table.field-list th { + padding: 0 0.8em 0 0; +} + +table.field-list td { + padding: 0; +} + +table.field-list p { + margin-bottom: 0.8em; +} + +/* Cloned from + * https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68 + */ +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +table.footnote td.label { + width: .1px; + padding: 0.3em 0 0.3em 0.5em; +} + +table.footnote td { + padding: 0.3em 0.5em; +} + +dl { + margin: 0; + padding: 0; +} + +dl dd { + margin-left: 30px; +} + +blockquote { + margin: 0 0 0 30px; + padding: 0; +} + +ul, ol { + /* Matches the 30px from the narrow-screen "li > ul" selector below */ + margin: 10px 0 10px 30px; + padding: 0; +} + +pre { + background: #ecf2f9; + padding: 7px 30px; + margin: 15px 0px; + line-height: 1.3em; +} + +div.viewcode-block:target { + background: #ffd; +} + +dl pre, blockquote pre, li pre { + margin-left: 0; + padding-left: 30px; +} + +tt, code { + background-color: #ecf2f9; + color: #222; + /* padding: 1px 2px; */ +} + +tt.xref, code.xref, a tt { + background-color: #FBFBFB; + border-bottom: 1px solid #fff; +} + +a.reference { + text-decoration: none; + border-bottom: 1px dotted #004B6B; +} + +/* Don't put an underline on images */ +a.image-reference, a.image-reference:hover { + border-bottom: none; +} + +a.reference:hover { + border-bottom: 1px solid #6b0000; +} + +a.footnote-reference { + text-decoration: none; + font-size: 0.7em; + vertical-align: top; + border-bottom: 1px dotted #004B6B; +} + +a.footnote-reference:hover { + border-bottom: 1px solid #6b0000; +} + +a:hover tt, a:hover code { + background: #EEE; +} + + +@media screen and (max-width: 870px) { + + div.sphinxsidebar { + display: none; + } + + div.document { + width: 100%; + + } + + div.documentwrapper { + margin-left: 0; + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + } + + div.bodywrapper { + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + margin-left: 0; + } + + ul { + margin-left: 0; + } + + li > ul { + /* Matches the 30px from the "ul, ol" selector above */ + margin-left: 30px; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .bodywrapper { + margin: 0; + } + + .footer { + width: auto; + } + + .github { + display: none; + } + + + +} + + + +@media screen and (max-width: 875px) { + + body { + margin: 0; + padding: 20px 30px; + } + + div.documentwrapper { + float: none; + background: #fff; + } + + div.sphinxsidebar { + display: block; + float: none; + width: 102.5%; + margin: -20px -30px 20px -30px; + padding: 10px 20px; + background: #333; + color: #FFF; + } + + div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p, + div.sphinxsidebar h3 a { + color: #fff; + } + + div.sphinxsidebar a { + color: #AAA; + } + + div.sphinxsidebar p.logo { + display: none; + } + + div.document { + width: 100%; + margin: 0; + } + + div.footer { + display: none; + } + + div.bodywrapper { + margin: 0; + } + + div.body { + min-height: 0; + padding: 0; + } + + .rtd_doc_footer { + display: none; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .footer { + width: auto; + } + + .github { + display: none; + } +} +@media screen and (min-width: 876px) { + div.sphinxsidebar { + position: fixed; + margin-left: 0; + } +} + + +/* misc. */ + +.revsys-inline { + display: none!important; +} + +/* Make nested-list/multi-paragraph items look better in Releases changelog + * pages. Without this, docutils' magical list fuckery causes inconsistent + * formatting between different release sub-lists. + */ +div#changelog > div.section > ul > li > p:only-child { + margin-bottom: 0; +} + +/* Hide fugly table cell borders in ..bibliography:: directive output */ +table.docutils.citation, table.docutils.citation td, table.docutils.citation th { + border: none; + /* Below needed in some edge cases; if not applied, bottom shadows appear */ + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + + +/* relbar */ + +.related { + line-height: 30px; + width: 100%; + font-size: 0.9rem; +} + +.related.top { + border-bottom: 1px solid #EEE; + margin-bottom: 20px; +} + +.related.bottom { + border-top: 1px solid #EEE; +} + +.related ul { + padding: 0; + margin: 0; + list-style: none; +} + +.related li { + display: inline; +} + +nav#rellinks { + float: right; +} + +nav#rellinks li+li:before { + content: "|"; +} + +nav#breadcrumbs li+li:before { + content: "\00BB"; +} + +/* Hide certain items when printing */ +@media print { + div.related { + display: none; + } +} \ No newline at end of file diff --git a/docs/1.9.0.1/_static/basic.css b/docs/1.9.0.1/_static/basic.css new file mode 100644 index 0000000000..b04360d691 --- /dev/null +++ b/docs/1.9.0.1/_static/basic.css @@ -0,0 +1,768 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 450px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +a.brackets:before, +span.brackets > a:before{ + content: "["; +} + +a.brackets:after, +span.brackets > a:after { + content: "]"; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px 7px 0 7px; + background-color: #ffe; + width: 40%; + float: right; +} + +p.sidebar-title { + font-weight: bold; +} + +/* -- topics ---------------------------------------------------------------- */ + +div.topic { + border: 1px solid #ccc; + padding: 7px 7px 0 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +div.admonition dl { + margin-bottom: 0; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > p:first-child, +td > p:first-child { + margin-top: 0px; +} + +th > p:last-child, +td > p:last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist td { + vertical-align: top; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +li > p:first-child { + margin-top: 0px; +} + +li > p:last-child { + margin-bottom: 0px; +} + +dl.footnote > dt, +dl.citation > dt { + float: left; +} + +dl.footnote > dd, +dl.citation > dd { + margin-bottom: 0em; +} + +dl.footnote > dd:after, +dl.citation > dd:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dt:after { + content: ":"; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > p:first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0.5em; + content: ":"; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; +} + +td.linenos pre { + padding: 5px 0px; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +div.code-block-caption { + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +div.code-block-caption + div > div.highlight > pre { + margin-top: 0; +} + +div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + padding: 1em 1em 0; +} + +div.literal-block-wrapper div.highlight { + margin: 0; +} + +code.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; +} + +code.descclassname { + background-color: transparent; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: relative; + left: 0px; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/docs/1.9.0.1/_static/clipboard.min.js b/docs/1.9.0.1/_static/clipboard.min.js new file mode 100644 index 0000000000..02c549e35c --- /dev/null +++ b/docs/1.9.0.1/_static/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}return r.m=n,r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n + + + + diff --git a/docs/1.9.0.1/_static/copybutton.css b/docs/1.9.0.1/_static/copybutton.css new file mode 100644 index 0000000000..75b17a83d5 --- /dev/null +++ b/docs/1.9.0.1/_static/copybutton.css @@ -0,0 +1,67 @@ +/* Copy buttons */ +a.copybtn { + position: absolute; + top: .2em; + right: .2em; + width: 1em; + height: 1em; + opacity: .3; + transition: opacity 0.5s; + border: none; + user-select: none; +} + +div.highlight { + position: relative; +} + +a.copybtn > img { + vertical-align: top; + margin: 0; + top: 0; + left: 0; + position: absolute; +} + +.highlight:hover .copybtn { + opacity: 1; +} + +/** + * A minimal CSS-only tooltip copied from: + * https://codepen.io/mildrenben/pen/rVBrpK + * + * To use, write HTML like the following: + * + *

Short

+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: 2px; + top: 0; + left: -.2em; + background: grey; + font-size: 1rem; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} diff --git a/docs/1.9.0.1/_static/copybutton.js b/docs/1.9.0.1/_static/copybutton.js new file mode 100644 index 0000000000..f5f101a00e --- /dev/null +++ b/docs/1.9.0.1/_static/copybutton.js @@ -0,0 +1,153 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for two seconds, then changes it back +const temporarilyChangeTooltip = (el, newText) => { + const oldText = el.getAttribute('data-tooltip') + el.setAttribute('data-tooltip', newText) + setTimeout(() => el.setAttribute('data-tooltip', oldText), 2000) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const codeCells = document.querySelectorAll('div.highlight pre') + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + const pre_bg = getComputedStyle(codeCell).backgroundColor; + + const clipboardButton = id => + ` + ${messages[locale]['copy_to_clipboard']} + ` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true) { + + var regexp; + var match; + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match) { + promptFound = true + if (removePrompts) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + } else { + if (!onlyCopyPromptLines) { + outputLines.push(line) + } + } + } + + // If no lines with the prompt were found then just use original lines + if (promptFound) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + return formatCopyText(target.innerText, '$ ', false, true, true) +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy_success']) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/docs/1.9.0.1/_static/copybutton_funcs.js b/docs/1.9.0.1/_static/copybutton_funcs.js new file mode 100644 index 0000000000..57caa55854 --- /dev/null +++ b/docs/1.9.0.1/_static/copybutton_funcs.js @@ -0,0 +1,47 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true) { + + var regexp; + var match; + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match) { + promptFound = true + if (removePrompts) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + } else { + if (!onlyCopyPromptLines) { + outputLines.push(line) + } + } + } + + // If no lines with the prompt were found then just use original lines + if (promptFound) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/docs/1.9.0.1/_static/custom.css b/docs/1.9.0.1/_static/custom.css new file mode 100644 index 0000000000..2a924f1d6a --- /dev/null +++ b/docs/1.9.0.1/_static/custom.css @@ -0,0 +1 @@ +/* This file intentionally left blank. */ diff --git a/docs/1.9.0.1/_static/customise-alabaster.css b/docs/1.9.0.1/_static/customise-alabaster.css new file mode 100644 index 0000000000..2217ff2c6a --- /dev/null +++ b/docs/1.9.0.1/_static/customise-alabaster.css @@ -0,0 +1,104 @@ +/* + * overrides for alabaster + * + */ + +div.sphinxsidebar { + width: {{ theme_sidebar_width }}; + font-size: '13pt'; + line-height: 1.5; +} + +/* -- body styles ----------------------------------------------------------- */ + +code.xref { + color: #5682ad; + text-decoration: none; +} + + +div.admonition p.admonition-title { + font-size: 13pt; + font-weight: bold; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.field-list td, table.field-list th { + border: 0 !important; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + vertical-align: top; + padding-right: 5px; + background-color: #5682ad; + color: white; +} + +/* + * Force top alignment for table items so left reference item can align with + * the start of text to describe it in column to right, for better ease of + * comprehension in detailed rows where description text spans many lines. + */ +td { + vertical-align: top; +} + +/* Some tables are otherwise not left-aligned so force them to be. */ +table.align-default { + margin-left: 0; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +/* -- Sphinx 2.3.1 build tweaks (hopefully needed only temporarily) --------- */ + +/* Force one-line spacing between docstring paragraphs (missing for v 2.3.1) */ +.field-list p { + margin-bottom: 1.0em; +} + +/* + * Alabaster theme is responsive and when screen width becomes small enough + * (e.g. with tablets/mobiles) it sets this to 0, making the bullet points sit + * outside of their boxes. Prevent that by overriding for all widths. + */ +ul { + margin-left: 30px; +} + +/* Recolour ugly beige for API function/class/constant element signatures */ +dt[id] { + background-color: #ffed9f; +} + +/* Subtle colours for parameters and returns info for API reference items */ +dl.field-list > dt { + background-color: #edf7e2; + word-break: keep-all; +} \ No newline at end of file diff --git a/docs/1.9.0.1/_static/default.css b/docs/1.9.0.1/_static/default.css new file mode 100644 index 0000000000..b0da101e03 --- /dev/null +++ b/docs/1.9.0.1/_static/default.css @@ -0,0 +1,273 @@ +/* + * default.css_t + * ~~~~~~~~~~~~~ + * + * Sphinx stylesheet -- default theme. + * + * :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: sans-serif; + font-size: 100%; + background-color: #11303d; + color: #000; + margin: 0; + padding: 0; +} + +div.document { + background-color: #F2F2F2; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 230px; +} + +div.body { + background-color: #ffffff; + color: #000000; + padding: 0 20px 30px 20px; +} + +div.footer { + color: #ffffff; + width: 100%; + padding: 9px 0 9px 0; + text-align: center; + font-size: 75%; +} + +div.footer a { + color: #ffffff; + text-decoration: underline; +} + +div.related { + background-color: #5682AD; + line-height: 30px; + color: #ffffff; +} + +div.related a { + color: #ffffff; +} + +div.sphinxsidebar { + top: 30px; + bottom: 0; + margin: 0; + position: fixed; + overflow: auto; + height: auto; +} +/* this is nice, but it it leads to hidden headings when jumping + to an anchor */ +/* +div.related { + position: fixed; +} + +div.documentwrapper { + margin-top: 30px; +} +*/ + +div.sphinxsidebar h3 { + font-family: 'Trebuchet MS', sans-serif; + color: #777777; + font-size: 1.4em; + font-weight: normal; + margin: 0; + padding: 0; +} + +div.sphinxsidebar h3 a { + color: #777777; +} + +div.sphinxsidebar h4 { + font-family: 'Trebuchet MS', sans-serif; + color: #777777; + font-size: 1.3em; + font-weight: normal; + margin: 5px 0 0 0; + padding: 0; +} + +div.sphinxsidebar p { + color: #777777; +} + +div.sphinxsidebar p.topless { + margin: 5px 10px 10px 10px; +} + +div.sphinxsidebar ul { + margin: 10px; + padding: 0; + color: #777777; +} + +div.sphinxsidebar a { + color: #003469; +} + +div.sphinxsidebar input { + border: 1px solid #003469; + font-family: sans-serif; + font-size: 1em; +} + + + +/* -- hyperlink styles ------------------------------------------------------ */ + +a { + color: #355f7c; + text-decoration: none; +} + +a:visited { + color: #355f7c; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + + + +/* -- body styles ----------------------------------------------------------- */ + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: 'Trebuchet MS', sans-serif; + background-color: #FFFFFF; + font-weight: normal; + color: #000000; + border-bottom: 1px solid #ccc; + margin: 20px -20px 10px -20px; + padding: 3px 0 3px 10px; +} + +div.body h1 { margin-top: 0; font-size: 200%; } +div.body h2 { font-size: 160%; } +div.body h3 { font-size: 140%; } +div.body h4 { font-size: 120%; } +div.body h5 { font-size: 110%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: #c60f0f; + font-size: 0.8em; + padding: 0 4px 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + background-color: #c60f0f; + color: white; +} + +div.body p, div.body dd, div.body li { + text-align: justify; + line-height: 130%; +} + +div.admonition p.admonition-title + p { + display: inline; +} + +div.admonition p { + margin-bottom: 5px; +} + +div.admonition pre { + margin-bottom: 5px; +} + +div.admonition ul, div.admonition ol { + margin-bottom: 5px; +} + +div.note { + background-color: #eee; + border: 1px solid #ccc; +} + +div.seealso { + background-color: #ffc; + border: 1px solid #ff6; +} + +div.topic { + background-color: #eee; +} + +div.warning { + background-color: #ffe4e4; + border: 1px solid #f66; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre { + padding: 5px; + background-color: #eeffcc; + color: #333333; + line-height: 120%; + border: 1px solid #ac9; + border-left: none; + border-right: none; +} + +tt { + background-color: #ecf0f3; + padding: 0 1px 0 1px; + font-size: 0.95em; +} + +th { + background-color: #F2F2F2; +} + +.warning tt { + background: #efc2c2; +} + +.note tt { + background: #d6d6d6; +} + +.viewcode-back { + font-family: sans-serif; +} + +div.viewcode-block:target { + background-color: #f4debf; + border-top: 1px solid #ac9; + border-bottom: 1px solid #ac9; +} \ No newline at end of file diff --git a/docs/1.9.0.1/_static/doctools.js b/docs/1.9.0.1/_static/doctools.js new file mode 100644 index 0000000000..b33f87fcb2 --- /dev/null +++ b/docs/1.9.0.1/_static/doctools.js @@ -0,0 +1,314 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Sphinx JavaScript utilities for all documentation. + * + * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/** + * select a different prefix for underscore + */ +$u = _.noConflict(); + +/** + * make the code below compatible with browsers without + * an installed firebug like debugger +if (!window.console || !console.firebug) { + var names = ["log", "debug", "info", "warn", "error", "assert", "dir", + "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", + "profile", "profileEnd"]; + window.console = {}; + for (var i = 0; i < names.length; ++i) + window.console[names[i]] = function() {}; +} + */ + +/** + * small helper function to urldecode strings + */ +jQuery.urldecode = function(x) { + return decodeURIComponent(x).replace(/\+/g, ' '); +}; + +/** + * small helper function to urlencode strings + */ +jQuery.urlencode = encodeURIComponent; + +/** + * This function returns the parsed url parameters of the + * current request. Multiple values per key are supported, + * it will always return arrays of strings for the value parts. + */ +jQuery.getQueryParameters = function(s) { + if (typeof s === 'undefined') + s = document.location.search; + var parts = s.substr(s.indexOf('?') + 1).split('&'); + var result = {}; + for (var i = 0; i < parts.length; i++) { + var tmp = parts[i].split('=', 2); + var key = jQuery.urldecode(tmp[0]); + var value = jQuery.urldecode(tmp[1]); + if (key in result) + result[key].push(value); + else + result[key] = [value]; + } + return result; +}; + +/** + * highlight a given string on a jquery object by wrapping it in + * span elements with the given class name. + */ +jQuery.fn.highlightText = function(text, className) { + function highlight(node, addItems) { + if (node.nodeType === 3) { + var val = node.nodeValue; + var pos = val.toLowerCase().indexOf(text); + if (pos >= 0 && + !jQuery(node.parentNode).hasClass(className) && + !jQuery(node.parentNode).hasClass("nohighlight")) { + var span; + var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.className = className; + } + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + if (isInSVG) { + var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); + var bbox = node.parentElement.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute('class', className); + addItems.push({ + "parent": node.parentNode, + "target": rect}); + } + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this, addItems); + }); + } + } + var addItems = []; + var result = this.each(function() { + highlight(this, addItems); + }); + for (var i = 0; i < addItems.length; ++i) { + jQuery(addItems[i].parent).before(addItems[i].target); + } + return result; +}; + +/* + * backward compatibility for jQuery.browser + * This will be supported until firefox bug is fixed. + */ +if (!jQuery.browser) { + jQuery.uaMatch = function(ua) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || + /(webkit)[ \/]([\w.]+)/.exec(ua) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || + /(msie) ([\w.]+)/.exec(ua) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; + }; + jQuery.browser = {}; + jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; +} + +/** + * Small JavaScript module for the documentation. + */ +var Documentation = { + + init : function() { + this.fixFirefoxAnchorBug(); + this.highlightSearchWords(); + this.initIndexTable(); + if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) { + this.initOnKeyListeners(); + } + }, + + /** + * i18n support + */ + TRANSLATIONS : {}, + PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; }, + LOCALE : 'unknown', + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext : function(string) { + var translated = Documentation.TRANSLATIONS[string]; + if (typeof translated === 'undefined') + return string; + return (typeof translated === 'string') ? translated : translated[0]; + }, + + ngettext : function(singular, plural, n) { + var translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated === 'undefined') + return (n == 1) ? singular : plural; + return translated[Documentation.PLURALEXPR(n)]; + }, + + addTranslations : function(catalog) { + for (var key in catalog.messages) + this.TRANSLATIONS[key] = catalog.messages[key]; + this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); + this.LOCALE = catalog.locale; + }, + + /** + * add context elements like header anchor links + */ + addContextElements : function() { + $('div[id] > :header:first').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this headline')). + appendTo(this); + }); + $('dt[id]').each(function() { + $('\u00B6'). + attr('href', '#' + this.id). + attr('title', _('Permalink to this definition')). + appendTo(this); + }); + }, + + /** + * workaround a firefox stupidity + * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 + */ + fixFirefoxAnchorBug : function() { + if (document.location.hash && $.browser.mozilla) + window.setTimeout(function() { + document.location.href += ''; + }, 10); + }, + + /** + * highlight the search words provided in the url in the text + */ + highlightSearchWords : function() { + var params = $.getQueryParameters(); + var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; + if (terms.length) { + var body = $('div.body'); + if (!body.length) { + body = $('body'); + } + window.setTimeout(function() { + $.each(terms, function() { + body.highlightText(this.toLowerCase(), 'highlighted'); + }); + }, 10); + $('') + .appendTo($('#searchbox')); + } + }, + + /** + * init the domain index toggle buttons + */ + initIndexTable : function() { + var togglers = $('img.toggler').click(function() { + var src = $(this).attr('src'); + var idnum = $(this).attr('id').substr(7); + $('tr.cg-' + idnum).toggle(); + if (src.substr(-9) === 'minus.png') + $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); + else + $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); + }).css('display', ''); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { + togglers.click(); + } + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords : function() { + $('#searchbox .highlight-link').fadeOut(300); + $('span.highlighted').removeClass('highlighted'); + }, + + /** + * make the url absolute + */ + makeURL : function(relativeURL) { + return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; + }, + + /** + * get the current relative url + */ + getCurrentURL : function() { + var path = document.location.pathname; + var parts = path.split(/\//); + $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { + if (this === '..') + parts.pop(); + }); + var url = parts.join('/'); + return path.substring(url.lastIndexOf('/') + 1, path.length - 1); + }, + + initOnKeyListeners: function() { + $(document).keyup(function(event) { + var activeElementType = document.activeElement.tagName; + // don't navigate when in search box or textarea + if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') { + switch (event.keyCode) { + case 37: // left + var prevHref = $('link[rel="prev"]').prop('href'); + if (prevHref) { + window.location.href = prevHref; + return false; + } + case 39: // right + var nextHref = $('link[rel="next"]').prop('href'); + if (nextHref) { + window.location.href = nextHref; + return false; + } + } + } + }); + } +}; + +// quick alias for translations +_ = Documentation.gettext; + +$(document).ready(function() { + Documentation.init(); +}); diff --git a/docs/1.9.0.1/_static/documentation_options.js b/docs/1.9.0.1/_static/documentation_options.js new file mode 100644 index 0000000000..62efd2bb34 --- /dev/null +++ b/docs/1.9.0.1/_static/documentation_options.js @@ -0,0 +1,11 @@ +var DOCUMENTATION_OPTIONS = { + URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), + VERSION: '1.9.0.1', + LANGUAGE: 'None', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false +}; \ No newline at end of file diff --git a/docs/1.9.0.1/_static/file.png b/docs/1.9.0.1/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..a858a410e4faa62ce324d814e4b816fff83a6fb3 GIT binary patch literal 286 zcmV+(0pb3MP)s`hMrGg#P~ix$^RISR_I47Y|r1 z_CyJOe}D1){SET-^Amu_i71Lt6eYfZjRyw@I6OQAIXXHDfiX^GbOlHe=Ae4>0m)d(f|Me07*qoM6N<$f}vM^LjV8( literal 0 HcmV?d00001 diff --git a/docs/1.9.0.1/_static/graphviz.css b/docs/1.9.0.1/_static/graphviz.css new file mode 100644 index 0000000000..09288cbbd1 --- /dev/null +++ b/docs/1.9.0.1/_static/graphviz.css @@ -0,0 +1,19 @@ +/* + * graphviz.css + * ~~~~~~~~~~~~ + * + * Sphinx stylesheet -- graphviz extension. + * + * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +img.graphviz { + border: 0; + max-width: 100%; +} + +object.graphviz { + max-width: 100%; +} diff --git a/docs/1.9.0.1/_static/jquery-3.4.1.js b/docs/1.9.0.1/_static/jquery-3.4.1.js new file mode 100644 index 0000000000..773ad95c56 --- /dev/null +++ b/docs/1.9.0.1/_static/jquery-3.4.1.js @@ -0,0 +1,10598 @@ +/*! + * jQuery JavaScript Library v3.4.1 + * https://jquery.com/ + * + * Includes Sizzle.js + * https://sizzlejs.com/ + * + * Copyright JS Foundation and other contributors + * Released under the MIT license + * https://jquery.org/license + * + * Date: 2019-05-01T21:04Z + */ +( function( global, factory ) { + + "use strict"; + + if ( typeof module === "object" && typeof module.exports === "object" ) { + + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 +// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode +// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common +// enough that all such attempts are guarded in a try block. +"use strict"; + +var arr = []; + +var document = window.document; + +var getProto = Object.getPrototypeOf; + +var slice = arr.slice; + +var concat = arr.concat; + +var push = arr.push; + +var indexOf = arr.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var fnToString = hasOwn.toString; + +var ObjectFunctionString = fnToString.call( Object ); + +var support = {}; + +var isFunction = function isFunction( obj ) { + + // Support: Chrome <=57, Firefox <=52 + // In some browsers, typeof returns "function" for HTML elements + // (i.e., `typeof document.createElement( "object" ) === "function"`). + // We don't want to classify *any* DOM node as a function. + return typeof obj === "function" && typeof obj.nodeType !== "number"; + }; + + +var isWindow = function isWindow( obj ) { + return obj != null && obj === obj.window; + }; + + + + + var preservedScriptAttributes = { + type: true, + src: true, + nonce: true, + noModule: true + }; + + function DOMEval( code, node, doc ) { + doc = doc || document; + + var i, val, + script = doc.createElement( "script" ); + + script.text = code; + if ( node ) { + for ( i in preservedScriptAttributes ) { + + // Support: Firefox 64+, Edge 18+ + // Some browsers don't support the "nonce" property on scripts. + // On the other hand, just using `getAttribute` is not enough as + // the `nonce` attribute is reset to an empty string whenever it + // becomes browsing-context connected. + // See https://github.com/whatwg/html/issues/2369 + // See https://html.spec.whatwg.org/#nonce-attributes + // The `node.getAttribute` check was added for the sake of + // `jQuery.globalEval` so that it can fake a nonce-containing node + // via an object. + val = node[ i ] || node.getAttribute && node.getAttribute( i ); + if ( val ) { + script.setAttribute( i, val ); + } + } + } + doc.head.appendChild( script ).parentNode.removeChild( script ); + } + + +function toType( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android <=2.3 only (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; +} +/* global Symbol */ +// Defining this global in .eslintrc.json would create a danger of using the global +// unguarded in another place, it seems safer to define global only for this module + + + +var + version = "3.4.1", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }, + + // Support: Android <=4.0 only + // Make sure we trim BOM and NBSP + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + + // Return all the elements in a clean array + if ( num == null ) { + return slice.call( this ); + } + + // Return just the one element from the set + return num < 0 ? this[ num + this.length ] : this[ num ]; + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: arr.sort, + splice: arr.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // Skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction( target ) ) { + target = {}; + } + + // Extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + copy = options[ name ]; + + // Prevent Object.prototype pollution + // Prevent never-ending loop + if ( name === "__proto__" || target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = Array.isArray( copy ) ) ) ) { + src = target[ name ]; + + // Ensure proper type for the source value + if ( copyIsArray && !Array.isArray( src ) ) { + clone = []; + } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { + clone = {}; + } else { + clone = src; + } + copyIsArray = false; + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + isPlainObject: function( obj ) { + var proto, Ctor; + + // Detect obvious negatives + // Use toString instead of jQuery.type to catch host objects + if ( !obj || toString.call( obj ) !== "[object Object]" ) { + return false; + } + + proto = getProto( obj ); + + // Objects with no prototype (e.g., `Object.create( null )`) are plain + if ( !proto ) { + return true; + } + + // Objects with prototype are plain iff they were constructed by a global Object function + Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; + return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; + }, + + isEmptyObject: function( obj ) { + var name; + + for ( name in obj ) { + return false; + } + return true; + }, + + // Evaluates a script in a global context + globalEval: function( code, options ) { + DOMEval( code, { nonce: options && options.nonce } ); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // Support: Android <=4.0 only + trim: function( text ) { + return text == null ? + "" : + ( text + "" ).replace( rtrim, "" ); + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + return arr == null ? -1 : indexOf.call( arr, elem, i ); + }, + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + for ( ; j < len; j++ ) { + first[ i++ ] = second[ j ]; + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return concat.apply( [], ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; +} + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), +function( i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); +} ); + +function isArrayLike( obj ) { + + // Support: real iOS 8.2 only (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = toType( obj ); + + if ( isFunction( obj ) || isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.3.4 + * https://sizzlejs.com/ + * + * Copyright JS Foundation and other contributors + * Released under the MIT license + * https://js.foundation/ + * + * Date: 2019-04-08 + */ +(function( window ) { + +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + nonnativeSelectorCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // Instance methods + hasOwn = ({}).hasOwnProperty, + arr = [], + pop = arr.pop, + push_native = arr.push, + push = arr.push, + slice = arr.slice, + // Use a stripped-down indexOf as it's faster than native + // https://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[i] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier + identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), + rdescend = new RegExp( whitespace + "|>" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rhtml = /HTML$/i, + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + + // CSS escapes + // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), + funescape = function( _, escaped, escapedWhitespace ) { + var high = "0x" + escaped - 0x10000; + // NaN means non-codepoint + // Support: Firefox<24 + // Workaround erroneous numeric interpretation of +"0x" + return high !== high || escapedWhitespace ? + escaped : + high < 0 ? + // BMP codepoint + String.fromCharCode( high + 0x10000 ) : + // Supplemental Plane codepoint (surrogate pair) + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // CSS string/identifier serialization + // https://drafts.csswg.org/cssom/#common-serializing-idioms + rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, + fcssescape = function( ch, asCodePoint ) { + if ( asCodePoint ) { + + // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER + if ( ch === "\0" ) { + return "\uFFFD"; + } + + // Control characters and (dependent upon position) numbers get escaped as code points + return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; + } + + // Other potentially-special ASCII characters get backslash-escaped + return "\\" + ch; + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }, + + inDisabledFieldset = addCombinator( + function( elem ) { + return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; + }, + { dir: "parentNode", next: "legend" } + ); + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + (arr = slice.call( preferredDoc.childNodes )), + preferredDoc.childNodes + ); + // Support: Android<4.0 + // Detect silently failing push.apply + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + push_native.apply( target, slice.call(els) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + // Can't trust NodeList.length + while ( (target[j++] = els[i++]) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + + if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { + setDocument( context ); + } + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { + + // ID selector + if ( (m = match[1]) ) { + + // Document context + if ( nodeType === 9 ) { + if ( (elem = context.getElementById( m )) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && (elem = newContext.getElementById( m )) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[2] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( (m = match[3]) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !nonnativeSelectorCache[ selector + " " ] && + (!rbuggyQSA || !rbuggyQSA.test( selector )) && + + // Support: IE 8 only + // Exclude object elements + (nodeType !== 1 || context.nodeName.toLowerCase() !== "object") ) { + + newSelector = selector; + newContext = context; + + // qSA considers elements outside a scoping root when evaluating child or + // descendant combinators, which is not what we want. + // In such cases, we work around the behavior by prefixing every selector in the + // list with an ID selector referencing the scope context. + // Thanks to Andrew Dupont for this technique. + if ( nodeType === 1 && rdescend.test( selector ) ) { + + // Capture the context ID, setting it first if necessary + if ( (nid = context.getAttribute( "id" )) ) { + nid = nid.replace( rcssescape, fcssescape ); + } else { + context.setAttribute( "id", (nid = expando) ); + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + while ( i-- ) { + groups[i] = "#" + nid + " " + toSelector( groups[i] ); + } + newSelector = groups.join( "," ); + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + } + + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + nonnativeSelectorCache( selector, true ); + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return (cache[ key + " " ] = value); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created element and returns a boolean result + */ +function assert( fn ) { + var el = document.createElement("fieldset"); + + try { + return !!fn( el ); + } catch (e) { + return false; + } finally { + // Remove from its parent by default + if ( el.parentNode ) { + el.parentNode.removeChild( el ); + } + // release memory in IE + el = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split("|"), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[i] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + a.sourceIndex - b.sourceIndex; + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( (cur = cur.nextSibling) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return (name === "input" || name === "button") && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for :enabled/:disabled + * @param {Boolean} disabled true for :disabled; false for :enabled + */ +function createDisabledPseudo( disabled ) { + + // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable + return function( elem ) { + + // Only certain elements can match :enabled or :disabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled + if ( "form" in elem ) { + + // Check for inherited disabledness on relevant non-disabled elements: + // * listed form-associated elements in a disabled fieldset + // https://html.spec.whatwg.org/multipage/forms.html#category-listed + // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled + // * option elements in a disabled optgroup + // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled + // All such elements have a "form" property. + if ( elem.parentNode && elem.disabled === false ) { + + // Option elements defer to a parent optgroup if present + if ( "label" in elem ) { + if ( "label" in elem.parentNode ) { + return elem.parentNode.disabled === disabled; + } else { + return elem.disabled === disabled; + } + } + + // Support: IE 6 - 11 + // Use the isDisabled shortcut property to check for disabled fieldset ancestors + return elem.isDisabled === disabled || + + // Where there is no isDisabled, check manually + /* jshint -W018 */ + elem.isDisabled !== !disabled && + inDisabledFieldset( elem ) === disabled; + } + + return elem.disabled === disabled; + + // Try to winnow out elements that can't be disabled before trusting the disabled property. + // Some victims get caught in our net (label, legend, menu, track), but it shouldn't + // even exist on them, let alone have a boolean value. + } else if ( "label" in elem ) { + return elem.disabled === disabled; + } + + // Remaining elements are neither :enabled nor :disabled + return false; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction(function( argument ) { + argument = +argument; + return markFunction(function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ (j = matchIndexes[i]) ] ) { + seed[j] = !(matches[j] = seed[j]); + } + } + }); + }); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + var namespace = elem.namespaceURI, + docElem = (elem.ownerDocument || elem).documentElement; + + // Support: IE <=8 + // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes + // https://bugs.jquery.com/ticket/4833 + return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, subWindow, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9-11, Edge + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + if ( preferredDoc !== document && + (subWindow = document.defaultView) && subWindow.top !== subWindow ) { + + // Support: IE 11, Edge + if ( subWindow.addEventListener ) { + subWindow.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( subWindow.attachEvent ) { + subWindow.attachEvent( "onunload", unloadHandler ); + } + } + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert(function( el ) { + el.className = "i"; + return !el.getAttribute("className"); + }); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert(function( el ) { + el.appendChild( document.createComment("") ); + return !el.getElementsByTagName("*").length; + }); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programmatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert(function( el ) { + docElem.appendChild( el ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + }); + + // ID filter and find + if ( support.getById ) { + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute("id") === attrId; + }; + }; + Expr.find["ID"] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var elem = context.getElementById( id ); + return elem ? [ elem ] : []; + } + }; + } else { + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode("id"); + return node && node.value === attrId; + }; + }; + + // Support: IE 6 - 7 only + // getElementById is not reliable as a find shortcut + Expr.find["ID"] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var node, i, elems, + elem = context.getElementById( id ); + + if ( elem ) { + + // Verify the id attribute + node = elem.getAttributeNode("id"); + if ( node && node.value === id ) { + return [ elem ]; + } + + // Fall back on getElementsByName + elems = context.getElementsByName( id ); + i = 0; + while ( (elem = elems[i++]) ) { + node = elem.getAttributeNode("id"); + if ( node && node.value === id ) { + return [ elem ]; + } + } + } + + return []; + } + }; + } + + // Tag + Expr.find["TAG"] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( (elem = results[i++]) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See https://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert(function( el ) { + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // https://bugs.jquery.com/ticket/12359 + docElem.appendChild( el ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( el.querySelectorAll("[msallowcapture^='']").length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !el.querySelectorAll("[selected]").length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push("~="); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !el.querySelectorAll(":checked").length ) { + rbuggyQSA.push(":checked"); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibling-combinator selector` fails + if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push(".#.+[+~]"); + } + }); + + assert(function( el ) { + el.innerHTML = "" + + ""; + + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement("input"); + input.setAttribute( "type", "hidden" ); + el.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( el.querySelectorAll("[name=d]").length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( el.querySelectorAll(":enabled").length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: IE9-11+ + // IE's :disabled selector does not pick up the children of disabled fieldsets + docElem.appendChild( el ).disabled = true; + if ( el.querySelectorAll(":disabled").length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Opera 10-11 does not throw on post-comma invalid pseudos + el.querySelectorAll("*,:x"); + rbuggyQSA.push(",.*:"); + }); + } + + if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector) )) ) { + + assert(function( el ) { + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( el, "*" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( el, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + }); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + )); + } : + function( a, b ) { + if ( b ) { + while ( (b = b.parentNode) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { + + // Choose the first element that is related to our preferred document + if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { + return -1; + } + if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + return a === document ? -1 : + b === document ? 1 : + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( (cur = cur.parentNode) ) { + ap.unshift( cur ); + } + cur = b; + while ( (cur = cur.parentNode) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[i] === bp[i] ) { + i++; + } + + return i ? + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[i], bp[i] ) : + + // Otherwise nodes in our document sort first + ap[i] === preferredDoc ? -1 : + bp[i] === preferredDoc ? 1 : + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + if ( support.matchesSelector && documentIsHTML && + !nonnativeSelectorCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch (e) { + nonnativeSelectorCache( expr, true ); + } + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + // Set document vars if needed + if ( ( context.ownerDocument || context ) !== document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + (val = elem.getAttributeNode(name)) && val.specified ? + val.value : + null; +}; + +Sizzle.escape = function( sel ) { + return (sel + "").replace( rcssescape, fcssescape ); +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( (elem = results[i++]) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + // If no nodeType, this is expected to be an array + while ( (node = elem[i++]) ) { + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[1] = match[1].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); + + if ( match[2] === "~=" ) { + match[3] = " " + match[3] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[1] = match[1].toLowerCase(); + + if ( match[1].slice( 0, 3 ) === "nth" ) { + // nth-* requires argument + if ( !match[3] ) { + Sizzle.error( match[0] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); + match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); + + // other types prohibit arguments + } else if ( match[3] ) { + Sizzle.error( match[0] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[6] && match[2]; + + if ( matchExpr["CHILD"].test( match[0] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[3] ) { + match[2] = match[4] || match[5] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + // Get excess from tokenize (recursively) + (excess = tokenize( unquoted, true )) && + // advance to the next closing parenthesis + (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { + + // excess is a negative index + match[0] = match[0].slice( 0, excess ); + match[2] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { return true; } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && + classCache( className, function( elem ) { + return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" ); + }); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + }; + }, + + "CHILD": function( type, what, argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( (node = node[ dir ]) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( (node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + (diff = nodeIndex = 0) || start.pop()) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + // Use previously-cached element index if available + if ( useCache ) { + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + // Use the same loop as above to seek `elem` from the start + while ( (node = ++nodeIndex && node && node[ dir ] || + (diff = nodeIndex = 0) || start.pop()) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction(function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[i] ); + seed[ idx ] = !( matches[ idx ] = matched[i] ); + } + }) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + // Potentially complex pseudos + "not": markFunction(function( selector ) { + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction(function( seed, matches, context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( (elem = unmatched[i]) ) { + seed[i] = !(matches[i] = elem); + } + } + }) : + function( elem, context, xml ) { + input[0] = elem; + matcher( input, null, xml, results ); + // Don't keep the element (issue #299) + input[0] = null; + return !results.pop(); + }; + }), + + "has": markFunction(function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + }), + + "contains": markFunction(function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; + }; + }), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + // lang value must be a valid identifier + if ( !ridentifier.test(lang || "") ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( (elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); + return false; + }; + }), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); + }, + + // Boolean properties + "enabled": createDisabledPseudo( false ), + "disabled": createDisabledPseudo( true ), + + "checked": function( elem ) { + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); + }, + + "selected": function( elem ) { + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos["empty"]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo(function() { + return [ 0 ]; + }), + + "last": createPositionalPseudo(function( matchIndexes, length ) { + return [ length - 1 ]; + }), + + "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + }), + + "even": createPositionalPseudo(function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "odd": createPositionalPseudo(function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? + argument + length : + argument > length ? + length : + argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }) + } +}; + +Expr.pseudos["nth"] = Expr.pseudos["eq"]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || (match = rcomma.exec( soFar )) ) { + if ( match ) { + // Don't consume trailing commas as valid + soFar = soFar.slice( match[0].length ) || soFar; + } + groups.push( (tokens = []) ); + } + + matched = false; + + // Combinators + if ( (match = rcombinators.exec( soFar )) ) { + matched = match.shift(); + tokens.push({ + value: matched, + // Cast descendant combinators to space + type: match[0].replace( rtrim, " " ) + }); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || + (match = preFilters[ type ]( match ))) ) { + matched = match.shift(); + tokens.push({ + value: matched, + type: type, + matches: match + }); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[i].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + skip = combinator.next, + key = skip || dir, + checkNonElements = base && key === "parentNode", + doneName = done++; + + return combinator.first ? + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + return false; + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || (elem[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); + + if ( skip && skip === elem.nodeName.toLowerCase() ) { + elem = elem[ dir ] || elem; + } else if ( (oldCache = uniqueCache[ key ]) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return (newCache[ 2 ] = oldCache[ 2 ]); + } else { + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ key ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { + return true; + } + } + } + } + } + return false; + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[i]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[0]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[i], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( (elem = unmatched[i]) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction(function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( (elem = temp[i]) ) { + matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) ) { + // Restore matcherIn since elem is not yet a final match + temp.push( (matcherIn[i] = elem) ); + } + } + postFinder( null, (matcherOut = []), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) && + (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) { + + seed[temp] = !(results[temp] = elem); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + }); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[0].type ], + implicitRelative = leadingRelative || Expr.relative[" "], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + (checkContext = context).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( (matcher = Expr.relative[ tokens[i].type ]) ) { + matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; + } else { + matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[j].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), + len = elems.length; + + if ( outermost ) { + outermostContext = context === document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && (elem = elems[i]) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + if ( !context && elem.ownerDocument !== document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( (matcher = elementMatchers[j++]) ) { + if ( matcher( elem, context || document, xml) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + // They will have gone through all possible matchers + if ( (elem = !matcher && elem) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( (matcher = setMatchers[j++]) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !(unmatched[i] || setMatched[i]) ) { + setMatched[i] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[i] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( (selector = compiled.selector || selector) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[0] = match[0].slice( 0 ); + if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && + context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[1].type ] ) { + + context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[i]; + + // Abort if we hit a combinator + if ( Expr.relative[ (type = token.type) ] ) { + break; + } + if ( (find = Expr.find[ type ]) ) { + // Search, expanding context for leading sibling combinators + if ( (seed = find( + token.matches[0].replace( runescape, funescape ), + rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context + )) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert(function( el ) { + // Should return 1, but returns 4 (following) + return el.compareDocumentPosition( document.createElement("fieldset") ) & 1; +}); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert(function( el ) { + el.innerHTML = ""; + return el.firstChild.getAttribute("href") === "#" ; +}) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + }); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert(function( el ) { + el.innerHTML = ""; + el.firstChild.setAttribute( "value", "" ); + return el.firstChild.getAttribute( "value" ) === ""; +}) ) { + addHandle( "value", function( elem, name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + }); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert(function( el ) { + return el.getAttribute("disabled") == null; +}) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + (val = elem.getAttributeNode( name )) && val.specified ? + val.value : + null; + } + }); +} + +return Sizzle; + +})( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; + +// Deprecated +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; +jQuery.escapeSelector = Sizzle.escape; + + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + + + +function nodeName( elem, name ) { + + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + +}; +var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); + + + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + return !!qualifier.call( elem, i, elem ) !== not; + } ); + } + + // Single element + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + } + + // Arraylike of elements (jQuery, arguments, Array) + if ( typeof qualifier !== "string" ) { + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not; + } ); + } + + // Filtered directly for both simple and complex selectors + return jQuery.filter( qualifier, elements, not ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + if ( elems.length === 1 && elem.nodeType === 1 ) { + return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; + } + + return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, ret, + len = this.length, + self = this; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + ret = this.pushStack( [] ); + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + return len > 1 ? jQuery.uniqueSort( ret ) : ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + // Shortcut simple #id case for speed + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Method init() accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector[ 0 ] === "<" && + selector[ selector.length - 1 ] === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // Option to run scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + if ( elem ) { + + // Inject the element directly into the jQuery object + this[ 0 ] = elem; + this.length = 1; + } + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( isFunction( selector ) ) { + return root.ready !== undefined ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // Methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var targets = jQuery( target, this ), + l = targets.length; + + return this.filter( function() { + var i = 0; + for ( ; i < l; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + targets = typeof selectors !== "string" && jQuery( selectors ); + + // Positional selectors never match, since there's no _selection_ context + if ( !rneedsContext.test( selectors ) ) { + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( targets ? + targets.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within the set + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // Index in selector + if ( typeof elem === "string" ) { + return indexOf.call( jQuery( elem ), this[ 0 ] ); + } + + // Locate the position of the desired element + return indexOf.call( this, + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem + ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + if ( typeof elem.contentDocument !== "undefined" ) { + return elem.contentDocument; + } + + // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only + // Treat the template element as a regular one in browsers that + // don't support it. + if ( nodeName( elem, "template" ) ) { + elem = elem.content || elem; + } + + return jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var matched = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + matched = jQuery.filter( selector, matched ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + jQuery.uniqueSort( matched ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + matched.reverse(); + } + } + + return this.pushStack( matched ); + }; +} ); +var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = locked || options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && toType( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = queue = []; + if ( !memory && !firing ) { + list = memory = ""; + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +function Identity( v ) { + return v; +} +function Thrower( ex ) { + throw ex; +} + +function adoptValue( value, resolve, reject, noValue ) { + var method; + + try { + + // Check for promise aspect first to privilege synchronous behavior + if ( value && isFunction( ( method = value.promise ) ) ) { + method.call( value ).done( resolve ).fail( reject ); + + // Other thenables + } else if ( value && isFunction( ( method = value.then ) ) ) { + method.call( value, resolve, reject ); + + // Other non-thenables + } else { + + // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: + // * false: [ value ].slice( 0 ) => resolve( value ) + // * true: [ value ].slice( 1 ) => resolve() + resolve.apply( undefined, [ value ].slice( noValue ) ); + } + + // For Promises/A+, convert exceptions into rejections + // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in + // Deferred#then to conditionally suppress rejection. + } catch ( value ) { + + // Support: Android 4.0 only + // Strict mode functions invoked without .call/.apply get global-object context + reject.apply( undefined, [ value ] ); + } +} + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, callbacks, + // ... .then handlers, argument index, [final state] + [ "notify", "progress", jQuery.Callbacks( "memory" ), + jQuery.Callbacks( "memory" ), 2 ], + [ "resolve", "done", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 0, "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 1, "rejected" ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + "catch": function( fn ) { + return promise.then( null, fn ); + }, + + // Keep pipe for back-compat + pipe: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( i, tuple ) { + + // Map tuples (progress, done, fail) to arguments (done, fail, progress) + var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; + + // deferred.progress(function() { bind to newDefer or newDefer.notify }) + // deferred.done(function() { bind to newDefer or newDefer.resolve }) + // deferred.fail(function() { bind to newDefer or newDefer.reject }) + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + then: function( onFulfilled, onRejected, onProgress ) { + var maxDepth = 0; + function resolve( depth, deferred, handler, special ) { + return function() { + var that = this, + args = arguments, + mightThrow = function() { + var returned, then; + + // Support: Promises/A+ section 2.3.3.3.3 + // https://promisesaplus.com/#point-59 + // Ignore double-resolution attempts + if ( depth < maxDepth ) { + return; + } + + returned = handler.apply( that, args ); + + // Support: Promises/A+ section 2.3.1 + // https://promisesaplus.com/#point-48 + if ( returned === deferred.promise() ) { + throw new TypeError( "Thenable self-resolution" ); + } + + // Support: Promises/A+ sections 2.3.3.1, 3.5 + // https://promisesaplus.com/#point-54 + // https://promisesaplus.com/#point-75 + // Retrieve `then` only once + then = returned && + + // Support: Promises/A+ section 2.3.4 + // https://promisesaplus.com/#point-64 + // Only check objects and functions for thenability + ( typeof returned === "object" || + typeof returned === "function" ) && + returned.then; + + // Handle a returned thenable + if ( isFunction( then ) ) { + + // Special processors (notify) just wait for resolution + if ( special ) { + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ) + ); + + // Normal processors (resolve) also hook into progress + } else { + + // ...and disregard older resolution values + maxDepth++; + + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ), + resolve( maxDepth, deferred, Identity, + deferred.notifyWith ) + ); + } + + // Handle all other returned values + } else { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Identity ) { + that = undefined; + args = [ returned ]; + } + + // Process the value(s) + // Default process is resolve + ( special || deferred.resolveWith )( that, args ); + } + }, + + // Only normal processors (resolve) catch and reject exceptions + process = special ? + mightThrow : + function() { + try { + mightThrow(); + } catch ( e ) { + + if ( jQuery.Deferred.exceptionHook ) { + jQuery.Deferred.exceptionHook( e, + process.stackTrace ); + } + + // Support: Promises/A+ section 2.3.3.3.4.1 + // https://promisesaplus.com/#point-61 + // Ignore post-resolution exceptions + if ( depth + 1 >= maxDepth ) { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Thrower ) { + that = undefined; + args = [ e ]; + } + + deferred.rejectWith( that, args ); + } + } + }; + + // Support: Promises/A+ section 2.3.3.3.1 + // https://promisesaplus.com/#point-57 + // Re-resolve promises immediately to dodge false rejection from + // subsequent errors + if ( depth ) { + process(); + } else { + + // Call an optional hook to record the stack, in case of exception + // since it's otherwise lost when execution goes async + if ( jQuery.Deferred.getStackHook ) { + process.stackTrace = jQuery.Deferred.getStackHook(); + } + window.setTimeout( process ); + } + }; + } + + return jQuery.Deferred( function( newDefer ) { + + // progress_handlers.add( ... ) + tuples[ 0 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onProgress ) ? + onProgress : + Identity, + newDefer.notifyWith + ) + ); + + // fulfilled_handlers.add( ... ) + tuples[ 1 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onFulfilled ) ? + onFulfilled : + Identity + ) + ); + + // rejected_handlers.add( ... ) + tuples[ 2 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onRejected ) ? + onRejected : + Thrower + ) + ); + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 5 ]; + + // promise.progress = list.add + // promise.done = list.add + // promise.fail = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( + function() { + + // state = "resolved" (i.e., fulfilled) + // state = "rejected" + state = stateString; + }, + + // rejected_callbacks.disable + // fulfilled_callbacks.disable + tuples[ 3 - i ][ 2 ].disable, + + // rejected_handlers.disable + // fulfilled_handlers.disable + tuples[ 3 - i ][ 3 ].disable, + + // progress_callbacks.lock + tuples[ 0 ][ 2 ].lock, + + // progress_handlers.lock + tuples[ 0 ][ 3 ].lock + ); + } + + // progress_handlers.fire + // fulfilled_handlers.fire + // rejected_handlers.fire + list.add( tuple[ 3 ].fire ); + + // deferred.notify = function() { deferred.notifyWith(...) } + // deferred.resolve = function() { deferred.resolveWith(...) } + // deferred.reject = function() { deferred.rejectWith(...) } + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); + return this; + }; + + // deferred.notifyWith = list.fireWith + // deferred.resolveWith = list.fireWith + // deferred.rejectWith = list.fireWith + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( singleValue ) { + var + + // count of uncompleted subordinates + remaining = arguments.length, + + // count of unprocessed arguments + i = remaining, + + // subordinate fulfillment data + resolveContexts = Array( i ), + resolveValues = slice.call( arguments ), + + // the master Deferred + master = jQuery.Deferred(), + + // subordinate callback factory + updateFunc = function( i ) { + return function( value ) { + resolveContexts[ i ] = this; + resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( !( --remaining ) ) { + master.resolveWith( resolveContexts, resolveValues ); + } + }; + }; + + // Single- and empty arguments are adopted like Promise.resolve + if ( remaining <= 1 ) { + adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject, + !remaining ); + + // Use .then() to unwrap secondary thenables (cf. gh-3000) + if ( master.state() === "pending" || + isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { + + return master.then(); + } + } + + // Multiple arguments are aggregated like Promise.all array elements + while ( i-- ) { + adoptValue( resolveValues[ i ], updateFunc( i ), master.reject ); + } + + return master.promise(); + } +} ); + + +// These usually indicate a programmer mistake during development, +// warn about them ASAP rather than swallowing them by default. +var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; + +jQuery.Deferred.exceptionHook = function( error, stack ) { + + // Support: IE 8 - 9 only + // Console exists when dev tools are open, which can happen at any time + if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { + window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); + } +}; + + + + +jQuery.readyException = function( error ) { + window.setTimeout( function() { + throw error; + } ); +}; + + + + +// The deferred used on DOM ready +var readyList = jQuery.Deferred(); + +jQuery.fn.ready = function( fn ) { + + readyList + .then( fn ) + + // Wrap jQuery.readyException in a function so that the lookup + // happens at the time of error handling instead of callback + // registration. + .catch( function( error ) { + jQuery.readyException( error ); + } ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + } +} ); + +jQuery.ready.then = readyList.then; + +// The ready event handler and self cleanup method +function completed() { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + jQuery.ready(); +} + +// Catch cases where $(document).ready() is called +// after the browser event has already occurred. +// Support: IE <=9 - 10 only +// Older IE sometimes signals "interactive" too soon +if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + +} else { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); +} + + + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + len = elems.length, + bulk = key == null; + + // Sets many values + if ( toType( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < len; i++ ) { + fn( + elems[ i ], key, raw ? + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + if ( chainable ) { + return elems; + } + + // Gets + if ( bulk ) { + return fn.call( elems ); + } + + return len ? fn( elems[ 0 ], key ) : emptyGet; +}; + + +// Matches dashed string for camelizing +var rmsPrefix = /^-ms-/, + rdashAlpha = /-([a-z])/g; + +// Used by camelCase as callback to replace() +function fcamelCase( all, letter ) { + return letter.toUpperCase(); +} + +// Convert dashed to camelCase; used by the css and data modules +// Support: IE <=9 - 11, Edge 12 - 15 +// Microsoft forgot to hump their vendor prefix (#9572) +function camelCase( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); +} +var acceptData = function( owner ) { + + // Accepts only: + // - Node + // - Node.ELEMENT_NODE + // - Node.DOCUMENT_NODE + // - Object + // - Any + return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); +}; + + + + +function Data() { + this.expando = jQuery.expando + Data.uid++; +} + +Data.uid = 1; + +Data.prototype = { + + cache: function( owner ) { + + // Check if the owner object already has a cache + var value = owner[ this.expando ]; + + // If not, create one + if ( !value ) { + value = {}; + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( acceptData( owner ) ) { + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable property + // configurable must be true to allow the property to be + // deleted when data is removed + } else { + Object.defineProperty( owner, this.expando, { + value: value, + configurable: true + } ); + } + } + } + + return value; + }, + set: function( owner, data, value ) { + var prop, + cache = this.cache( owner ); + + // Handle: [ owner, key, value ] args + // Always use camelCase key (gh-2257) + if ( typeof data === "string" ) { + cache[ camelCase( data ) ] = value; + + // Handle: [ owner, { properties } ] args + } else { + + // Copy the properties one-by-one to the cache object + for ( prop in data ) { + cache[ camelCase( prop ) ] = data[ prop ]; + } + } + return cache; + }, + get: function( owner, key ) { + return key === undefined ? + this.cache( owner ) : + + // Always use camelCase key (gh-2257) + owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; + }, + access: function( owner, key, value ) { + + // In cases where either: + // + // 1. No key was specified + // 2. A string key was specified, but no value provided + // + // Take the "read" path and allow the get method to determine + // which value to return, respectively either: + // + // 1. The entire cache object + // 2. The data stored at the key + // + if ( key === undefined || + ( ( key && typeof key === "string" ) && value === undefined ) ) { + + return this.get( owner, key ); + } + + // When the key is not a string, or both a key and value + // are specified, set or extend (existing objects) with either: + // + // 1. An object of properties + // 2. A key and value + // + this.set( owner, key, value ); + + // Since the "set" path can have two possible entry points + // return the expected data based on which path was taken[*] + return value !== undefined ? value : key; + }, + remove: function( owner, key ) { + var i, + cache = owner[ this.expando ]; + + if ( cache === undefined ) { + return; + } + + if ( key !== undefined ) { + + // Support array or space separated string of keys + if ( Array.isArray( key ) ) { + + // If key is an array of keys... + // We always set camelCase keys, so remove that. + key = key.map( camelCase ); + } else { + key = camelCase( key ); + + // If a key with the spaces exists, use it. + // Otherwise, create an array by matching non-whitespace + key = key in cache ? + [ key ] : + ( key.match( rnothtmlwhite ) || [] ); + } + + i = key.length; + + while ( i-- ) { + delete cache[ key[ i ] ]; + } + } + + // Remove the expando if there's no more data + if ( key === undefined || jQuery.isEmptyObject( cache ) ) { + + // Support: Chrome <=35 - 45 + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) + if ( owner.nodeType ) { + owner[ this.expando ] = undefined; + } else { + delete owner[ this.expando ]; + } + } + }, + hasData: function( owner ) { + var cache = owner[ this.expando ]; + return cache !== undefined && !jQuery.isEmptyObject( cache ); + } +}; +var dataPriv = new Data(); + +var dataUser = new Data(); + + + +// Implementation Summary +// +// 1. Enforce API surface and semantic compatibility with 1.9.x branch +// 2. Improve the module's maintainability by reducing the storage +// paths to a single mechanism. +// 3. Use the same single mechanism to support "private" and "user" data. +// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) +// 5. Avoid exposing implementation details on user objects (eg. expando properties) +// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /[A-Z]/g; + +function getData( data ) { + if ( data === "true" ) { + return true; + } + + if ( data === "false" ) { + return false; + } + + if ( data === "null" ) { + return null; + } + + // Only convert to a number if it doesn't change the string + if ( data === +data + "" ) { + return +data; + } + + if ( rbrace.test( data ) ) { + return JSON.parse( data ); + } + + return data; +} + +function dataAttr( elem, key, data ) { + var name; + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = getData( data ); + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + dataUser.set( elem, key, data ); + } else { + data = undefined; + } + } + return data; +} + +jQuery.extend( { + hasData: function( elem ) { + return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + }, + + data: function( elem, name, data ) { + return dataUser.access( elem, name, data ); + }, + + removeData: function( elem, name ) { + dataUser.remove( elem, name ); + }, + + // TODO: Now that all calls to _data and _removeData have been replaced + // with direct calls to dataPriv methods, these can be deprecated. + _data: function( elem, name, data ) { + return dataPriv.access( elem, name, data ); + }, + + _removeData: function( elem, name ) { + dataPriv.remove( elem, name ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = dataUser.get( elem ); + + if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE 11 only + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + dataPriv.set( elem, "hasDataAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + dataUser.set( this, key ); + } ); + } + + return access( this, function( value ) { + var data; + + // The calling jQuery object (element matches) is not empty + // (and therefore has an element appears at this[ 0 ]) and the + // `value` parameter was not undefined. An empty jQuery object + // will result in `undefined` for elem = this[ 0 ] which will + // throw an exception if an attempt to read a data cache is made. + if ( elem && value === undefined ) { + + // Attempt to get data from the cache + // The key will always be camelCased in Data + data = dataUser.get( elem, key ); + if ( data !== undefined ) { + return data; + } + + // Attempt to "discover" the data in + // HTML5 custom data-* attrs + data = dataAttr( elem, key ); + if ( data !== undefined ) { + return data; + } + + // We tried really hard, but the data doesn't exist. + return; + } + + // Set the data... + this.each( function() { + + // We always store the camelCased key + dataUser.set( this, key, value ); + } ); + }, null, value, arguments.length > 1, null, true ); + }, + + removeData: function( key ) { + return this.each( function() { + dataUser.remove( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = dataPriv.get( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || Array.isArray( data ) ) { + queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // Clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // Not public - generate a queueHooks object, or return the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + dataPriv.remove( elem, [ type + "queue", key ] ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // Ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var documentElement = document.documentElement; + + + + var isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ); + }, + composed = { composed: true }; + + // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only + // Check attachment across shadow DOM boundaries when possible (gh-3504) + // Support: iOS 10.0-10.2 only + // Early iOS 10 versions support `attachShadow` but not `getRootNode`, + // leading to errors. We need to check for `getRootNode`. + if ( documentElement.getRootNode ) { + isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ) || + elem.getRootNode( composed ) === elem.ownerDocument; + }; + } +var isHiddenWithinTree = function( elem, el ) { + + // isHiddenWithinTree might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + + // Inline style trumps all + return elem.style.display === "none" || + elem.style.display === "" && + + // Otherwise, check computed style + // Support: Firefox <=43 - 45 + // Disconnected elements can have computed display: none, so first confirm that elem is + // in the document. + isAttached( elem ) && + + jQuery.css( elem, "display" ) === "none"; + }; + +var swap = function( elem, options, callback, args ) { + var ret, name, + old = {}; + + // Remember the old values, and insert the new ones + for ( name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + ret = callback.apply( elem, args || [] ); + + // Revert the old values + for ( name in options ) { + elem.style[ name ] = old[ name ]; + } + + return ret; +}; + + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, scale, + maxIterations = 20, + currentValue = tween ? + function() { + return tween.cur(); + } : + function() { + return jQuery.css( elem, prop, "" ); + }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = elem.nodeType && + ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Support: Firefox <=54 + // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) + initial = initial / 2; + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + while ( maxIterations-- ) { + + // Evaluate and update our best guess (doubling guesses that zero out). + // Finish if the scale equals or crosses 1 (making the old*new product non-positive). + jQuery.style( elem, prop, initialInUnit + unit ); + if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { + maxIterations = 0; + } + initialInUnit = initialInUnit / scale; + + } + + initialInUnit = initialInUnit * 2; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} + + +var defaultDisplayMap = {}; + +function getDefaultDisplay( elem ) { + var temp, + doc = elem.ownerDocument, + nodeName = elem.nodeName, + display = defaultDisplayMap[ nodeName ]; + + if ( display ) { + return display; + } + + temp = doc.body.appendChild( doc.createElement( nodeName ) ); + display = jQuery.css( temp, "display" ); + + temp.parentNode.removeChild( temp ); + + if ( display === "none" ) { + display = "block"; + } + defaultDisplayMap[ nodeName ] = display; + + return display; +} + +function showHide( elements, show ) { + var display, elem, + values = [], + index = 0, + length = elements.length; + + // Determine new display value for elements that need to change + for ( ; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + + display = elem.style.display; + if ( show ) { + + // Since we force visibility upon cascade-hidden elements, an immediate (and slow) + // check is required in this first loop unless we have a nonempty display value (either + // inline or about-to-be-restored) + if ( display === "none" ) { + values[ index ] = dataPriv.get( elem, "display" ) || null; + if ( !values[ index ] ) { + elem.style.display = ""; + } + } + if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { + values[ index ] = getDefaultDisplay( elem ); + } + } else { + if ( display !== "none" ) { + values[ index ] = "none"; + + // Remember what we're overwriting + dataPriv.set( elem, "display", display ); + } + } + } + + // Set the display of the elements in a second loop to avoid constant reflow + for ( index = 0; index < length; index++ ) { + if ( values[ index ] != null ) { + elements[ index ].style.display = values[ index ]; + } + } + + return elements; +} + +jQuery.fn.extend( { + show: function() { + return showHide( this, true ); + }, + hide: function() { + return showHide( this ); + }, + toggle: function( state ) { + if ( typeof state === "boolean" ) { + return state ? this.show() : this.hide(); + } + + return this.each( function() { + if ( isHiddenWithinTree( this ) ) { + jQuery( this ).show(); + } else { + jQuery( this ).hide(); + } + } ); + } +} ); +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); + +var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); + + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // Support: IE <=9 only + option: [ 1, "" ], + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting or other required elements. + thead: [ 1, "", "
" ], + col: [ 2, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + _default: [ 0, "", "" ] +}; + +// Support: IE <=9 only +wrapMap.optgroup = wrapMap.option; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + + +function getAll( context, tag ) { + + // Support: IE <=9 - 11 only + // Use typeof to avoid zero-argument method invocation on host objects (#15151) + var ret; + + if ( typeof context.getElementsByTagName !== "undefined" ) { + ret = context.getElementsByTagName( tag || "*" ); + + } else if ( typeof context.querySelectorAll !== "undefined" ) { + ret = context.querySelectorAll( tag || "*" ); + + } else { + ret = []; + } + + if ( tag === undefined || tag && nodeName( context, tag ) ) { + return jQuery.merge( [ context ], ret ); + } + + return ret; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + dataPriv.set( + elems[ i ], + "globalEval", + !refElements || dataPriv.get( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/; + +function buildFragment( elems, context, scripts, selection, ignored ) { + var elem, tmp, tag, wrap, attached, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + elem = elems[ i ]; + + if ( elem || elem === 0 ) { + + // Add nodes directly + if ( toType( elem ) === "object" ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); + + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); + + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); + + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; + + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; + } + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); + + // Remember the top-level container + tmp = fragment.firstChild; + + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } + } + } + + // Remove wrapper from fragment + fragment.textContent = ""; + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + continue; + } + + attached = isAttached( elem ); + + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( attached ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + return fragment; +} + + +( function() { + var fragment = document.createDocumentFragment(), + div = fragment.appendChild( document.createElement( "div" ) ), + input = document.createElement( "input" ); + + // Support: Android 4.0 - 4.3 only + // Check state lost if the name is set (#11217) + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Android <=4.1 only + // Older WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE <=11 only + // Make sure textarea (and checkbox) defaultValue is properly cloned + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; +} )(); + + +var + rkeyEvent = /^key/, + rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, + rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE <=9 - 11+ +// focus() and blur() are asynchronous, except when they are no-op. +// So expect focus to be synchronous when the element is already active, +// and blur to be synchronous when the element is not already active. +// (focus and blur are always synchronous in other supported browsers, +// this just defines when we can count on it). +function expectSync( elem, type ) { + return ( elem === safeActiveElement() ) === ( type === "focus" ); +} + +// Support: IE <=9 only +// Accessing document.activeElement can throw unexpectedly +// https://bugs.jquery.com/ticket/13393 +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + + var handleObjIn, eventHandle, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.get( elem ); + + // Don't attach events to noData or text/comment nodes (but allow plain objects) + if ( !elemData ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Ensure that invalid selectors throw exceptions at attach time + // Evaluate against documentElement in case elem is a non-element node (e.g., document) + if ( selector ) { + jQuery.find.matchesSelector( documentElement, selector ); + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = {}; + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + jQuery.event.dispatch.apply( elem, arguments ) : undefined; + }; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var j, origCount, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove data and the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + dataPriv.remove( elem, "handle events" ); + } + }, + + dispatch: function( nativeEvent ) { + + // Make a writable jQuery.Event from the native event object + var event = jQuery.event.fix( nativeEvent ); + + var i, j, ret, matched, handleObj, handlerQueue, + args = new Array( arguments.length ), + handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + + for ( i = 1; i < arguments.length; i++ ) { + args[ i ] = arguments[ i ]; + } + + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // If the event is namespaced, then each handler is only invoked if it is + // specially universal or its namespaces are a superset of the event's. + if ( !event.rnamespace || handleObj.namespace === false || + event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, handleObj, sel, matchedHandlers, matchedSelectors, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Find delegate handlers + if ( delegateCount && + + // Support: IE <=9 + // Black-hole SVG instance trees (trac-13180) + cur.nodeType && + + // Support: Firefox <=42 + // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) + // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click + // Support: IE 11 only + // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) + !( event.type === "click" && event.button >= 1 ) ) { + + for ( ; cur !== this; cur = cur.parentNode || this ) { + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { + matchedHandlers = []; + matchedSelectors = {}; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matchedSelectors[ sel ] === undefined ) { + matchedSelectors[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matchedSelectors[ sel ] ) { + matchedHandlers.push( handleObj ); + } + } + if ( matchedHandlers.length ) { + handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + cur = this; + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + addProp: function( name, hook ) { + Object.defineProperty( jQuery.Event.prototype, name, { + enumerable: true, + configurable: true, + + get: isFunction( hook ) ? + function() { + if ( this.originalEvent ) { + return hook( this.originalEvent ); + } + } : + function() { + if ( this.originalEvent ) { + return this.originalEvent[ name ]; + } + }, + + set: function( value ) { + Object.defineProperty( this, name, { + enumerable: true, + configurable: true, + writable: true, + value: value + } ); + } + } ); + }, + + fix: function( originalEvent ) { + return originalEvent[ jQuery.expando ] ? + originalEvent : + new jQuery.Event( originalEvent ); + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + click: { + + // Utilize native event to ensure correct state for checkable inputs + setup: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Claim the first handler + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + // dataPriv.set( el, "click", ... ) + leverageNative( el, "click", returnTrue ); + } + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Force setup before triggering a click + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + leverageNative( el, "click" ); + } + + // Return non-false to allow normal event-path propagation + return true; + }, + + // For cross-browser consistency, suppress native .click() on links + // Also prevent it if we're currently inside a leveraged native-event stack + _default: function( event ) { + var target = event.target; + return rcheckableType.test( target.type ) && + target.click && nodeName( target, "input" ) && + dataPriv.get( target, "click" ) || + nodeName( target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + } +}; + +// Ensure the presence of an event listener that handles manually-triggered +// synthetic events by interrupting progress until reinvoked in response to +// *native* events that it fires directly, ensuring that state changes have +// already occurred before other listeners are invoked. +function leverageNative( el, type, expectSync ) { + + // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add + if ( !expectSync ) { + if ( dataPriv.get( el, type ) === undefined ) { + jQuery.event.add( el, type, returnTrue ); + } + return; + } + + // Register the controller as a special universal handler for all event namespaces + dataPriv.set( el, type, false ); + jQuery.event.add( el, type, { + namespace: false, + handler: function( event ) { + var notAsync, result, + saved = dataPriv.get( this, type ); + + if ( ( event.isTrigger & 1 ) && this[ type ] ) { + + // Interrupt processing of the outer synthetic .trigger()ed event + // Saved data should be false in such cases, but might be a leftover capture object + // from an async native handler (gh-4350) + if ( !saved.length ) { + + // Store arguments for use when handling the inner native event + // There will always be at least one argument (an event object), so this array + // will not be confused with a leftover capture object. + saved = slice.call( arguments ); + dataPriv.set( this, type, saved ); + + // Trigger the native event and capture its result + // Support: IE <=9 - 11+ + // focus() and blur() are asynchronous + notAsync = expectSync( this, type ); + this[ type ](); + result = dataPriv.get( this, type ); + if ( saved !== result || notAsync ) { + dataPriv.set( this, type, false ); + } else { + result = {}; + } + if ( saved !== result ) { + + // Cancel the outer synthetic event + event.stopImmediatePropagation(); + event.preventDefault(); + return result.value; + } + + // If this is an inner synthetic event for an event with a bubbling surrogate + // (focus or blur), assume that the surrogate already propagated from triggering the + // native event and prevent that from happening again here. + // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the + // bubbling surrogate propagates *after* the non-bubbling base), but that seems + // less bad than duplication. + } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { + event.stopPropagation(); + } + + // If this is a native event triggered above, everything is now in order + // Fire an inner synthetic event with the original arguments + } else if ( saved.length ) { + + // ...and capture the result + dataPriv.set( this, type, { + value: jQuery.event.trigger( + + // Support: IE <=9 - 11+ + // Extend with the prototype to reset the above stopImmediatePropagation() + jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), + saved.slice( 1 ), + this + ) + } ); + + // Abort handling of the native event + event.stopImmediatePropagation(); + } + } + } ); +} + +jQuery.removeEvent = function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } +}; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: Android <=2.3 only + src.returnValue === false ? + returnTrue : + returnFalse; + + // Create target properties + // Support: Safari <=6 - 7 only + // Target should not be a text node (#504, #13143) + this.target = ( src.target && src.target.nodeType === 3 ) ? + src.target.parentNode : + src.target; + + this.currentTarget = src.currentTarget; + this.relatedTarget = src.relatedTarget; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || Date.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + isSimulated: false, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + + if ( e && !this.isSimulated ) { + e.preventDefault(); + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopPropagation(); + } + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Includes all common event props including KeyEvent and MouseEvent specific props +jQuery.each( { + altKey: true, + bubbles: true, + cancelable: true, + changedTouches: true, + ctrlKey: true, + detail: true, + eventPhase: true, + metaKey: true, + pageX: true, + pageY: true, + shiftKey: true, + view: true, + "char": true, + code: true, + charCode: true, + key: true, + keyCode: true, + button: true, + buttons: true, + clientX: true, + clientY: true, + offsetX: true, + offsetY: true, + pointerId: true, + pointerType: true, + screenX: true, + screenY: true, + targetTouches: true, + toElement: true, + touches: true, + + which: function( event ) { + var button = event.button; + + // Add which for key events + if ( event.which == null && rkeyEvent.test( event.type ) ) { + return event.charCode != null ? event.charCode : event.keyCode; + } + + // Add which for click: 1 === left; 2 === middle; 3 === right + if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) { + if ( button & 1 ) { + return 1; + } + + if ( button & 2 ) { + return 3; + } + + if ( button & 4 ) { + return 2; + } + + return 0; + } + + return event.which; + } +}, jQuery.event.addProp ); + +jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { + jQuery.event.special[ type ] = { + + // Utilize native event if possible so blur/focus sequence is correct + setup: function() { + + // Claim the first handler + // dataPriv.set( this, "focus", ... ) + // dataPriv.set( this, "blur", ... ) + leverageNative( this, type, expectSync ); + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function() { + + // Force setup before trigger + leverageNative( this, type ); + + // Return non-false to allow normal event-path propagation + return true; + }, + + delegateType: delegateType + }; +} ); + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +jQuery.fn.extend( { + + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + } +} ); + + +var + + /* eslint-disable max-len */ + + // See https://github.com/eslint/eslint/issues/3229 + rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, + + /* eslint-enable */ + + // Support: IE <=10 - 11, Edge 12 - 13 only + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g; + +// Prefer a tbody over its parent table for containing new rows +function manipulationTarget( elem, content ) { + if ( nodeName( elem, "table" ) && + nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { + + return jQuery( elem ).children( "tbody" )[ 0 ] || elem; + } + + return elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { + elem.type = elem.type.slice( 5 ); + } else { + elem.removeAttribute( "type" ); + } + + return elem; +} + +function cloneCopyEvent( src, dest ) { + var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; + + if ( dest.nodeType !== 1 ) { + return; + } + + // 1. Copy private data: events, handlers, etc. + if ( dataPriv.hasData( src ) ) { + pdataOld = dataPriv.access( src ); + pdataCur = dataPriv.set( dest, pdataOld ); + events = pdataOld.events; + + if ( events ) { + delete pdataCur.handle; + pdataCur.events = {}; + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + } + + // 2. Copy user data + if ( dataUser.hasData( src ) ) { + udataOld = dataUser.access( src ); + udataCur = jQuery.extend( {}, udataOld ); + + dataUser.set( dest, udataCur ); + } +} + +// Fix IE bugs, see support tests +function fixInput( src, dest ) { + var nodeName = dest.nodeName.toLowerCase(); + + // Fails to persist the checked state of a cloned checkbox or radio button. + if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + dest.checked = src.checked; + + // Fails to return the selected option to the default selected state when cloning options + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = concat.apply( [], args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + valueIsFunction = isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( valueIsFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( valueIsFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !dataPriv.access( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl && !node.noModule ) { + jQuery._evalUrl( node.src, { + nonce: node.nonce || node.getAttribute( "nonce" ) + } ); + } + } else { + DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); + } + } + } + } + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + nodes = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = nodes[ i ] ) != null; i++ ) { + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && isAttached( node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html.replace( rxhtmlTag, "<$1>" ); + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = isAttached( elem ); + + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + // Return the cloned set + return clone; + }, + + cleanData: function( elems ) { + var data, elem, type, + special = jQuery.event.special, + i = 0; + + for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { + if ( acceptData( elem ) ) { + if ( ( data = elem[ dataPriv.expando ] ) ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataPriv.expando ] = undefined; + } + if ( elem[ dataUser.expando ] ) { + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataUser.expando ] = undefined; + } + } + } + } +} ); + +jQuery.fn.extend( { + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().each( function() { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + this.textContent = value; + } + } ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + if ( elem.nodeType === 1 ) { + + // Prevent memory leaks + jQuery.cleanData( getAll( elem, false ) ); + + // Remove any remaining nodes + elem.textContent = ""; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined && elem.nodeType === 1 ) { + return elem.innerHTML; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + elem = this[ i ] || {}; + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1, + i = 0; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Support: Android <=4.0 only, PhantomJS 1 only + // .get() because push.apply(_, arraylike) throws on ancient WebKit + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); +var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); + +var getStyles = function( elem ) { + + // Support: IE <=11 only, Firefox <=30 (#15098, #14150) + // IE throws on elements created in popups + // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" + var view = elem.ownerDocument.defaultView; + + if ( !view || !view.opener ) { + view = window; + } + + return view.getComputedStyle( elem ); + }; + +var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); + + + +( function() { + + // Executing both pixelPosition & boxSizingReliable tests require only one layout + // so they're executed at the same time to save the second computation. + function computeStyleTests() { + + // This is a singleton, we need to execute it only once + if ( !div ) { + return; + } + + container.style.cssText = "position:absolute;left:-11111px;width:60px;" + + "margin-top:1px;padding:0;border:0"; + div.style.cssText = + "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + + "margin:auto;border:1px;padding:1px;" + + "width:60%;top:1%"; + documentElement.appendChild( container ).appendChild( div ); + + var divStyle = window.getComputedStyle( div ); + pixelPositionVal = divStyle.top !== "1%"; + + // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 + reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; + + // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 + // Some styles come back with percentage values, even though they shouldn't + div.style.right = "60%"; + pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; + + // Support: IE 9 - 11 only + // Detect misreporting of content dimensions for box-sizing:border-box elements + boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; + + // Support: IE 9 only + // Detect overflow:scroll screwiness (gh-3699) + // Support: Chrome <=64 + // Don't get tricked when zoom affects offsetWidth (gh-4029) + div.style.position = "absolute"; + scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; + + documentElement.removeChild( container ); + + // Nullify the div so it wouldn't be stored in the memory and + // it will also be a sign that checks already performed + div = null; + } + + function roundPixelMeasures( measure ) { + return Math.round( parseFloat( measure ) ); + } + + var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, + reliableMarginLeftVal, + container = document.createElement( "div" ), + div = document.createElement( "div" ); + + // Finish early in limited (non-browser) environments + if ( !div.style ) { + return; + } + + // Support: IE <=9 - 11 only + // Style of cloned element affects source element cloned (#8908) + div.style.backgroundClip = "content-box"; + div.cloneNode( true ).style.backgroundClip = ""; + support.clearCloneStyle = div.style.backgroundClip === "content-box"; + + jQuery.extend( support, { + boxSizingReliable: function() { + computeStyleTests(); + return boxSizingReliableVal; + }, + pixelBoxStyles: function() { + computeStyleTests(); + return pixelBoxStylesVal; + }, + pixelPosition: function() { + computeStyleTests(); + return pixelPositionVal; + }, + reliableMarginLeft: function() { + computeStyleTests(); + return reliableMarginLeftVal; + }, + scrollboxSize: function() { + computeStyleTests(); + return scrollboxSizeVal; + } + } ); +} )(); + + +function curCSS( elem, name, computed ) { + var width, minWidth, maxWidth, ret, + + // Support: Firefox 51+ + // Retrieving style before computed somehow + // fixes an issue with getting wrong values + // on detached elements + style = elem.style; + + computed = computed || getStyles( elem ); + + // getPropertyValue is needed for: + // .css('filter') (IE 9 only, #12537) + // .css('--customProperty) (#3144) + if ( computed ) { + ret = computed.getPropertyValue( name ) || computed[ name ]; + + if ( ret === "" && !isAttached( elem ) ) { + ret = jQuery.style( elem, name ); + } + + // A tribute to the "awesome hack by Dean Edwards" + // Android Browser returns percentage for some values, + // but width seems to be reliably pixels. + // This is against the CSSOM draft spec: + // https://drafts.csswg.org/cssom/#resolved-values + if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { + + // Remember the original values + width = style.width; + minWidth = style.minWidth; + maxWidth = style.maxWidth; + + // Put in the new values to get a computed value out + style.minWidth = style.maxWidth = style.width = ret; + ret = computed.width; + + // Revert the changed values + style.width = width; + style.minWidth = minWidth; + style.maxWidth = maxWidth; + } + } + + return ret !== undefined ? + + // Support: IE <=9 - 11 only + // IE returns zIndex value as an integer. + ret + "" : + ret; +} + + +function addGetHookIf( conditionFn, hookFn ) { + + // Define the hook, we'll check on the first run if it's really needed. + return { + get: function() { + if ( conditionFn() ) { + + // Hook not needed (or it's not possible to use it due + // to missing dependency), remove it. + delete this.get; + return; + } + + // Hook needed; redefine it so that the support test is not executed again. + return ( this.get = hookFn ).apply( this, arguments ); + } + }; +} + + +var cssPrefixes = [ "Webkit", "Moz", "ms" ], + emptyStyle = document.createElement( "div" ).style, + vendorProps = {}; + +// Return a vendor-prefixed property or undefined +function vendorPropName( name ) { + + // Check for vendor prefixed names + var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), + i = cssPrefixes.length; + + while ( i-- ) { + name = cssPrefixes[ i ] + capName; + if ( name in emptyStyle ) { + return name; + } + } +} + +// Return a potentially-mapped jQuery.cssProps or vendor prefixed property +function finalPropName( name ) { + var final = jQuery.cssProps[ name ] || vendorProps[ name ]; + + if ( final ) { + return final; + } + if ( name in emptyStyle ) { + return name; + } + return vendorProps[ name ] = vendorPropName( name ) || name; +} + + +var + + // Swappable if display is none or starts with table + // except "table", "table-cell", or "table-caption" + // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rcustomProp = /^--/, + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: "0", + fontWeight: "400" + }; + +function setPositiveNumber( elem, value, subtract ) { + + // Any relative (+/-) values have already been + // normalized at this point + var matches = rcssNum.exec( value ); + return matches ? + + // Guard against undefined "subtract", e.g., when used as in cssHooks + Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : + value; +} + +function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { + var i = dimension === "width" ? 1 : 0, + extra = 0, + delta = 0; + + // Adjustment may not be necessary + if ( box === ( isBorderBox ? "border" : "content" ) ) { + return 0; + } + + for ( ; i < 4; i += 2 ) { + + // Both box models exclude margin + if ( box === "margin" ) { + delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); + } + + // If we get here with a content-box, we're seeking "padding" or "border" or "margin" + if ( !isBorderBox ) { + + // Add padding + delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + + // For "border" or "margin", add border + if ( box !== "padding" ) { + delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + + // But still keep track of it otherwise + } else { + extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + + // If we get here with a border-box (content + padding + border), we're seeking "content" or + // "padding" or "margin" + } else { + + // For "content", subtract padding + if ( box === "content" ) { + delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + } + + // For "content" or "padding", subtract border + if ( box !== "margin" ) { + delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + } + } + + // Account for positive content-box scroll gutter when requested by providing computedVal + if ( !isBorderBox && computedVal >= 0 ) { + + // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border + // Assuming integer scroll gutter, subtract the rest and round down + delta += Math.max( 0, Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + computedVal - + delta - + extra - + 0.5 + + // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter + // Use an explicit zero to avoid NaN (gh-3964) + ) ) || 0; + } + + return delta; +} + +function getWidthOrHeight( elem, dimension, extra ) { + + // Start with computed style + var styles = getStyles( elem ), + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). + // Fake content-box until we know it's needed to know the true value. + boxSizingNeeded = !support.boxSizingReliable() || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + valueIsBorderBox = isBorderBox, + + val = curCSS( elem, dimension, styles ), + offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); + + // Support: Firefox <=54 + // Return a confounding non-pixel value or feign ignorance, as appropriate. + if ( rnumnonpx.test( val ) ) { + if ( !extra ) { + return val; + } + val = "auto"; + } + + + // Fall back to offsetWidth/offsetHeight when value is "auto" + // This happens for inline elements with no explicit setting (gh-3571) + // Support: Android <=4.1 - 4.3 only + // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) + // Support: IE 9-11 only + // Also use offsetWidth/offsetHeight for when box sizing is unreliable + // We use getClientRects() to check for hidden/disconnected. + // In those cases, the computed value can be trusted to be border-box + if ( ( !support.boxSizingReliable() && isBorderBox || + val === "auto" || + !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && + elem.getClientRects().length ) { + + isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; + + // Where available, offsetWidth/offsetHeight approximate border box dimensions. + // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the + // retrieved value as a content box dimension. + valueIsBorderBox = offsetProp in elem; + if ( valueIsBorderBox ) { + val = elem[ offsetProp ]; + } + } + + // Normalize "" and auto + val = parseFloat( val ) || 0; + + // Adjust for the element's box model + return ( val + + boxModelAdjustment( + elem, + dimension, + extra || ( isBorderBox ? "border" : "content" ), + valueIsBorderBox, + styles, + + // Provide the current computed size to request scroll gutter calculation (gh-3589) + val + ) + ) + "px"; +} + +jQuery.extend( { + + // Add in style property hooks for overriding the default + // behavior of getting and setting a style property + cssHooks: { + opacity: { + get: function( elem, computed ) { + if ( computed ) { + + // We should always get a number back from opacity + var ret = curCSS( elem, "opacity" ); + return ret === "" ? "1" : ret; + } + } + } + }, + + // Don't automatically add "px" to these possibly-unitless properties + cssNumber: { + "animationIterationCount": true, + "columnCount": true, + "fillOpacity": true, + "flexGrow": true, + "flexShrink": true, + "fontWeight": true, + "gridArea": true, + "gridColumn": true, + "gridColumnEnd": true, + "gridColumnStart": true, + "gridRow": true, + "gridRowEnd": true, + "gridRowStart": true, + "lineHeight": true, + "opacity": true, + "order": true, + "orphans": true, + "widows": true, + "zIndex": true, + "zoom": true + }, + + // Add in properties whose names you wish to fix before + // setting or getting the value + cssProps: {}, + + // Get and set the style property on a DOM Node + style: function( elem, name, value, extra ) { + + // Don't set styles on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { + return; + } + + // Make sure that we're working with the right name + var ret, type, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ), + style = elem.style; + + // Make sure that we're working with the right name. We don't + // want to query the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Gets hook for the prefixed version, then unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // Check if we're setting a value + if ( value !== undefined ) { + type = typeof value; + + // Convert "+=" or "-=" to relative numbers (#7345) + if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { + value = adjustCSS( elem, name, ret ); + + // Fixes bug #9237 + type = "number"; + } + + // Make sure that null and NaN values aren't set (#7116) + if ( value == null || value !== value ) { + return; + } + + // If a number was passed in, add the unit (except for certain CSS properties) + // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append + // "px" to a few hardcoded values. + if ( type === "number" && !isCustomProp ) { + value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); + } + + // background-* props affect original clone's values + if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { + style[ name ] = "inherit"; + } + + // If a hook was provided, use that value, otherwise just set the specified value + if ( !hooks || !( "set" in hooks ) || + ( value = hooks.set( elem, value, extra ) ) !== undefined ) { + + if ( isCustomProp ) { + style.setProperty( name, value ); + } else { + style[ name ] = value; + } + } + + } else { + + // If a hook was provided get the non-computed value from there + if ( hooks && "get" in hooks && + ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { + + return ret; + } + + // Otherwise just get the value from the style object + return style[ name ]; + } + }, + + css: function( elem, name, extra, styles ) { + var val, num, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ); + + // Make sure that we're working with the right name. We don't + // want to modify the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Try prefixed name followed by the unprefixed name + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // If a hook was provided get the computed value from there + if ( hooks && "get" in hooks ) { + val = hooks.get( elem, true, extra ); + } + + // Otherwise, if a way to get the computed value exists, use that + if ( val === undefined ) { + val = curCSS( elem, name, styles ); + } + + // Convert "normal" to computed value + if ( val === "normal" && name in cssNormalTransform ) { + val = cssNormalTransform[ name ]; + } + + // Make numeric if forced or a qualifier was provided and val looks numeric + if ( extra === "" || extra ) { + num = parseFloat( val ); + return extra === true || isFinite( num ) ? num || 0 : val; + } + + return val; + } +} ); + +jQuery.each( [ "height", "width" ], function( i, dimension ) { + jQuery.cssHooks[ dimension ] = { + get: function( elem, computed, extra ) { + if ( computed ) { + + // Certain elements can have dimension info if we invisibly show them + // but it must have a current display style that would benefit + return rdisplayswap.test( jQuery.css( elem, "display" ) ) && + + // Support: Safari 8+ + // Table columns in Safari have non-zero offsetWidth & zero + // getBoundingClientRect().width unless display is changed. + // Support: IE <=11 only + // Running getBoundingClientRect on a disconnected node + // in IE throws an error. + ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? + swap( elem, cssShow, function() { + return getWidthOrHeight( elem, dimension, extra ); + } ) : + getWidthOrHeight( elem, dimension, extra ); + } + }, + + set: function( elem, value, extra ) { + var matches, + styles = getStyles( elem ), + + // Only read styles.position if the test has a chance to fail + // to avoid forcing a reflow. + scrollboxSizeBuggy = !support.scrollboxSize() && + styles.position === "absolute", + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) + boxSizingNeeded = scrollboxSizeBuggy || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + subtract = extra ? + boxModelAdjustment( + elem, + dimension, + extra, + isBorderBox, + styles + ) : + 0; + + // Account for unreliable border-box dimensions by comparing offset* to computed and + // faking a content-box to get border and padding (gh-3699) + if ( isBorderBox && scrollboxSizeBuggy ) { + subtract -= Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + parseFloat( styles[ dimension ] ) - + boxModelAdjustment( elem, dimension, "border", false, styles ) - + 0.5 + ); + } + + // Convert to pixels if value adjustment is needed + if ( subtract && ( matches = rcssNum.exec( value ) ) && + ( matches[ 3 ] || "px" ) !== "px" ) { + + elem.style[ dimension ] = value; + value = jQuery.css( elem, dimension ); + } + + return setPositiveNumber( elem, value, subtract ); + } + }; +} ); + +jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, + function( elem, computed ) { + if ( computed ) { + return ( parseFloat( curCSS( elem, "marginLeft" ) ) || + elem.getBoundingClientRect().left - + swap( elem, { marginLeft: 0 }, function() { + return elem.getBoundingClientRect().left; + } ) + ) + "px"; + } + } +); + +// These hooks are used by animate to expand properties +jQuery.each( { + margin: "", + padding: "", + border: "Width" +}, function( prefix, suffix ) { + jQuery.cssHooks[ prefix + suffix ] = { + expand: function( value ) { + var i = 0, + expanded = {}, + + // Assumes a single number if not a string + parts = typeof value === "string" ? value.split( " " ) : [ value ]; + + for ( ; i < 4; i++ ) { + expanded[ prefix + cssExpand[ i ] + suffix ] = + parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; + } + + return expanded; + } + }; + + if ( prefix !== "margin" ) { + jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; + } +} ); + +jQuery.fn.extend( { + css: function( name, value ) { + return access( this, function( elem, name, value ) { + var styles, len, + map = {}, + i = 0; + + if ( Array.isArray( name ) ) { + styles = getStyles( elem ); + len = name.length; + + for ( ; i < len; i++ ) { + map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); + } + + return map; + } + + return value !== undefined ? + jQuery.style( elem, name, value ) : + jQuery.css( elem, name ); + }, name, value, arguments.length > 1 ); + } +} ); + + +function Tween( elem, options, prop, end, easing ) { + return new Tween.prototype.init( elem, options, prop, end, easing ); +} +jQuery.Tween = Tween; + +Tween.prototype = { + constructor: Tween, + init: function( elem, options, prop, end, easing, unit ) { + this.elem = elem; + this.prop = prop; + this.easing = easing || jQuery.easing._default; + this.options = options; + this.start = this.now = this.cur(); + this.end = end; + this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + }, + cur: function() { + var hooks = Tween.propHooks[ this.prop ]; + + return hooks && hooks.get ? + hooks.get( this ) : + Tween.propHooks._default.get( this ); + }, + run: function( percent ) { + var eased, + hooks = Tween.propHooks[ this.prop ]; + + if ( this.options.duration ) { + this.pos = eased = jQuery.easing[ this.easing ]( + percent, this.options.duration * percent, 0, 1, this.options.duration + ); + } else { + this.pos = eased = percent; + } + this.now = ( this.end - this.start ) * eased + this.start; + + if ( this.options.step ) { + this.options.step.call( this.elem, this.now, this ); + } + + if ( hooks && hooks.set ) { + hooks.set( this ); + } else { + Tween.propHooks._default.set( this ); + } + return this; + } +}; + +Tween.prototype.init.prototype = Tween.prototype; + +Tween.propHooks = { + _default: { + get: function( tween ) { + var result; + + // Use a property on the element directly when it is not a DOM element, + // or when there is no matching style property that exists. + if ( tween.elem.nodeType !== 1 || + tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { + return tween.elem[ tween.prop ]; + } + + // Passing an empty string as a 3rd parameter to .css will automatically + // attempt a parseFloat and fallback to a string if the parse fails. + // Simple values such as "10px" are parsed to Float; + // complex values such as "rotate(1rad)" are returned as-is. + result = jQuery.css( tween.elem, tween.prop, "" ); + + // Empty strings, null, undefined and "auto" are converted to 0. + return !result || result === "auto" ? 0 : result; + }, + set: function( tween ) { + + // Use step hook for back compat. + // Use cssHook if its there. + // Use .style if available and use plain properties where available. + if ( jQuery.fx.step[ tween.prop ] ) { + jQuery.fx.step[ tween.prop ]( tween ); + } else if ( tween.elem.nodeType === 1 && ( + jQuery.cssHooks[ tween.prop ] || + tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { + jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); + } else { + tween.elem[ tween.prop ] = tween.now; + } + } + } +}; + +// Support: IE <=9 only +// Panic based approach to setting things on disconnected nodes +Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { + set: function( tween ) { + if ( tween.elem.nodeType && tween.elem.parentNode ) { + tween.elem[ tween.prop ] = tween.now; + } + } +}; + +jQuery.easing = { + linear: function( p ) { + return p; + }, + swing: function( p ) { + return 0.5 - Math.cos( p * Math.PI ) / 2; + }, + _default: "swing" +}; + +jQuery.fx = Tween.prototype.init; + +// Back compat <1.8 extension point +jQuery.fx.step = {}; + + + + +var + fxNow, inProgress, + rfxtypes = /^(?:toggle|show|hide)$/, + rrun = /queueHooks$/; + +function schedule() { + if ( inProgress ) { + if ( document.hidden === false && window.requestAnimationFrame ) { + window.requestAnimationFrame( schedule ); + } else { + window.setTimeout( schedule, jQuery.fx.interval ); + } + + jQuery.fx.tick(); + } +} + +// Animations created synchronously will run synchronously +function createFxNow() { + window.setTimeout( function() { + fxNow = undefined; + } ); + return ( fxNow = Date.now() ); +} + +// Generate parameters to create a standard animation +function genFx( type, includeWidth ) { + var which, + i = 0, + attrs = { height: type }; + + // If we include width, step value is 1 to do all cssExpand values, + // otherwise step value is 2 to skip over Left and Right + includeWidth = includeWidth ? 1 : 0; + for ( ; i < 4; i += 2 - includeWidth ) { + which = cssExpand[ i ]; + attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; + } + + if ( includeWidth ) { + attrs.opacity = attrs.width = type; + } + + return attrs; +} + +function createTween( value, prop, animation ) { + var tween, + collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), + index = 0, + length = collection.length; + for ( ; index < length; index++ ) { + if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { + + // We're done with this property + return tween; + } + } +} + +function defaultPrefilter( elem, props, opts ) { + var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, + isBox = "width" in props || "height" in props, + anim = this, + orig = {}, + style = elem.style, + hidden = elem.nodeType && isHiddenWithinTree( elem ), + dataShow = dataPriv.get( elem, "fxshow" ); + + // Queue-skipping animations hijack the fx hooks + if ( !opts.queue ) { + hooks = jQuery._queueHooks( elem, "fx" ); + if ( hooks.unqueued == null ) { + hooks.unqueued = 0; + oldfire = hooks.empty.fire; + hooks.empty.fire = function() { + if ( !hooks.unqueued ) { + oldfire(); + } + }; + } + hooks.unqueued++; + + anim.always( function() { + + // Ensure the complete handler is called before this completes + anim.always( function() { + hooks.unqueued--; + if ( !jQuery.queue( elem, "fx" ).length ) { + hooks.empty.fire(); + } + } ); + } ); + } + + // Detect show/hide animations + for ( prop in props ) { + value = props[ prop ]; + if ( rfxtypes.test( value ) ) { + delete props[ prop ]; + toggle = toggle || value === "toggle"; + if ( value === ( hidden ? "hide" : "show" ) ) { + + // Pretend to be hidden if this is a "show" and + // there is still data from a stopped show/hide + if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { + hidden = true; + + // Ignore all other no-op show/hide data + } else { + continue; + } + } + orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); + } + } + + // Bail out if this is a no-op like .hide().hide() + propTween = !jQuery.isEmptyObject( props ); + if ( !propTween && jQuery.isEmptyObject( orig ) ) { + return; + } + + // Restrict "overflow" and "display" styles during box animations + if ( isBox && elem.nodeType === 1 ) { + + // Support: IE <=9 - 11, Edge 12 - 15 + // Record all 3 overflow attributes because IE does not infer the shorthand + // from identically-valued overflowX and overflowY and Edge just mirrors + // the overflowX value there. + opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; + + // Identify a display type, preferring old show/hide data over the CSS cascade + restoreDisplay = dataShow && dataShow.display; + if ( restoreDisplay == null ) { + restoreDisplay = dataPriv.get( elem, "display" ); + } + display = jQuery.css( elem, "display" ); + if ( display === "none" ) { + if ( restoreDisplay ) { + display = restoreDisplay; + } else { + + // Get nonempty value(s) by temporarily forcing visibility + showHide( [ elem ], true ); + restoreDisplay = elem.style.display || restoreDisplay; + display = jQuery.css( elem, "display" ); + showHide( [ elem ] ); + } + } + + // Animate inline elements as inline-block + if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { + if ( jQuery.css( elem, "float" ) === "none" ) { + + // Restore the original display value at the end of pure show/hide animations + if ( !propTween ) { + anim.done( function() { + style.display = restoreDisplay; + } ); + if ( restoreDisplay == null ) { + display = style.display; + restoreDisplay = display === "none" ? "" : display; + } + } + style.display = "inline-block"; + } + } + } + + if ( opts.overflow ) { + style.overflow = "hidden"; + anim.always( function() { + style.overflow = opts.overflow[ 0 ]; + style.overflowX = opts.overflow[ 1 ]; + style.overflowY = opts.overflow[ 2 ]; + } ); + } + + // Implement show/hide animations + propTween = false; + for ( prop in orig ) { + + // General show/hide setup for this element animation + if ( !propTween ) { + if ( dataShow ) { + if ( "hidden" in dataShow ) { + hidden = dataShow.hidden; + } + } else { + dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); + } + + // Store hidden/visible for toggle so `.stop().toggle()` "reverses" + if ( toggle ) { + dataShow.hidden = !hidden; + } + + // Show elements before animating them + if ( hidden ) { + showHide( [ elem ], true ); + } + + /* eslint-disable no-loop-func */ + + anim.done( function() { + + /* eslint-enable no-loop-func */ + + // The final step of a "hide" animation is actually hiding the element + if ( !hidden ) { + showHide( [ elem ] ); + } + dataPriv.remove( elem, "fxshow" ); + for ( prop in orig ) { + jQuery.style( elem, prop, orig[ prop ] ); + } + } ); + } + + // Per-property setup + propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); + if ( !( prop in dataShow ) ) { + dataShow[ prop ] = propTween.start; + if ( hidden ) { + propTween.end = propTween.start; + propTween.start = 0; + } + } + } +} + +function propFilter( props, specialEasing ) { + var index, name, easing, value, hooks; + + // camelCase, specialEasing and expand cssHook pass + for ( index in props ) { + name = camelCase( index ); + easing = specialEasing[ name ]; + value = props[ index ]; + if ( Array.isArray( value ) ) { + easing = value[ 1 ]; + value = props[ index ] = value[ 0 ]; + } + + if ( index !== name ) { + props[ name ] = value; + delete props[ index ]; + } + + hooks = jQuery.cssHooks[ name ]; + if ( hooks && "expand" in hooks ) { + value = hooks.expand( value ); + delete props[ name ]; + + // Not quite $.extend, this won't overwrite existing keys. + // Reusing 'index' because we have the correct "name" + for ( index in value ) { + if ( !( index in props ) ) { + props[ index ] = value[ index ]; + specialEasing[ index ] = easing; + } + } + } else { + specialEasing[ name ] = easing; + } + } +} + +function Animation( elem, properties, options ) { + var result, + stopped, + index = 0, + length = Animation.prefilters.length, + deferred = jQuery.Deferred().always( function() { + + // Don't match elem in the :animated selector + delete tick.elem; + } ), + tick = function() { + if ( stopped ) { + return false; + } + var currentTime = fxNow || createFxNow(), + remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), + + // Support: Android 2.3 only + // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) + temp = remaining / animation.duration || 0, + percent = 1 - temp, + index = 0, + length = animation.tweens.length; + + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( percent ); + } + + deferred.notifyWith( elem, [ animation, percent, remaining ] ); + + // If there's more to do, yield + if ( percent < 1 && length ) { + return remaining; + } + + // If this was an empty animation, synthesize a final progress notification + if ( !length ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + } + + // Resolve the animation and report its conclusion + deferred.resolveWith( elem, [ animation ] ); + return false; + }, + animation = deferred.promise( { + elem: elem, + props: jQuery.extend( {}, properties ), + opts: jQuery.extend( true, { + specialEasing: {}, + easing: jQuery.easing._default + }, options ), + originalProperties: properties, + originalOptions: options, + startTime: fxNow || createFxNow(), + duration: options.duration, + tweens: [], + createTween: function( prop, end ) { + var tween = jQuery.Tween( elem, animation.opts, prop, end, + animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.tweens.push( tween ); + return tween; + }, + stop: function( gotoEnd ) { + var index = 0, + + // If we are going to the end, we want to run all the tweens + // otherwise we skip this part + length = gotoEnd ? animation.tweens.length : 0; + if ( stopped ) { + return this; + } + stopped = true; + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( 1 ); + } + + // Resolve when we played the last frame; otherwise, reject + if ( gotoEnd ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + deferred.resolveWith( elem, [ animation, gotoEnd ] ); + } else { + deferred.rejectWith( elem, [ animation, gotoEnd ] ); + } + return this; + } + } ), + props = animation.props; + + propFilter( props, animation.opts.specialEasing ); + + for ( ; index < length; index++ ) { + result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); + if ( result ) { + if ( isFunction( result.stop ) ) { + jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = + result.stop.bind( result ); + } + return result; + } + } + + jQuery.map( props, createTween, animation ); + + if ( isFunction( animation.opts.start ) ) { + animation.opts.start.call( elem, animation ); + } + + // Attach callbacks from options + animation + .progress( animation.opts.progress ) + .done( animation.opts.done, animation.opts.complete ) + .fail( animation.opts.fail ) + .always( animation.opts.always ); + + jQuery.fx.timer( + jQuery.extend( tick, { + elem: elem, + anim: animation, + queue: animation.opts.queue + } ) + ); + + return animation; +} + +jQuery.Animation = jQuery.extend( Animation, { + + tweeners: { + "*": [ function( prop, value ) { + var tween = this.createTween( prop, value ); + adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); + return tween; + } ] + }, + + tweener: function( props, callback ) { + if ( isFunction( props ) ) { + callback = props; + props = [ "*" ]; + } else { + props = props.match( rnothtmlwhite ); + } + + var prop, + index = 0, + length = props.length; + + for ( ; index < length; index++ ) { + prop = props[ index ]; + Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; + Animation.tweeners[ prop ].unshift( callback ); + } + }, + + prefilters: [ defaultPrefilter ], + + prefilter: function( callback, prepend ) { + if ( prepend ) { + Animation.prefilters.unshift( callback ); + } else { + Animation.prefilters.push( callback ); + } + } +} ); + +jQuery.speed = function( speed, easing, fn ) { + var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { + complete: fn || !fn && easing || + isFunction( speed ) && speed, + duration: speed, + easing: fn && easing || easing && !isFunction( easing ) && easing + }; + + // Go to the end state if fx are off + if ( jQuery.fx.off ) { + opt.duration = 0; + + } else { + if ( typeof opt.duration !== "number" ) { + if ( opt.duration in jQuery.fx.speeds ) { + opt.duration = jQuery.fx.speeds[ opt.duration ]; + + } else { + opt.duration = jQuery.fx.speeds._default; + } + } + } + + // Normalize opt.queue - true/undefined/null -> "fx" + if ( opt.queue == null || opt.queue === true ) { + opt.queue = "fx"; + } + + // Queueing + opt.old = opt.complete; + + opt.complete = function() { + if ( isFunction( opt.old ) ) { + opt.old.call( this ); + } + + if ( opt.queue ) { + jQuery.dequeue( this, opt.queue ); + } + }; + + return opt; +}; + +jQuery.fn.extend( { + fadeTo: function( speed, to, easing, callback ) { + + // Show any hidden elements after setting opacity to 0 + return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() + + // Animate to the value specified + .end().animate( { opacity: to }, speed, easing, callback ); + }, + animate: function( prop, speed, easing, callback ) { + var empty = jQuery.isEmptyObject( prop ), + optall = jQuery.speed( speed, easing, callback ), + doAnimation = function() { + + // Operate on a copy of prop so per-property easing won't be lost + var anim = Animation( this, jQuery.extend( {}, prop ), optall ); + + // Empty animations, or finishing resolves immediately + if ( empty || dataPriv.get( this, "finish" ) ) { + anim.stop( true ); + } + }; + doAnimation.finish = doAnimation; + + return empty || optall.queue === false ? + this.each( doAnimation ) : + this.queue( optall.queue, doAnimation ); + }, + stop: function( type, clearQueue, gotoEnd ) { + var stopQueue = function( hooks ) { + var stop = hooks.stop; + delete hooks.stop; + stop( gotoEnd ); + }; + + if ( typeof type !== "string" ) { + gotoEnd = clearQueue; + clearQueue = type; + type = undefined; + } + if ( clearQueue && type !== false ) { + this.queue( type || "fx", [] ); + } + + return this.each( function() { + var dequeue = true, + index = type != null && type + "queueHooks", + timers = jQuery.timers, + data = dataPriv.get( this ); + + if ( index ) { + if ( data[ index ] && data[ index ].stop ) { + stopQueue( data[ index ] ); + } + } else { + for ( index in data ) { + if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { + stopQueue( data[ index ] ); + } + } + } + + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && + ( type == null || timers[ index ].queue === type ) ) { + + timers[ index ].anim.stop( gotoEnd ); + dequeue = false; + timers.splice( index, 1 ); + } + } + + // Start the next in the queue if the last step wasn't forced. + // Timers currently will call their complete callbacks, which + // will dequeue but only if they were gotoEnd. + if ( dequeue || !gotoEnd ) { + jQuery.dequeue( this, type ); + } + } ); + }, + finish: function( type ) { + if ( type !== false ) { + type = type || "fx"; + } + return this.each( function() { + var index, + data = dataPriv.get( this ), + queue = data[ type + "queue" ], + hooks = data[ type + "queueHooks" ], + timers = jQuery.timers, + length = queue ? queue.length : 0; + + // Enable finishing flag on private data + data.finish = true; + + // Empty the queue first + jQuery.queue( this, type, [] ); + + if ( hooks && hooks.stop ) { + hooks.stop.call( this, true ); + } + + // Look for any active animations, and finish them + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && timers[ index ].queue === type ) { + timers[ index ].anim.stop( true ); + timers.splice( index, 1 ); + } + } + + // Look for any animations in the old queue and finish them + for ( index = 0; index < length; index++ ) { + if ( queue[ index ] && queue[ index ].finish ) { + queue[ index ].finish.call( this ); + } + } + + // Turn off finishing flag + delete data.finish; + } ); + } +} ); + +jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) { + var cssFn = jQuery.fn[ name ]; + jQuery.fn[ name ] = function( speed, easing, callback ) { + return speed == null || typeof speed === "boolean" ? + cssFn.apply( this, arguments ) : + this.animate( genFx( name, true ), speed, easing, callback ); + }; +} ); + +// Generate shortcuts for custom animations +jQuery.each( { + slideDown: genFx( "show" ), + slideUp: genFx( "hide" ), + slideToggle: genFx( "toggle" ), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" } +}, function( name, props ) { + jQuery.fn[ name ] = function( speed, easing, callback ) { + return this.animate( props, speed, easing, callback ); + }; +} ); + +jQuery.timers = []; +jQuery.fx.tick = function() { + var timer, + i = 0, + timers = jQuery.timers; + + fxNow = Date.now(); + + for ( ; i < timers.length; i++ ) { + timer = timers[ i ]; + + // Run the timer and safely remove it when done (allowing for external removal) + if ( !timer() && timers[ i ] === timer ) { + timers.splice( i--, 1 ); + } + } + + if ( !timers.length ) { + jQuery.fx.stop(); + } + fxNow = undefined; +}; + +jQuery.fx.timer = function( timer ) { + jQuery.timers.push( timer ); + jQuery.fx.start(); +}; + +jQuery.fx.interval = 13; +jQuery.fx.start = function() { + if ( inProgress ) { + return; + } + + inProgress = true; + schedule(); +}; + +jQuery.fx.stop = function() { + inProgress = null; +}; + +jQuery.fx.speeds = { + slow: 600, + fast: 200, + + // Default speed + _default: 400 +}; + + +// Based off of the plugin by Clint Helfers, with permission. +// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ +jQuery.fn.delay = function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; + type = type || "fx"; + + return this.queue( type, function( next, hooks ) { + var timeout = window.setTimeout( next, time ); + hooks.stop = function() { + window.clearTimeout( timeout ); + }; + } ); +}; + + +( function() { + var input = document.createElement( "input" ), + select = document.createElement( "select" ), + opt = select.appendChild( document.createElement( "option" ) ); + + input.type = "checkbox"; + + // Support: Android <=4.3 only + // Default value for a checkbox should be "on" + support.checkOn = input.value !== ""; + + // Support: IE <=11 only + // Must access selectedIndex to make default options select + support.optSelected = opt.selected; + + // Support: IE <=11 only + // An input loses its value after becoming a radio + input = document.createElement( "input" ); + input.value = "t"; + input.type = "radio"; + support.radioValue = input.value === "t"; +} )(); + + +var boolHook, + attrHandle = jQuery.expr.attrHandle; + +jQuery.fn.extend( { + attr: function( name, value ) { + return access( this, jQuery.attr, name, value, arguments.length > 1 ); + }, + + removeAttr: function( name ) { + return this.each( function() { + jQuery.removeAttr( this, name ); + } ); + } +} ); + +jQuery.extend( { + attr: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set attributes on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + // Fallback to prop when attributes are not supported + if ( typeof elem.getAttribute === "undefined" ) { + return jQuery.prop( elem, name, value ); + } + + // Attribute hooks are determined by the lowercase version + // Grab necessary hook if one is defined + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + hooks = jQuery.attrHooks[ name.toLowerCase() ] || + ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); + } + + if ( value !== undefined ) { + if ( value === null ) { + jQuery.removeAttr( elem, name ); + return; + } + + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + elem.setAttribute( name, value + "" ); + return value; + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + ret = jQuery.find.attr( elem, name ); + + // Non-existent attributes return null, we normalize to undefined + return ret == null ? undefined : ret; + }, + + attrHooks: { + type: { + set: function( elem, value ) { + if ( !support.radioValue && value === "radio" && + nodeName( elem, "input" ) ) { + var val = elem.value; + elem.setAttribute( "type", value ); + if ( val ) { + elem.value = val; + } + return value; + } + } + } + }, + + removeAttr: function( elem, value ) { + var name, + i = 0, + + // Attribute names can contain non-HTML whitespace characters + // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 + attrNames = value && value.match( rnothtmlwhite ); + + if ( attrNames && elem.nodeType === 1 ) { + while ( ( name = attrNames[ i++ ] ) ) { + elem.removeAttribute( name ); + } + } + } +} ); + +// Hooks for boolean attributes +boolHook = { + set: function( elem, value, name ) { + if ( value === false ) { + + // Remove boolean attributes when set to false + jQuery.removeAttr( elem, name ); + } else { + elem.setAttribute( name, name ); + } + return name; + } +}; + +jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) { + var getter = attrHandle[ name ] || jQuery.find.attr; + + attrHandle[ name ] = function( elem, name, isXML ) { + var ret, handle, + lowercaseName = name.toLowerCase(); + + if ( !isXML ) { + + // Avoid an infinite loop by temporarily removing this function from the getter + handle = attrHandle[ lowercaseName ]; + attrHandle[ lowercaseName ] = ret; + ret = getter( elem, name, isXML ) != null ? + lowercaseName : + null; + attrHandle[ lowercaseName ] = handle; + } + return ret; + }; +} ); + + + + +var rfocusable = /^(?:input|select|textarea|button)$/i, + rclickable = /^(?:a|area)$/i; + +jQuery.fn.extend( { + prop: function( name, value ) { + return access( this, jQuery.prop, name, value, arguments.length > 1 ); + }, + + removeProp: function( name ) { + return this.each( function() { + delete this[ jQuery.propFix[ name ] || name ]; + } ); + } +} ); + +jQuery.extend( { + prop: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set properties on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + + // Fix name and attach hooks + name = jQuery.propFix[ name ] || name; + hooks = jQuery.propHooks[ name ]; + } + + if ( value !== undefined ) { + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + return ( elem[ name ] = value ); + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + return elem[ name ]; + }, + + propHooks: { + tabIndex: { + get: function( elem ) { + + // Support: IE <=9 - 11 only + // elem.tabIndex doesn't always return the + // correct value when it hasn't been explicitly set + // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + // Use proper attribute retrieval(#12072) + var tabindex = jQuery.find.attr( elem, "tabindex" ); + + if ( tabindex ) { + return parseInt( tabindex, 10 ); + } + + if ( + rfocusable.test( elem.nodeName ) || + rclickable.test( elem.nodeName ) && + elem.href + ) { + return 0; + } + + return -1; + } + } + }, + + propFix: { + "for": "htmlFor", + "class": "className" + } +} ); + +// Support: IE <=11 only +// Accessing the selectedIndex property +// forces the browser to respect setting selected +// on the option +// The getter ensures a default option is selected +// when in an optgroup +// eslint rule "no-unused-expressions" is disabled for this code +// since it considers such accessions noop +if ( !support.optSelected ) { + jQuery.propHooks.selected = { + get: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent && parent.parentNode ) { + parent.parentNode.selectedIndex; + } + return null; + }, + set: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent ) { + parent.selectedIndex; + + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + } + }; +} + +jQuery.each( [ + "tabIndex", + "readOnly", + "maxLength", + "cellSpacing", + "cellPadding", + "rowSpan", + "colSpan", + "useMap", + "frameBorder", + "contentEditable" +], function() { + jQuery.propFix[ this.toLowerCase() ] = this; +} ); + + + + + // Strip and collapse whitespace according to HTML spec + // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace + function stripAndCollapse( value ) { + var tokens = value.match( rnothtmlwhite ) || []; + return tokens.join( " " ); + } + + +function getClass( elem ) { + return elem.getAttribute && elem.getAttribute( "class" ) || ""; +} + +function classesToArray( value ) { + if ( Array.isArray( value ) ) { + return value; + } + if ( typeof value === "string" ) { + return value.match( rnothtmlwhite ) || []; + } + return []; +} + +jQuery.fn.extend( { + addClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + if ( cur.indexOf( " " + clazz + " " ) < 0 ) { + cur += clazz + " "; + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + if ( !arguments.length ) { + return this.attr( "class", "" ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + + // This expression is here for better compressibility (see addClass) + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + + // Remove *all* instances + while ( cur.indexOf( " " + clazz + " " ) > -1 ) { + cur = cur.replace( " " + clazz + " ", " " ); + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, + isValidValue = type === "string" || Array.isArray( value ); + + if ( typeof stateVal === "boolean" && isValidValue ) { + return stateVal ? this.addClass( value ) : this.removeClass( value ); + } + + if ( isFunction( value ) ) { + return this.each( function( i ) { + jQuery( this ).toggleClass( + value.call( this, i, getClass( this ), stateVal ), + stateVal + ); + } ); + } + + return this.each( function() { + var className, i, self, classNames; + + if ( isValidValue ) { + + // Toggle individual class names + i = 0; + self = jQuery( this ); + classNames = classesToArray( value ); + + while ( ( className = classNames[ i++ ] ) ) { + + // Check each className given, space separated list + if ( self.hasClass( className ) ) { + self.removeClass( className ); + } else { + self.addClass( className ); + } + } + + // Toggle whole class name + } else if ( value === undefined || type === "boolean" ) { + className = getClass( this ); + if ( className ) { + + // Store className if set + dataPriv.set( this, "__className__", className ); + } + + // If the element has a class name or if we're passed `false`, + // then remove the whole classname (if there was one, the above saved it). + // Otherwise bring back whatever was previously saved (if anything), + // falling back to the empty string if nothing was stored. + if ( this.setAttribute ) { + this.setAttribute( "class", + className || value === false ? + "" : + dataPriv.get( this, "__className__" ) || "" + ); + } + } + } ); + }, + + hasClass: function( selector ) { + var className, elem, + i = 0; + + className = " " + selector + " "; + while ( ( elem = this[ i++ ] ) ) { + if ( elem.nodeType === 1 && + ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { + return true; + } + } + + return false; + } +} ); + + + + +var rreturn = /\r/g; + +jQuery.fn.extend( { + val: function( value ) { + var hooks, ret, valueIsFunction, + elem = this[ 0 ]; + + if ( !arguments.length ) { + if ( elem ) { + hooks = jQuery.valHooks[ elem.type ] || + jQuery.valHooks[ elem.nodeName.toLowerCase() ]; + + if ( hooks && + "get" in hooks && + ( ret = hooks.get( elem, "value" ) ) !== undefined + ) { + return ret; + } + + ret = elem.value; + + // Handle most common string cases + if ( typeof ret === "string" ) { + return ret.replace( rreturn, "" ); + } + + // Handle cases where value is null/undef or number + return ret == null ? "" : ret; + } + + return; + } + + valueIsFunction = isFunction( value ); + + return this.each( function( i ) { + var val; + + if ( this.nodeType !== 1 ) { + return; + } + + if ( valueIsFunction ) { + val = value.call( this, i, jQuery( this ).val() ); + } else { + val = value; + } + + // Treat null/undefined as ""; convert numbers to string + if ( val == null ) { + val = ""; + + } else if ( typeof val === "number" ) { + val += ""; + + } else if ( Array.isArray( val ) ) { + val = jQuery.map( val, function( value ) { + return value == null ? "" : value + ""; + } ); + } + + hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; + + // If set returns undefined, fall back to normal setting + if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { + this.value = val; + } + } ); + } +} ); + +jQuery.extend( { + valHooks: { + option: { + get: function( elem ) { + + var val = jQuery.find.attr( elem, "value" ); + return val != null ? + val : + + // Support: IE <=10 - 11 only + // option.text throws exceptions (#14686, #14858) + // Strip and collapse whitespace + // https://html.spec.whatwg.org/#strip-and-collapse-whitespace + stripAndCollapse( jQuery.text( elem ) ); + } + }, + select: { + get: function( elem ) { + var value, option, i, + options = elem.options, + index = elem.selectedIndex, + one = elem.type === "select-one", + values = one ? null : [], + max = one ? index + 1 : options.length; + + if ( index < 0 ) { + i = max; + + } else { + i = one ? index : 0; + } + + // Loop through all the selected options + for ( ; i < max; i++ ) { + option = options[ i ]; + + // Support: IE <=9 only + // IE8-9 doesn't update selected after form reset (#2551) + if ( ( option.selected || i === index ) && + + // Don't return options that are disabled or in a disabled optgroup + !option.disabled && + ( !option.parentNode.disabled || + !nodeName( option.parentNode, "optgroup" ) ) ) { + + // Get the specific value for the option + value = jQuery( option ).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + }, + + set: function( elem, value ) { + var optionSet, option, + options = elem.options, + values = jQuery.makeArray( value ), + i = options.length; + + while ( i-- ) { + option = options[ i ]; + + /* eslint-disable no-cond-assign */ + + if ( option.selected = + jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 + ) { + optionSet = true; + } + + /* eslint-enable no-cond-assign */ + } + + // Force browsers to behave consistently when non-matching value is set + if ( !optionSet ) { + elem.selectedIndex = -1; + } + return values; + } + } + } +} ); + +// Radios and checkboxes getter/setter +jQuery.each( [ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = { + set: function( elem, value ) { + if ( Array.isArray( value ) ) { + return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); + } + } + }; + if ( !support.checkOn ) { + jQuery.valHooks[ this ].get = function( elem ) { + return elem.getAttribute( "value" ) === null ? "on" : elem.value; + }; + } +} ); + + + + +// Return jQuery for attributes-only inclusion + + +support.focusin = "onfocusin" in window; + + +var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + stopPropagationCallback = function( e ) { + e.stopPropagation(); + }; + +jQuery.extend( jQuery.event, { + + trigger: function( event, data, elem, onlyHandlers ) { + + var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; + + cur = lastElement = tmp = elem = elem || document; + + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "." ) > -1 ) { + + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split( "." ); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf( ":" ) < 0 && "on" + type; + + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); + + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join( "." ); + event.rnamespace = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : + null; + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === ( elem.ownerDocument || document ) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } + } + + // Fire handlers on the event path + i = 0; + while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { + lastElement = cur; + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( dataPriv.get( cur, "events" ) || {} )[ event.type ] && + dataPriv.get( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( ( !special._default || + special._default.apply( eventPath.pop(), data ) === false ) && + acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name as the event. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + + if ( event.isPropagationStopped() ) { + lastElement.addEventListener( type, stopPropagationCallback ); + } + + elem[ type ](); + + if ( event.isPropagationStopped() ) { + lastElement.removeEventListener( type, stopPropagationCallback ); + } + + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + // Piggyback on a donor event to simulate a different one + // Used only for `focus(in | out)` events + simulate: function( type, elem, event ) { + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true + } + ); + + jQuery.event.trigger( e, null, elem ); + } + +} ); + +jQuery.fn.extend( { + + trigger: function( type, data ) { + return this.each( function() { + jQuery.event.trigger( type, data, this ); + } ); + }, + triggerHandler: function( type, data ) { + var elem = this[ 0 ]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } + } +} ); + + +// Support: Firefox <=44 +// Firefox doesn't have focus(in | out) events +// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 +// +// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 +// focus(in | out) events fire after focus & blur events, +// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order +// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 +if ( !support.focusin ) { + jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + var doc = this.ownerDocument || this, + attaches = dataPriv.access( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this, + attaches = dataPriv.access( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + dataPriv.remove( doc, fix ); + + } else { + dataPriv.access( doc, fix, attaches ); + } + } + }; + } ); +} +var location = window.location; + +var nonce = Date.now(); + +var rquery = ( /\?/ ); + + + +// Cross-browser xml parsing +jQuery.parseXML = function( data ) { + var xml; + if ( !data || typeof data !== "string" ) { + return null; + } + + // Support: IE 9 - 11 only + // IE throws on parseFromString with invalid input. + try { + xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); + } catch ( e ) { + xml = undefined; + } + + if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) { + jQuery.error( "Invalid XML: " + data ); + } + return xml; +}; + + +var + rbracket = /\[\]$/, + rCRLF = /\r?\n/g, + rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, + rsubmittable = /^(?:input|select|textarea|keygen)/i; + +function buildParams( prefix, obj, traditional, add ) { + var name; + + if ( Array.isArray( obj ) ) { + + // Serialize array item. + jQuery.each( obj, function( i, v ) { + if ( traditional || rbracket.test( prefix ) ) { + + // Treat each array item as a scalar. + add( prefix, v ); + + } else { + + // Item is non-scalar (array or object), encode its numeric index. + buildParams( + prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", + v, + traditional, + add + ); + } + } ); + + } else if ( !traditional && toType( obj ) === "object" ) { + + // Serialize object item. + for ( name in obj ) { + buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); + } + + } else { + + // Serialize scalar item. + add( prefix, obj ); + } +} + +// Serialize an array of form elements or a set of +// key/values into a query string +jQuery.param = function( a, traditional ) { + var prefix, + s = [], + add = function( key, valueOrFunction ) { + + // If value is a function, invoke it and use its return value + var value = isFunction( valueOrFunction ) ? + valueOrFunction() : + valueOrFunction; + + s[ s.length ] = encodeURIComponent( key ) + "=" + + encodeURIComponent( value == null ? "" : value ); + }; + + if ( a == null ) { + return ""; + } + + // If an array was passed in, assume that it is an array of form elements. + if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { + + // Serialize the form elements + jQuery.each( a, function() { + add( this.name, this.value ); + } ); + + } else { + + // If traditional, encode the "old" way (the way 1.3.2 or older + // did it), otherwise encode params recursively. + for ( prefix in a ) { + buildParams( prefix, a[ prefix ], traditional, add ); + } + } + + // Return the resulting serialization + return s.join( "&" ); +}; + +jQuery.fn.extend( { + serialize: function() { + return jQuery.param( this.serializeArray() ); + }, + serializeArray: function() { + return this.map( function() { + + // Can add propHook for "elements" to filter or add form elements + var elements = jQuery.prop( this, "elements" ); + return elements ? jQuery.makeArray( elements ) : this; + } ) + .filter( function() { + var type = this.type; + + // Use .is( ":disabled" ) so that fieldset[disabled] works + return this.name && !jQuery( this ).is( ":disabled" ) && + rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && + ( this.checked || !rcheckableType.test( type ) ); + } ) + .map( function( i, elem ) { + var val = jQuery( this ).val(); + + if ( val == null ) { + return null; + } + + if ( Array.isArray( val ) ) { + return jQuery.map( val, function( val ) { + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ); + } + + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ).get(); + } +} ); + + +var + r20 = /%20/g, + rhash = /#.*$/, + rantiCache = /([?&])_=[^&]*/, + rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, + + // #7653, #8125, #8152: local protocol detection + rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, + rnoContent = /^(?:GET|HEAD)$/, + rprotocol = /^\/\//, + + /* Prefilters + * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) + * 2) These are called: + * - BEFORE asking for a transport + * - AFTER param serialization (s.data is a string if s.processData is true) + * 3) key is the dataType + * 4) the catchall symbol "*" can be used + * 5) execution will start with transport dataType and THEN continue down to "*" if needed + */ + prefilters = {}, + + /* Transports bindings + * 1) key is the dataType + * 2) the catchall symbol "*" can be used + * 3) selection will start with transport dataType and THEN go to "*" if needed + */ + transports = {}, + + // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression + allTypes = "*/".concat( "*" ), + + // Anchor tag for parsing the document origin + originAnchor = document.createElement( "a" ); + originAnchor.href = location.href; + +// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport +function addToPrefiltersOrTransports( structure ) { + + // dataTypeExpression is optional and defaults to "*" + return function( dataTypeExpression, func ) { + + if ( typeof dataTypeExpression !== "string" ) { + func = dataTypeExpression; + dataTypeExpression = "*"; + } + + var dataType, + i = 0, + dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; + + if ( isFunction( func ) ) { + + // For each dataType in the dataTypeExpression + while ( ( dataType = dataTypes[ i++ ] ) ) { + + // Prepend if requested + if ( dataType[ 0 ] === "+" ) { + dataType = dataType.slice( 1 ) || "*"; + ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); + + // Otherwise append + } else { + ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); + } + } + } + }; +} + +// Base inspection function for prefilters and transports +function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { + + var inspected = {}, + seekingTransport = ( structure === transports ); + + function inspect( dataType ) { + var selected; + inspected[ dataType ] = true; + jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { + var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); + if ( typeof dataTypeOrTransport === "string" && + !seekingTransport && !inspected[ dataTypeOrTransport ] ) { + + options.dataTypes.unshift( dataTypeOrTransport ); + inspect( dataTypeOrTransport ); + return false; + } else if ( seekingTransport ) { + return !( selected = dataTypeOrTransport ); + } + } ); + return selected; + } + + return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); +} + +// A special extend for ajax options +// that takes "flat" options (not to be deep extended) +// Fixes #9887 +function ajaxExtend( target, src ) { + var key, deep, + flatOptions = jQuery.ajaxSettings.flatOptions || {}; + + for ( key in src ) { + if ( src[ key ] !== undefined ) { + ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; + } + } + if ( deep ) { + jQuery.extend( true, target, deep ); + } + + return target; +} + +/* Handles responses to an ajax request: + * - finds the right dataType (mediates between content-type and expected dataType) + * - returns the corresponding response + */ +function ajaxHandleResponses( s, jqXHR, responses ) { + + var ct, type, finalDataType, firstDataType, + contents = s.contents, + dataTypes = s.dataTypes; + + // Remove auto dataType and get content-type in the process + while ( dataTypes[ 0 ] === "*" ) { + dataTypes.shift(); + if ( ct === undefined ) { + ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); + } + } + + // Check if we're dealing with a known content-type + if ( ct ) { + for ( type in contents ) { + if ( contents[ type ] && contents[ type ].test( ct ) ) { + dataTypes.unshift( type ); + break; + } + } + } + + // Check to see if we have a response for the expected dataType + if ( dataTypes[ 0 ] in responses ) { + finalDataType = dataTypes[ 0 ]; + } else { + + // Try convertible dataTypes + for ( type in responses ) { + if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { + finalDataType = type; + break; + } + if ( !firstDataType ) { + firstDataType = type; + } + } + + // Or just use first one + finalDataType = finalDataType || firstDataType; + } + + // If we found a dataType + // We add the dataType to the list if needed + // and return the corresponding response + if ( finalDataType ) { + if ( finalDataType !== dataTypes[ 0 ] ) { + dataTypes.unshift( finalDataType ); + } + return responses[ finalDataType ]; + } +} + +/* Chain conversions given the request and the original response + * Also sets the responseXXX fields on the jqXHR instance + */ +function ajaxConvert( s, response, jqXHR, isSuccess ) { + var conv2, current, conv, tmp, prev, + converters = {}, + + // Work with a copy of dataTypes in case we need to modify it for conversion + dataTypes = s.dataTypes.slice(); + + // Create converters map with lowercased keys + if ( dataTypes[ 1 ] ) { + for ( conv in s.converters ) { + converters[ conv.toLowerCase() ] = s.converters[ conv ]; + } + } + + current = dataTypes.shift(); + + // Convert to each sequential dataType + while ( current ) { + + if ( s.responseFields[ current ] ) { + jqXHR[ s.responseFields[ current ] ] = response; + } + + // Apply the dataFilter if provided + if ( !prev && isSuccess && s.dataFilter ) { + response = s.dataFilter( response, s.dataType ); + } + + prev = current; + current = dataTypes.shift(); + + if ( current ) { + + // There's only work to do if current dataType is non-auto + if ( current === "*" ) { + + current = prev; + + // Convert response if prev dataType is non-auto and differs from current + } else if ( prev !== "*" && prev !== current ) { + + // Seek a direct converter + conv = converters[ prev + " " + current ] || converters[ "* " + current ]; + + // If none found, seek a pair + if ( !conv ) { + for ( conv2 in converters ) { + + // If conv2 outputs current + tmp = conv2.split( " " ); + if ( tmp[ 1 ] === current ) { + + // If prev can be converted to accepted input + conv = converters[ prev + " " + tmp[ 0 ] ] || + converters[ "* " + tmp[ 0 ] ]; + if ( conv ) { + + // Condense equivalence converters + if ( conv === true ) { + conv = converters[ conv2 ]; + + // Otherwise, insert the intermediate dataType + } else if ( converters[ conv2 ] !== true ) { + current = tmp[ 0 ]; + dataTypes.unshift( tmp[ 1 ] ); + } + break; + } + } + } + } + + // Apply converter (if not an equivalence) + if ( conv !== true ) { + + // Unless errors are allowed to bubble, catch and return them + if ( conv && s.throws ) { + response = conv( response ); + } else { + try { + response = conv( response ); + } catch ( e ) { + return { + state: "parsererror", + error: conv ? e : "No conversion from " + prev + " to " + current + }; + } + } + } + } + } + } + + return { state: "success", data: response }; +} + +jQuery.extend( { + + // Counter for holding the number of active queries + active: 0, + + // Last-Modified header cache for next request + lastModified: {}, + etag: {}, + + ajaxSettings: { + url: location.href, + type: "GET", + isLocal: rlocalProtocol.test( location.protocol ), + global: true, + processData: true, + async: true, + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + + /* + timeout: 0, + data: null, + dataType: null, + username: null, + password: null, + cache: null, + throws: false, + traditional: false, + headers: {}, + */ + + accepts: { + "*": allTypes, + text: "text/plain", + html: "text/html", + xml: "application/xml, text/xml", + json: "application/json, text/javascript" + }, + + contents: { + xml: /\bxml\b/, + html: /\bhtml/, + json: /\bjson\b/ + }, + + responseFields: { + xml: "responseXML", + text: "responseText", + json: "responseJSON" + }, + + // Data converters + // Keys separate source (or catchall "*") and destination types with a single space + converters: { + + // Convert anything to text + "* text": String, + + // Text to html (true = no transformation) + "text html": true, + + // Evaluate text as a json expression + "text json": JSON.parse, + + // Parse text as xml + "text xml": jQuery.parseXML + }, + + // For options that shouldn't be deep extended: + // you can add your own custom options here if + // and when you create one that shouldn't be + // deep extended (see ajaxExtend) + flatOptions: { + url: true, + context: true + } + }, + + // Creates a full fledged settings object into target + // with both ajaxSettings and settings fields. + // If target is omitted, writes into ajaxSettings. + ajaxSetup: function( target, settings ) { + return settings ? + + // Building a settings object + ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : + + // Extending ajaxSettings + ajaxExtend( jQuery.ajaxSettings, target ); + }, + + ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), + ajaxTransport: addToPrefiltersOrTransports( transports ), + + // Main method + ajax: function( url, options ) { + + // If url is an object, simulate pre-1.5 signature + if ( typeof url === "object" ) { + options = url; + url = undefined; + } + + // Force options to be an object + options = options || {}; + + var transport, + + // URL without anti-cache param + cacheURL, + + // Response headers + responseHeadersString, + responseHeaders, + + // timeout handle + timeoutTimer, + + // Url cleanup var + urlAnchor, + + // Request state (becomes false upon send and true upon completion) + completed, + + // To know if global events are to be dispatched + fireGlobals, + + // Loop variable + i, + + // uncached part of the url + uncached, + + // Create the final options object + s = jQuery.ajaxSetup( {}, options ), + + // Callbacks context + callbackContext = s.context || s, + + // Context for global events is callbackContext if it is a DOM node or jQuery collection + globalEventContext = s.context && + ( callbackContext.nodeType || callbackContext.jquery ) ? + jQuery( callbackContext ) : + jQuery.event, + + // Deferreds + deferred = jQuery.Deferred(), + completeDeferred = jQuery.Callbacks( "once memory" ), + + // Status-dependent callbacks + statusCode = s.statusCode || {}, + + // Headers (they are sent all at once) + requestHeaders = {}, + requestHeadersNames = {}, + + // Default abort message + strAbort = "canceled", + + // Fake xhr + jqXHR = { + readyState: 0, + + // Builds headers hashtable if needed + getResponseHeader: function( key ) { + var match; + if ( completed ) { + if ( !responseHeaders ) { + responseHeaders = {}; + while ( ( match = rheaders.exec( responseHeadersString ) ) ) { + responseHeaders[ match[ 1 ].toLowerCase() + " " ] = + ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) + .concat( match[ 2 ] ); + } + } + match = responseHeaders[ key.toLowerCase() + " " ]; + } + return match == null ? null : match.join( ", " ); + }, + + // Raw string + getAllResponseHeaders: function() { + return completed ? responseHeadersString : null; + }, + + // Caches the header + setRequestHeader: function( name, value ) { + if ( completed == null ) { + name = requestHeadersNames[ name.toLowerCase() ] = + requestHeadersNames[ name.toLowerCase() ] || name; + requestHeaders[ name ] = value; + } + return this; + }, + + // Overrides response content-type header + overrideMimeType: function( type ) { + if ( completed == null ) { + s.mimeType = type; + } + return this; + }, + + // Status-dependent callbacks + statusCode: function( map ) { + var code; + if ( map ) { + if ( completed ) { + + // Execute the appropriate callbacks + jqXHR.always( map[ jqXHR.status ] ); + } else { + + // Lazy-add the new callbacks in a way that preserves old ones + for ( code in map ) { + statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; + } + } + } + return this; + }, + + // Cancel the request + abort: function( statusText ) { + var finalText = statusText || strAbort; + if ( transport ) { + transport.abort( finalText ); + } + done( 0, finalText ); + return this; + } + }; + + // Attach deferreds + deferred.promise( jqXHR ); + + // Add protocol if not provided (prefilters might expect it) + // Handle falsy url in the settings object (#10093: consistency with old signature) + // We also use the url parameter if available + s.url = ( ( url || s.url || location.href ) + "" ) + .replace( rprotocol, location.protocol + "//" ); + + // Alias method option to type as per ticket #12004 + s.type = options.method || options.type || s.method || s.type; + + // Extract dataTypes list + s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; + + // A cross-domain request is in order when the origin doesn't match the current origin. + if ( s.crossDomain == null ) { + urlAnchor = document.createElement( "a" ); + + // Support: IE <=8 - 11, Edge 12 - 15 + // IE throws exception on accessing the href property if url is malformed, + // e.g. http://example.com:80x/ + try { + urlAnchor.href = s.url; + + // Support: IE <=8 - 11 only + // Anchor's host property isn't correctly set when s.url is relative + urlAnchor.href = urlAnchor.href; + s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== + urlAnchor.protocol + "//" + urlAnchor.host; + } catch ( e ) { + + // If there is an error parsing the URL, assume it is crossDomain, + // it can be rejected by the transport if it is invalid + s.crossDomain = true; + } + } + + // Convert data if not already a string + if ( s.data && s.processData && typeof s.data !== "string" ) { + s.data = jQuery.param( s.data, s.traditional ); + } + + // Apply prefilters + inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); + + // If request was aborted inside a prefilter, stop there + if ( completed ) { + return jqXHR; + } + + // We can fire global events as of now if asked to + // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) + fireGlobals = jQuery.event && s.global; + + // Watch for a new set of requests + if ( fireGlobals && jQuery.active++ === 0 ) { + jQuery.event.trigger( "ajaxStart" ); + } + + // Uppercase the type + s.type = s.type.toUpperCase(); + + // Determine if request has content + s.hasContent = !rnoContent.test( s.type ); + + // Save the URL in case we're toying with the If-Modified-Since + // and/or If-None-Match header later on + // Remove hash to simplify url manipulation + cacheURL = s.url.replace( rhash, "" ); + + // More options handling for requests with no content + if ( !s.hasContent ) { + + // Remember the hash so we can put it back + uncached = s.url.slice( cacheURL.length ); + + // If data is available and should be processed, append data to url + if ( s.data && ( s.processData || typeof s.data === "string" ) ) { + cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; + + // #9682: remove data so that it's not used in an eventual retry + delete s.data; + } + + // Add or update anti-cache param if needed + if ( s.cache === false ) { + cacheURL = cacheURL.replace( rantiCache, "$1" ); + uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce++ ) + uncached; + } + + // Put hash and anti-cache on the URL that will be requested (gh-1732) + s.url = cacheURL + uncached; + + // Change '%20' to '+' if this is encoded form body content (gh-2658) + } else if ( s.data && s.processData && + ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { + s.data = s.data.replace( r20, "+" ); + } + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + if ( jQuery.lastModified[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); + } + if ( jQuery.etag[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); + } + } + + // Set the correct header, if data is being sent + if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { + jqXHR.setRequestHeader( "Content-Type", s.contentType ); + } + + // Set the Accepts header for the server, depending on the dataType + jqXHR.setRequestHeader( + "Accept", + s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? + s.accepts[ s.dataTypes[ 0 ] ] + + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : + s.accepts[ "*" ] + ); + + // Check for headers option + for ( i in s.headers ) { + jqXHR.setRequestHeader( i, s.headers[ i ] ); + } + + // Allow custom headers/mimetypes and early abort + if ( s.beforeSend && + ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { + + // Abort if not done already and return + return jqXHR.abort(); + } + + // Aborting is no longer a cancellation + strAbort = "abort"; + + // Install callbacks on deferreds + completeDeferred.add( s.complete ); + jqXHR.done( s.success ); + jqXHR.fail( s.error ); + + // Get transport + transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); + + // If no transport, we auto-abort + if ( !transport ) { + done( -1, "No Transport" ); + } else { + jqXHR.readyState = 1; + + // Send global event + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); + } + + // If request was aborted inside ajaxSend, stop there + if ( completed ) { + return jqXHR; + } + + // Timeout + if ( s.async && s.timeout > 0 ) { + timeoutTimer = window.setTimeout( function() { + jqXHR.abort( "timeout" ); + }, s.timeout ); + } + + try { + completed = false; + transport.send( requestHeaders, done ); + } catch ( e ) { + + // Rethrow post-completion exceptions + if ( completed ) { + throw e; + } + + // Propagate others as results + done( -1, e ); + } + } + + // Callback for when everything is done + function done( status, nativeStatusText, responses, headers ) { + var isSuccess, success, error, response, modified, + statusText = nativeStatusText; + + // Ignore repeat invocations + if ( completed ) { + return; + } + + completed = true; + + // Clear timeout if it exists + if ( timeoutTimer ) { + window.clearTimeout( timeoutTimer ); + } + + // Dereference transport for early garbage collection + // (no matter how long the jqXHR object will be used) + transport = undefined; + + // Cache response headers + responseHeadersString = headers || ""; + + // Set readyState + jqXHR.readyState = status > 0 ? 4 : 0; + + // Determine if successful + isSuccess = status >= 200 && status < 300 || status === 304; + + // Get response data + if ( responses ) { + response = ajaxHandleResponses( s, jqXHR, responses ); + } + + // Convert no matter what (that way responseXXX fields are always set) + response = ajaxConvert( s, response, jqXHR, isSuccess ); + + // If successful, handle type chaining + if ( isSuccess ) { + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + modified = jqXHR.getResponseHeader( "Last-Modified" ); + if ( modified ) { + jQuery.lastModified[ cacheURL ] = modified; + } + modified = jqXHR.getResponseHeader( "etag" ); + if ( modified ) { + jQuery.etag[ cacheURL ] = modified; + } + } + + // if no content + if ( status === 204 || s.type === "HEAD" ) { + statusText = "nocontent"; + + // if not modified + } else if ( status === 304 ) { + statusText = "notmodified"; + + // If we have data, let's convert it + } else { + statusText = response.state; + success = response.data; + error = response.error; + isSuccess = !error; + } + } else { + + // Extract error from statusText and normalize for non-aborts + error = statusText; + if ( status || !statusText ) { + statusText = "error"; + if ( status < 0 ) { + status = 0; + } + } + } + + // Set data for the fake xhr object + jqXHR.status = status; + jqXHR.statusText = ( nativeStatusText || statusText ) + ""; + + // Success/Error + if ( isSuccess ) { + deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); + } else { + deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); + } + + // Status-dependent callbacks + jqXHR.statusCode( statusCode ); + statusCode = undefined; + + if ( fireGlobals ) { + globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", + [ jqXHR, s, isSuccess ? success : error ] ); + } + + // Complete + completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); + + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); + + // Handle the global AJAX counter + if ( !( --jQuery.active ) ) { + jQuery.event.trigger( "ajaxStop" ); + } + } + } + + return jqXHR; + }, + + getJSON: function( url, data, callback ) { + return jQuery.get( url, data, callback, "json" ); + }, + + getScript: function( url, callback ) { + return jQuery.get( url, undefined, callback, "script" ); + } +} ); + +jQuery.each( [ "get", "post" ], function( i, method ) { + jQuery[ method ] = function( url, data, callback, type ) { + + // Shift arguments if data argument was omitted + if ( isFunction( data ) ) { + type = type || callback; + callback = data; + data = undefined; + } + + // The url can be an options object (which then must have .url) + return jQuery.ajax( jQuery.extend( { + url: url, + type: method, + dataType: type, + data: data, + success: callback + }, jQuery.isPlainObject( url ) && url ) ); + }; +} ); + + +jQuery._evalUrl = function( url, options ) { + return jQuery.ajax( { + url: url, + + // Make this explicit, since user can override this through ajaxSetup (#11264) + type: "GET", + dataType: "script", + cache: true, + async: false, + global: false, + + // Only evaluate the response if it is successful (gh-4126) + // dataFilter is not invoked for failure responses, so using it instead + // of the default converter is kludgy but it works. + converters: { + "text script": function() {} + }, + dataFilter: function( response ) { + jQuery.globalEval( response, options ); + } + } ); +}; + + +jQuery.fn.extend( { + wrapAll: function( html ) { + var wrap; + + if ( this[ 0 ] ) { + if ( isFunction( html ) ) { + html = html.call( this[ 0 ] ); + } + + // The elements to wrap the target around + wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); + + if ( this[ 0 ].parentNode ) { + wrap.insertBefore( this[ 0 ] ); + } + + wrap.map( function() { + var elem = this; + + while ( elem.firstElementChild ) { + elem = elem.firstElementChild; + } + + return elem; + } ).append( this ); + } + + return this; + }, + + wrapInner: function( html ) { + if ( isFunction( html ) ) { + return this.each( function( i ) { + jQuery( this ).wrapInner( html.call( this, i ) ); + } ); + } + + return this.each( function() { + var self = jQuery( this ), + contents = self.contents(); + + if ( contents.length ) { + contents.wrapAll( html ); + + } else { + self.append( html ); + } + } ); + }, + + wrap: function( html ) { + var htmlIsFunction = isFunction( html ); + + return this.each( function( i ) { + jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); + } ); + }, + + unwrap: function( selector ) { + this.parent( selector ).not( "body" ).each( function() { + jQuery( this ).replaceWith( this.childNodes ); + } ); + return this; + } +} ); + + +jQuery.expr.pseudos.hidden = function( elem ) { + return !jQuery.expr.pseudos.visible( elem ); +}; +jQuery.expr.pseudos.visible = function( elem ) { + return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); +}; + + + + +jQuery.ajaxSettings.xhr = function() { + try { + return new window.XMLHttpRequest(); + } catch ( e ) {} +}; + +var xhrSuccessStatus = { + + // File protocol always yields status code 0, assume 200 + 0: 200, + + // Support: IE <=9 only + // #1450: sometimes IE returns 1223 when it should be 204 + 1223: 204 + }, + xhrSupported = jQuery.ajaxSettings.xhr(); + +support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); +support.ajax = xhrSupported = !!xhrSupported; + +jQuery.ajaxTransport( function( options ) { + var callback, errorCallback; + + // Cross domain only allowed if supported through XMLHttpRequest + if ( support.cors || xhrSupported && !options.crossDomain ) { + return { + send: function( headers, complete ) { + var i, + xhr = options.xhr(); + + xhr.open( + options.type, + options.url, + options.async, + options.username, + options.password + ); + + // Apply custom fields if provided + if ( options.xhrFields ) { + for ( i in options.xhrFields ) { + xhr[ i ] = options.xhrFields[ i ]; + } + } + + // Override mime type if needed + if ( options.mimeType && xhr.overrideMimeType ) { + xhr.overrideMimeType( options.mimeType ); + } + + // X-Requested-With header + // For cross-domain requests, seeing as conditions for a preflight are + // akin to a jigsaw puzzle, we simply never set it to be sure. + // (it can always be set on a per-request basis or even using ajaxSetup) + // For same-domain requests, won't change header if already provided. + if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { + headers[ "X-Requested-With" ] = "XMLHttpRequest"; + } + + // Set headers + for ( i in headers ) { + xhr.setRequestHeader( i, headers[ i ] ); + } + + // Callback + callback = function( type ) { + return function() { + if ( callback ) { + callback = errorCallback = xhr.onload = + xhr.onerror = xhr.onabort = xhr.ontimeout = + xhr.onreadystatechange = null; + + if ( type === "abort" ) { + xhr.abort(); + } else if ( type === "error" ) { + + // Support: IE <=9 only + // On a manual native abort, IE9 throws + // errors on any property access that is not readyState + if ( typeof xhr.status !== "number" ) { + complete( 0, "error" ); + } else { + complete( + + // File: protocol always yields status 0; see #8605, #14207 + xhr.status, + xhr.statusText + ); + } + } else { + complete( + xhrSuccessStatus[ xhr.status ] || xhr.status, + xhr.statusText, + + // Support: IE <=9 only + // IE9 has no XHR2 but throws on binary (trac-11426) + // For XHR2 non-text, let the caller handle it (gh-2498) + ( xhr.responseType || "text" ) !== "text" || + typeof xhr.responseText !== "string" ? + { binary: xhr.response } : + { text: xhr.responseText }, + xhr.getAllResponseHeaders() + ); + } + } + }; + }; + + // Listen to events + xhr.onload = callback(); + errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); + + // Support: IE 9 only + // Use onreadystatechange to replace onabort + // to handle uncaught aborts + if ( xhr.onabort !== undefined ) { + xhr.onabort = errorCallback; + } else { + xhr.onreadystatechange = function() { + + // Check readyState before timeout as it changes + if ( xhr.readyState === 4 ) { + + // Allow onerror to be called first, + // but that will not handle a native abort + // Also, save errorCallback to a variable + // as xhr.onerror cannot be accessed + window.setTimeout( function() { + if ( callback ) { + errorCallback(); + } + } ); + } + }; + } + + // Create the abort callback + callback = callback( "abort" ); + + try { + + // Do send the request (this may raise an exception) + xhr.send( options.hasContent && options.data || null ); + } catch ( e ) { + + // #14683: Only rethrow if this hasn't been notified as an error yet + if ( callback ) { + throw e; + } + } + }, + + abort: function() { + if ( callback ) { + callback(); + } + } + }; + } +} ); + + + + +// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) +jQuery.ajaxPrefilter( function( s ) { + if ( s.crossDomain ) { + s.contents.script = false; + } +} ); + +// Install script dataType +jQuery.ajaxSetup( { + accepts: { + script: "text/javascript, application/javascript, " + + "application/ecmascript, application/x-ecmascript" + }, + contents: { + script: /\b(?:java|ecma)script\b/ + }, + converters: { + "text script": function( text ) { + jQuery.globalEval( text ); + return text; + } + } +} ); + +// Handle cache's special case and crossDomain +jQuery.ajaxPrefilter( "script", function( s ) { + if ( s.cache === undefined ) { + s.cache = false; + } + if ( s.crossDomain ) { + s.type = "GET"; + } +} ); + +// Bind script tag hack transport +jQuery.ajaxTransport( "script", function( s ) { + + // This transport only deals with cross domain or forced-by-attrs requests + if ( s.crossDomain || s.scriptAttrs ) { + var script, callback; + return { + send: function( _, complete ) { + script = jQuery( " + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Array.array.html b/docs/1.9.0.1/attribute/cfdm.Array.array.html new file mode 100644 index 0000000000..51837b167a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Array.array.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Array.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.array

+
+
+Array.array
+

Return an independent numpy array containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Array.dtype.html b/docs/1.9.0.1/attribute/cfdm.Array.dtype.html new file mode 100644 index 0000000000..ec57f9957c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Array.dtype.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Array.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.dtype

+
+
+Array.dtype
+

Data-type of the data elements.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Array.ndim.html b/docs/1.9.0.1/attribute/cfdm.Array.ndim.html new file mode 100644 index 0000000000..94b97e84fa --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Array.ndim.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Array.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.ndim

+
+
+Array.ndim
+

Number of array dimensions.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Array.shape.html b/docs/1.9.0.1/attribute/cfdm.Array.shape.html new file mode 100644 index 0000000000..447e53fb9f --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Array.shape.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Array.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.shape

+
+
+Array.shape
+

Tuple of array dimension sizes.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Array.size.html b/docs/1.9.0.1/attribute/cfdm.Array.size.html new file mode 100644 index 0000000000..0bb6c0d3dd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Array.size.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Array.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.size

+
+
+Array.size
+

Number of elements in the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.size
+7008
+>>> a.ndim
+2
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.bounds.html new file mode 100644 index 0000000000..a55f64dfb7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.AuxiliaryCoordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.bounds

+
+
+AuxiliaryCoordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.construct_type.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.construct_type.html new file mode 100644 index 0000000000..de25c3c2d5 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.AuxiliaryCoordinate.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.construct_type

+
+
+AuxiliaryCoordinate.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> c.construct_type
+'auxiliary_coordinate'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.data.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.data.html new file mode 100644 index 0000000000..d446a96969 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.AuxiliaryCoordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.data

+
+
+AuxiliaryCoordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.dtype.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.dtype.html new file mode 100644 index 0000000000..ea299cb15b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.AuxiliaryCoordinate.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.dtype

+
+
+AuxiliaryCoordinate.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.interior_ring.html new file mode 100644 index 0000000000..4d6b02e83e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.AuxiliaryCoordinate.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.interior_ring

+
+
+AuxiliaryCoordinate.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.ndim.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.ndim.html new file mode 100644 index 0000000000..a230e001da --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.ndim

+
+
+AuxiliaryCoordinate.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.shape.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.shape.html new file mode 100644 index 0000000000..fc11acffd2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.shape

+
+
+AuxiliaryCoordinate.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.size.html b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.size.html new file mode 100644 index 0000000000..8ee8cfbb19 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.AuxiliaryCoordinate.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.size

+
+
+AuxiliaryCoordinate.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Bounds.data.html b/docs/1.9.0.1/attribute/cfdm.Bounds.data.html new file mode 100644 index 0000000000..106ae7d532 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Bounds.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Bounds.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.data

+
+
+Bounds.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Bounds.dtype.html b/docs/1.9.0.1/attribute/cfdm.Bounds.dtype.html new file mode 100644 index 0000000000..f7b080cf5c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Bounds.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Bounds.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.dtype

+
+
+Bounds.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Bounds.ndim.html b/docs/1.9.0.1/attribute/cfdm.Bounds.ndim.html new file mode 100644 index 0000000000..8066c13303 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Bounds.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.ndim

+
+
+Bounds.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Bounds.shape.html b/docs/1.9.0.1/attribute/cfdm.Bounds.shape.html new file mode 100644 index 0000000000..5af2ed66ec --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Bounds.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.shape

+
+
+Bounds.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Bounds.size.html b/docs/1.9.0.1/attribute/cfdm.Bounds.size.html new file mode 100644 index 0000000000..c401fb1863 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Bounds.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.size

+
+
+Bounds.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.construct_type.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.construct_type.html new file mode 100644 index 0000000000..b045dd657e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CellMeasure.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.construct_type

+
+
+CellMeasure.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.construct_type
+'cell_measure'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.data.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.data.html new file mode 100644 index 0000000000..d5d634dcc8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.CellMeasure.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.data

+
+
+CellMeasure.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.dtype.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.dtype.html new file mode 100644 index 0000000000..4655c8882b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.CellMeasure.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.dtype

+
+
+CellMeasure.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.ndim.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.ndim.html new file mode 100644 index 0000000000..f24e00ad97 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.ndim

+
+
+CellMeasure.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.shape.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.shape.html new file mode 100644 index 0000000000..31aaadd896 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.shape

+
+
+CellMeasure.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMeasure.size.html b/docs/1.9.0.1/attribute/cfdm.CellMeasure.size.html new file mode 100644 index 0000000000..ea8ec18105 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMeasure.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.size

+
+
+CellMeasure.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CellMethod.construct_type.html b/docs/1.9.0.1/attribute/cfdm.CellMethod.construct_type.html new file mode 100644 index 0000000000..44ecc066b4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CellMethod.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CellMethod.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.construct_type

+
+
+CellMethod.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.construct_type
+'cell_method'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.array.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.array.html new file mode 100644 index 0000000000..837f7dd697 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.array.html @@ -0,0 +1,170 @@ + + + + + + + cfdm.CompressedArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.array

+
+
+CompressedArray.array
+

Returns a numpy array containing the uncompressed data.

+
+
Returns
+
+
numpy.ndarray

The uncompressed array.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.compressed_array.html new file mode 100644 index 0000000000..bd8a053b8e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.compressed_array.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.CompressedArray.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.compressed_array

+
+
+CompressedArray.compressed_array
+

Returns an independent numpy array with the compressed data.

+
+
Returns
+
+
numpy.ndarray

The compressed array.

+
+
+
+
+

Examples:

+
>>> n = a.compressed_array
+
+
+
>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.dtype.html new file mode 100644 index 0000000000..a199d9cfa0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.CompressedArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.dtype

+
+
+CompressedArray.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.ndim.html new file mode 100644 index 0000000000..7b38763530 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.CompressedArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.ndim

+
+
+CompressedArray.ndim
+

The number of dimensions of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.shape.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.shape.html new file mode 100644 index 0000000000..c05e72db28 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.CompressedArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.shape

+
+
+CompressedArray.shape
+

Shape of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CompressedArray.size.html b/docs/1.9.0.1/attribute/cfdm.CompressedArray.size.html new file mode 100644 index 0000000000..0f3badc8a2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CompressedArray.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.CompressedArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.size

+
+
+CompressedArray.size
+

Number of elements in the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Constant._func.html b/docs/1.9.0.1/attribute/cfdm.Constant._func.html new file mode 100644 index 0000000000..5fec5b14ed --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Constant._func.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Constant._func — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant._func

+
+
+Constant._func
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Constant.value.html b/docs/1.9.0.1/attribute/cfdm.Constant.value.html new file mode 100644 index 0000000000..8d72c982cd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Constant.value.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Constant.value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.value

+
+
+Constant.value
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CoordinateReference.construct_type.html b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.construct_type.html new file mode 100644 index 0000000000..fbed45c7a0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CoordinateReference.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.construct_type

+
+
+CoordinateReference.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CoordinateReference()
+>>> c.construct_type
+'coordinate_reference'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CoordinateReference.coordinate_conversion.html b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.coordinate_conversion.html new file mode 100644 index 0000000000..7e555e8110 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.coordinate_conversion.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.CoordinateReference.coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.coordinate_conversion

+
+
+CoordinateReference.coordinate_conversion
+

Return the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
CoordinateConversion

The coordinate conversion.

+
+
+
+
+

Examples:

+
>>> orog = cfdm.DomainAncillary()
+>>> c = cfdm.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r = cfdm.CoordinateReference(coordinate_conversion=c)
+>>> r.coordinate_conversion
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.CoordinateReference.datum.html b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.datum.html new file mode 100644 index 0000000000..b56903ba61 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.CoordinateReference.datum.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.CoordinateReference.datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.datum

+
+
+CoordinateReference.datum
+

Return the datum component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Datum

The datum.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Datum(parameters={'earth_radius': 7000000})
+>>> r = cfdm.CoordinateReference(datum=d)
+>>> r
+<CoordinateReference: >
+>>> r.datum
+<Datum: Parameters: earth_radius>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Count.data.html b/docs/1.9.0.1/attribute/cfdm.Count.data.html new file mode 100644 index 0000000000..46f7bc660b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Count.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Count.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.data

+
+
+Count.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Count.dtype.html b/docs/1.9.0.1/attribute/cfdm.Count.dtype.html new file mode 100644 index 0000000000..6cb1b366d6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Count.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Count.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.dtype

+
+
+Count.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Count.ndim.html b/docs/1.9.0.1/attribute/cfdm.Count.ndim.html new file mode 100644 index 0000000000..3d90f4636b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Count.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.ndim

+
+
+Count.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Count.shape.html b/docs/1.9.0.1/attribute/cfdm.Count.shape.html new file mode 100644 index 0000000000..f9fa9fb92a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Count.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.shape

+
+
+Count.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Count.size.html b/docs/1.9.0.1/attribute/cfdm.Count.size.html new file mode 100644 index 0000000000..11de922272 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Count.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.size

+
+
+Count.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.array.html b/docs/1.9.0.1/attribute/cfdm.Data.array.html new file mode 100644 index 0000000000..6b2a1ef4e7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.array.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.Data.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.array

+
+
+Data.array
+

Return an independent numpy array containing the data.

+

If a fill value has been set (see set_fill_value) then it will +be used, otherwise the default numpy fill value appropriate to the +data type will be used.

+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([1, 2, 3.0], 'km')
+>>> n = d.array
+>>> isinstance(n, numpy.ndarray)
+True
+>>> print(n)
+[1. 2. 3.]
+>>> n[0] = 88
+>>> d
+<Data(3): [1.0, 2.0, 3.0] km>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.Data.compressed_array.html new file mode 100644 index 0000000000..85f39b754a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.compressed_array.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.Data.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.compressed_array

+
+
+Data.compressed_array
+

Returns an independent numpy array of the compressed data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
numpy.ndarray

An independent numpy array of the compressed data.

+
+
+
+
+

Examples:

+
>>> a = d.compressed_array
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.datetime_array.html b/docs/1.9.0.1/attribute/cfdm.Data.datetime_array.html new file mode 100644 index 0000000000..d2ce7af9d4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.datetime_array.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Data.datetime_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.datetime_array

+
+
+Data.datetime_array
+

Returns an independent numpy array of datetimes.

+

Specifically, returns an independent numpy array containing +the date-time objects corresponding to times since a reference +date.

+

Only applicable for reference time units.

+

If the calendar has not been set then the CF default calendar of +‘standard’ (i.e. the mixed Gregorian/Julian calendar as defined by +Udunits) will be used.

+

Conversions are carried out with the netCDF4.num2date function.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

array, datetime_as_string

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the date-time objects.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([31, 62, 90], units='days since 2018-12-01')
+>>> a = d.datetime_array
+>>> print(a)
+[cftime.DatetimeGregorian(2019, 1, 1, 0, 0, 0, 0)
+ cftime.DatetimeGregorian(2019, 2, 1, 0, 0, 0, 0)
+ cftime.DatetimeGregorian(2019, 3, 1, 0, 0, 0, 0)]
+>>> print(a[1])
+2019-02-01 00:00:00
+
+
+
>>> d = cfdm.Data(
+...     [31, 62, 90], units='days since 2018-12-01', calendar='360_day')
+>>> a = d.datetime_array
+>>> print(a)
+[cftime.Datetime360Day(2019, 1, 2, 0, 0, 0, 0)
+ cftime.Datetime360Day(2019, 2, 3, 0, 0, 0, 0)
+ cftime.Datetime360Day(2019, 3, 1, 0, 0, 0, 0)]
+>>> print(a[1])
+2019-02-03 00:00:00
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.datetime_as_string.html b/docs/1.9.0.1/attribute/cfdm.Data.datetime_as_string.html new file mode 100644 index 0000000000..ecd6d44504 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.datetime_as_string.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Data.datetime_as_string — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.datetime_as_string

+
+
+Data.datetime_as_string
+

Returns an independent numpy array with datetimes as strings.

+

Specifically, returns an independent numpy array containing +string representations of times since a reference date.

+

Only applicable for reference time units.

+

If the calendar has not been set then the CF default calendar of +“standard” (i.e. the mixed Gregorian/Julian calendar as defined by +Udunits) will be used.

+

Conversions are carried out with the netCDF4.num2date function.

+
+

New in version (cfdm): 1.8.0

+
+
+

See also

+

array, datetime_array

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the date-time strings.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([31, 62, 90], units='days since 2018-12-01')
+>>> print(d.datetime_as_string)
+['2019-01-01 00:00:00' '2019-02-01 00:00:00' '2019-03-01 00:00:00']
+
+
+
>>> d = cfdm.Data(
+...     [31, 62, 90], units='days since 2018-12-01', calendar='360_day')
+>>> print(d.datetime_as_string)
+['2019-01-02 00:00:00' '2019-02-03 00:00:00' '2019-03-01 00:00:00']
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.dtype.html b/docs/1.9.0.1/attribute/cfdm.Data.dtype.html new file mode 100644 index 0000000000..d40b97bfe9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Data.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.dtype

+
+
+Data.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.mask.html b/docs/1.9.0.1/attribute/cfdm.Data.mask.html new file mode 100644 index 0000000000..95362ee584 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.mask.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Data.mask — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.mask

+
+
+Data.mask
+

The Boolean missing data mask of the data array.

+

The Boolean mask has True where the data array has missing data +and False otherwise.

+
+
Returns
+
+
Data

The Boolean mask as data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.ma.array(
+...     [[280.0,   -99,   -99,   -99],
+...      [281.0, 279.0, 278.0, 279.5]],
+...     mask=[[0, 1, 1, 1], [0, 0, 0, 0]]
+... ))
+>>> d
+<Data(2, 4): [[280.0, ..., 279.5]]>
+>>> print(d.array)
+[[280.0    --    --    --]
+ [281.0 279.0 278.0 279.5]]
+>>> d.mask
+<Data(2, 4): [[False, ..., False]]>
+>>> print(d.mask.array)
+[[False  True  True  True]
+ [False False False False]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.ndim.html b/docs/1.9.0.1/attribute/cfdm.Data.ndim.html new file mode 100644 index 0000000000..9aa3aa2c97 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.Data.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.ndim

+
+
+Data.ndim
+

Number of data dimensions.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.shape.html b/docs/1.9.0.1/attribute/cfdm.Data.shape.html new file mode 100644 index 0000000000..997080021e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.Data.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.shape

+
+
+Data.shape
+

Tuple of data dimension sizes.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Data.size.html b/docs/1.9.0.1/attribute/cfdm.Data.size.html new file mode 100644 index 0000000000..f310b2eb33 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Data.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.Data.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.size

+
+
+Data.size
+

Number of elements in the data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.bounds.html new file mode 100644 index 0000000000..9d6f4e791c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.DimensionCoordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.bounds

+
+
+DimensionCoordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.construct_type.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.construct_type.html new file mode 100644 index 0000000000..671c9106f8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.DimensionCoordinate.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.construct_type

+
+
+DimensionCoordinate.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> c.construct_type
+'dimension_coordinate'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.data.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.data.html new file mode 100644 index 0000000000..40d778e518 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.DimensionCoordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.data

+
+
+DimensionCoordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.dtype.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.dtype.html new file mode 100644 index 0000000000..cf2598caf6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.DimensionCoordinate.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.dtype

+
+
+DimensionCoordinate.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.interior_ring.html new file mode 100644 index 0000000000..4f3394b024 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DimensionCoordinate.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.interior_ring

+
+
+DimensionCoordinate.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.ndim.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.ndim.html new file mode 100644 index 0000000000..064386f65a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.ndim

+
+
+DimensionCoordinate.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.shape.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.shape.html new file mode 100644 index 0000000000..4caab709f6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.shape

+
+
+DimensionCoordinate.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.size.html b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.size.html new file mode 100644 index 0000000000..b445a42468 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DimensionCoordinate.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.size

+
+
+DimensionCoordinate.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.auxiliary_coordinates.html b/docs/1.9.0.1/attribute/cfdm.Domain.auxiliary_coordinates.html new file mode 100644 index 0000000000..6a5f65c325 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.auxiliary_coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.auxiliary_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.auxiliary_coordinates

+
+
+Domain.auxiliary_coordinates = <function auxiliary_coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.cell_measures.html b/docs/1.9.0.1/attribute/cfdm.Domain.cell_measures.html new file mode 100644 index 0000000000..b383c8264a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.cell_measures.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.cell_measures — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.cell_measures

+
+
+Domain.cell_measures = <function cell_measures>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.construct_type.html b/docs/1.9.0.1/attribute/cfdm.Domain.construct_type.html new file mode 100644 index 0000000000..15a76deab1 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Domain.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.construct_type

+
+
+Domain.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Domain()
+>>> d.construct_type
+'domain'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.constructs.html b/docs/1.9.0.1/attribute/cfdm.Domain.constructs.html new file mode 100644 index 0000000000..d30dd6ed75 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.constructs.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Domain.constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.constructs

+
+
+Domain.constructs
+

Return the metadata constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Constructs

The constructs.

+
+
+
+
+

Examples:

+
>>> d = cfdm.example_field(0)
+>>> print(d.constructs)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.coordinate_references.html b/docs/1.9.0.1/attribute/cfdm.Domain.coordinate_references.html new file mode 100644 index 0000000000..3bd3067cde --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.coordinate_references.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.coordinate_references — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.coordinate_references

+
+
+Domain.coordinate_references = <function coordinate_references>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.coordinates.html b/docs/1.9.0.1/attribute/cfdm.Domain.coordinates.html new file mode 100644 index 0000000000..4f5a1605c6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.coordinates

+
+
+Domain.coordinates = <function coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.dimension_coordinates.html b/docs/1.9.0.1/attribute/cfdm.Domain.dimension_coordinates.html new file mode 100644 index 0000000000..2098bb86fd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.dimension_coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.dimension_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.dimension_coordinates

+
+
+Domain.dimension_coordinates = <function dimension_coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.domain_ancillaries.html b/docs/1.9.0.1/attribute/cfdm.Domain.domain_ancillaries.html new file mode 100644 index 0000000000..9be2921ab6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.domain_ancillaries.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.domain_ancillaries

+
+
+Domain.domain_ancillaries = <function domain_ancillaries>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Domain.domain_axes.html b/docs/1.9.0.1/attribute/cfdm.Domain.domain_axes.html new file mode 100644 index 0000000000..994c5918f5 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Domain.domain_axes.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Domain.domain_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.domain_axes

+
+
+Domain.domain_axes = <function domain_axes>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.bounds.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.bounds.html new file mode 100644 index 0000000000..21b656d5c3 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.DomainAncillary.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.bounds

+
+
+DomainAncillary.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.construct_type.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.construct_type.html new file mode 100644 index 0000000000..8632598243 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.DomainAncillary.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.construct_type

+
+
+DomainAncillary.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.DomainAncillary()
+>>> d.construct_type
+'domain_ancillary'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.data.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.data.html new file mode 100644 index 0000000000..ad06eeb4c2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.DomainAncillary.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.data

+
+
+DomainAncillary.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.dtype.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.dtype.html new file mode 100644 index 0000000000..f9b582945f --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.DomainAncillary.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.dtype

+
+
+DomainAncillary.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.interior_ring.html new file mode 100644 index 0000000000..aba041545d --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DomainAncillary.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.interior_ring

+
+
+DomainAncillary.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.ndim.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.ndim.html new file mode 100644 index 0000000000..02b6316395 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.ndim

+
+
+DomainAncillary.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.shape.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.shape.html new file mode 100644 index 0000000000..cdc332e9b9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.shape

+
+
+DomainAncillary.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAncillary.size.html b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.size.html new file mode 100644 index 0000000000..892d4e92d8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAncillary.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.size

+
+
+DomainAncillary.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.DomainAxis.construct_type.html b/docs/1.9.0.1/attribute/cfdm.DomainAxis.construct_type.html new file mode 100644 index 0000000000..81870d975c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.DomainAxis.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.DomainAxis.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.construct_type

+
+
+DomainAxis.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.DomainAxis()
+>>> d.construct_type
+'domain_axis'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.auxiliary_coordinates.html b/docs/1.9.0.1/attribute/cfdm.Field.auxiliary_coordinates.html new file mode 100644 index 0000000000..5dbf6e3a18 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.auxiliary_coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.auxiliary_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.auxiliary_coordinates

+
+
+Field.auxiliary_coordinates = <function auxiliary_coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.cell_measures.html b/docs/1.9.0.1/attribute/cfdm.Field.cell_measures.html new file mode 100644 index 0000000000..a78256cef4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.cell_measures.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.cell_measures — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.cell_measures

+
+
+Field.cell_measures = <function cell_measures>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.cell_methods.html b/docs/1.9.0.1/attribute/cfdm.Field.cell_methods.html new file mode 100644 index 0000000000..9625a9b4dd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.cell_methods.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.cell_methods — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.cell_methods

+
+
+Field.cell_methods = <function Field.cell_methods>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.construct_type.html b/docs/1.9.0.1/attribute/cfdm.Field.construct_type.html new file mode 100644 index 0000000000..c43925e9fe --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Field.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.construct_type

+
+
+Field.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.construct_type
+'field'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.constructs.html b/docs/1.9.0.1/attribute/cfdm.Field.constructs.html new file mode 100644 index 0000000000..2d750b7659 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.constructs.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Field.constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.constructs

+
+
+Field.constructs
+

Return the metadata constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Constructs

The constructs.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f.constructs)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.coordinate_references.html b/docs/1.9.0.1/attribute/cfdm.Field.coordinate_references.html new file mode 100644 index 0000000000..39f32170cb --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.coordinate_references.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.coordinate_references — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.coordinate_references

+
+
+Field.coordinate_references = <function coordinate_references>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.coordinates.html b/docs/1.9.0.1/attribute/cfdm.Field.coordinates.html new file mode 100644 index 0000000000..93de53c7f9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.coordinates

+
+
+Field.coordinates = <function coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.data.html b/docs/1.9.0.1/attribute/cfdm.Field.data.html new file mode 100644 index 0000000000..6297034e5b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Field.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.data

+
+
+Field.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.dimension_coordinates.html b/docs/1.9.0.1/attribute/cfdm.Field.dimension_coordinates.html new file mode 100644 index 0000000000..225827451a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.dimension_coordinates.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.dimension_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.dimension_coordinates

+
+
+Field.dimension_coordinates = <function dimension_coordinates>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.domain.html b/docs/1.9.0.1/attribute/cfdm.Field.domain.html new file mode 100644 index 0000000000..3c19a5fbc4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.domain.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Field.domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain

+
+
+Field.domain
+

Return the domain.

+

f.domain is equivalent to f.get_domain()

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_domain

+
+
+
Returns
+
+
Domain

The domain.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(2)
+>>> f.domain
+<Domain: {1, 5, 8, 36}>
+
+
+
>>> d0 = f.domain
+>>> d1 = f.get_domain()
+>>> d0.equals(d1)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.domain_ancillaries.html b/docs/1.9.0.1/attribute/cfdm.Field.domain_ancillaries.html new file mode 100644 index 0000000000..9354ad2cd5 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.domain_ancillaries.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain_ancillaries

+
+
+Field.domain_ancillaries = <function domain_ancillaries>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.domain_axes.html b/docs/1.9.0.1/attribute/cfdm.Field.domain_axes.html new file mode 100644 index 0000000000..079971bcad --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.domain_axes.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.domain_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain_axes

+
+
+Field.domain_axes = <function domain_axes>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.dtype.html b/docs/1.9.0.1/attribute/cfdm.Field.dtype.html new file mode 100644 index 0000000000..404efff197 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Field.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.dtype

+
+
+Field.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.field_ancillaries.html b/docs/1.9.0.1/attribute/cfdm.Field.field_ancillaries.html new file mode 100644 index 0000000000..34dab90199 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.field_ancillaries.html @@ -0,0 +1,145 @@ + + + + + + + cfdm.Field.field_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.field_ancillaries

+
+
+Field.field_ancillaries = <function Field.field_ancillaries>[source]
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.ndim.html b/docs/1.9.0.1/attribute/cfdm.Field.ndim.html new file mode 100644 index 0000000000..1d506fafbc --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.ndim

+
+
+Field.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.shape.html b/docs/1.9.0.1/attribute/cfdm.Field.shape.html new file mode 100644 index 0000000000..90197a0f2d --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.shape

+
+
+Field.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Field.size.html b/docs/1.9.0.1/attribute/cfdm.Field.size.html new file mode 100644 index 0000000000..e645e72dc2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Field.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.size

+
+
+Field.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.construct_type.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.construct_type.html new file mode 100644 index 0000000000..de76ed01e4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.FieldAncillary.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.construct_type

+
+
+FieldAncillary.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.construct_type
+'field_ancillary'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.data.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.data.html new file mode 100644 index 0000000000..ae04f7001c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.FieldAncillary.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.data

+
+
+FieldAncillary.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.dtype.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.dtype.html new file mode 100644 index 0000000000..34fd208786 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.FieldAncillary.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.dtype

+
+
+FieldAncillary.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.ndim.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.ndim.html new file mode 100644 index 0000000000..d9192d661f --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.ndim

+
+
+FieldAncillary.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.shape.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.shape.html new file mode 100644 index 0000000000..cca9722288 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.shape

+
+
+FieldAncillary.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.FieldAncillary.size.html b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.size.html new file mode 100644 index 0000000000..b5bcd0e8f0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.FieldAncillary.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.size

+
+
+FieldAncillary.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.array.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.array.html new file mode 100644 index 0000000000..dc6a66b18b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.array.html @@ -0,0 +1,170 @@ + + + + + + + cfdm.GatheredArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.array

+
+
+GatheredArray.array
+

Returns a numpy array containing the uncompressed data.

+
+
Returns
+
+
numpy.ndarray

The uncompressed array.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.compressed_array.html new file mode 100644 index 0000000000..6bfe228a3e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.compressed_array.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.GatheredArray.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.compressed_array

+
+
+GatheredArray.compressed_array
+

Returns an independent numpy array with the compressed data.

+
+
Returns
+
+
numpy.ndarray

The compressed array.

+
+
+
+
+

Examples:

+
>>> n = a.compressed_array
+
+
+
>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.dtype.html new file mode 100644 index 0000000000..8c0be6e2a7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.GatheredArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.dtype

+
+
+GatheredArray.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.ndim.html new file mode 100644 index 0000000000..2307f2beb2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.GatheredArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.ndim

+
+
+GatheredArray.ndim
+

The number of dimensions of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.shape.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.shape.html new file mode 100644 index 0000000000..97f589da1b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.GatheredArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.shape

+
+
+GatheredArray.shape
+

Shape of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.GatheredArray.size.html b/docs/1.9.0.1/attribute/cfdm.GatheredArray.size.html new file mode 100644 index 0000000000..268e7a2e29 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.GatheredArray.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.GatheredArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.size

+
+
+GatheredArray.size
+

Number of elements in the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Index.data.html b/docs/1.9.0.1/attribute/cfdm.Index.data.html new file mode 100644 index 0000000000..7208e4fa86 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Index.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Index.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.data

+
+
+Index.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Index.dtype.html b/docs/1.9.0.1/attribute/cfdm.Index.dtype.html new file mode 100644 index 0000000000..f64c95fc35 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Index.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Index.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.dtype

+
+
+Index.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Index.ndim.html b/docs/1.9.0.1/attribute/cfdm.Index.ndim.html new file mode 100644 index 0000000000..a9189e6377 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Index.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.ndim

+
+
+Index.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Index.shape.html b/docs/1.9.0.1/attribute/cfdm.Index.shape.html new file mode 100644 index 0000000000..769580fde3 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Index.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.shape

+
+
+Index.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.Index.size.html b/docs/1.9.0.1/attribute/cfdm.Index.size.html new file mode 100644 index 0000000000..f4ee6e4e9d --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.Index.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.size

+
+
+Index.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.InteriorRing.data.html b/docs/1.9.0.1/attribute/cfdm.InteriorRing.data.html new file mode 100644 index 0000000000..20b65ec5a0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.InteriorRing.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.InteriorRing.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.data

+
+
+InteriorRing.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.InteriorRing.dtype.html b/docs/1.9.0.1/attribute/cfdm.InteriorRing.dtype.html new file mode 100644 index 0000000000..af86e6fcc1 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.InteriorRing.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.InteriorRing.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.dtype

+
+
+InteriorRing.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.InteriorRing.ndim.html b/docs/1.9.0.1/attribute/cfdm.InteriorRing.ndim.html new file mode 100644 index 0000000000..66b5c2e8db --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.InteriorRing.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.ndim

+
+
+InteriorRing.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.InteriorRing.shape.html b/docs/1.9.0.1/attribute/cfdm.InteriorRing.shape.html new file mode 100644 index 0000000000..e6e39dc4f4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.InteriorRing.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.shape

+
+
+InteriorRing.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.InteriorRing.size.html b/docs/1.9.0.1/attribute/cfdm.InteriorRing.size.html new file mode 100644 index 0000000000..fcfe7255f0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.InteriorRing.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.size

+
+
+InteriorRing.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.List.data.html b/docs/1.9.0.1/attribute/cfdm.List.data.html new file mode 100644 index 0000000000..5ee596742e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.List.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.List.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.data

+
+
+List.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_data(cfdm.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.List.dtype.html b/docs/1.9.0.1/attribute/cfdm.List.dtype.html new file mode 100644 index 0000000000..90adf8da26 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.List.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.List.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.dtype

+
+
+List.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.List.ndim.html b/docs/1.9.0.1/attribute/cfdm.List.ndim.html new file mode 100644 index 0000000000..d44ccff7f3 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.List.ndim.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.ndim

+
+
+List.ndim
+

The number of dimensions in the data array.

+
+

See also

+

data, has_data, isscalar, shape, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.List.shape.html b/docs/1.9.0.1/attribute/cfdm.List.shape.html new file mode 100644 index 0000000000..8f88fc5259 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.List.shape.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.shape

+
+
+List.shape
+

A tuple of the data array’s dimension sizes.

+
+

See also

+

data, has_data, ndim, size

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.List.size.html b/docs/1.9.0.1/attribute/cfdm.List.size.html new file mode 100644 index 0000000000..c0478afae5 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.List.size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.size

+
+
+List.size
+

The number of elements in the data array.

+
+

See also

+

data, has_data, ndim, shape

+
+

Examples:

+
>>> f.shape
+(73, 96)
+>>> f.ndim
+2
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73, 1, 96)
+>>> f.ndim
+3
+>>> f.size
+7008
+
+
+
>>> f.shape
+(73,)
+>>> f.ndim
+1
+>>> f.size
+73
+
+
+
>>> f.shape
+()
+>>> f.ndim
+0
+>>> f.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NetCDFArray.array.html b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.array.html new file mode 100644 index 0000000000..dadea9b83c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.array.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.NetCDFArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.array

+
+
+NetCDFArray.array
+

Return an independent numpy array containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NetCDFArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.dtype.html new file mode 100644 index 0000000000..d1670be1e9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.dtype.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.NetCDFArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.dtype

+
+
+NetCDFArray.dtype
+

Data-type of the data elements.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NetCDFArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.ndim.html new file mode 100644 index 0000000000..7ed5732a12 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.ndim.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NetCDFArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.ndim

+
+
+NetCDFArray.ndim
+

Number of array dimensions.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NetCDFArray.shape.html b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.shape.html new file mode 100644 index 0000000000..c438d92a40 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.shape.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NetCDFArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.shape

+
+
+NetCDFArray.shape
+

Tuple of array dimension sizes.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NetCDFArray.size.html b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.size.html new file mode 100644 index 0000000000..0584338959 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NetCDFArray.size.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NetCDFArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.size

+
+
+NetCDFArray.size
+

Number of elements in the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.size
+7008
+>>> a.ndim
+2
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NumpyArray.array.html b/docs/1.9.0.1/attribute/cfdm.NumpyArray.array.html new file mode 100644 index 0000000000..44299334b2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NumpyArray.array.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.NumpyArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.array

+
+
+NumpyArray.array
+

Return an independent numpy array containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NumpyArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.NumpyArray.dtype.html new file mode 100644 index 0000000000..50782a865b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NumpyArray.dtype.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.NumpyArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.dtype

+
+
+NumpyArray.dtype
+

Data-type of the data elements.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NumpyArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.NumpyArray.ndim.html new file mode 100644 index 0000000000..8b0cbbf7b4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NumpyArray.ndim.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NumpyArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.ndim

+
+
+NumpyArray.ndim
+

Number of array dimensions.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NumpyArray.shape.html b/docs/1.9.0.1/attribute/cfdm.NumpyArray.shape.html new file mode 100644 index 0000000000..46b89171dc --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NumpyArray.shape.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NumpyArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.shape

+
+
+NumpyArray.shape
+

Tuple of array dimension sizes.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.NumpyArray.size.html b/docs/1.9.0.1/attribute/cfdm.NumpyArray.size.html new file mode 100644 index 0000000000..f1f3611a5a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.NumpyArray.size.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.NumpyArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.size

+
+
+NumpyArray.size
+

Number of elements in the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.size
+7008
+>>> a.ndim
+2
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.array.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.array.html new file mode 100644 index 0000000000..28ae048f16 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.array.html @@ -0,0 +1,170 @@ + + + + + + + cfdm.RaggedContiguousArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.array

+
+
+RaggedContiguousArray.array
+

Returns a numpy array containing the uncompressed data.

+
+
Returns
+
+
numpy.ndarray

The uncompressed array.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.compressed_array.html new file mode 100644 index 0000000000..4c26f7fd54 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.compressed_array.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedContiguousArray.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.compressed_array

+
+
+RaggedContiguousArray.compressed_array
+

Returns an independent numpy array with the compressed data.

+
+
Returns
+
+
numpy.ndarray

The compressed array.

+
+
+
+
+

Examples:

+
>>> n = a.compressed_array
+
+
+
>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.dtype.html new file mode 100644 index 0000000000..0986cbf611 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.RaggedContiguousArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.dtype

+
+
+RaggedContiguousArray.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.ndim.html new file mode 100644 index 0000000000..8bb7f22af2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedContiguousArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.ndim

+
+
+RaggedContiguousArray.ndim
+

The number of dimensions of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.shape.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.shape.html new file mode 100644 index 0000000000..bfb470aa9e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedContiguousArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.shape

+
+
+RaggedContiguousArray.shape
+

Shape of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.size.html b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.size.html new file mode 100644 index 0000000000..4ab5adb253 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedContiguousArray.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedContiguousArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.size

+
+
+RaggedContiguousArray.size
+

Number of elements in the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.array.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.array.html new file mode 100644 index 0000000000..4baa846e07 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.array.html @@ -0,0 +1,170 @@ + + + + + + + cfdm.RaggedIndexedArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.array

+
+
+RaggedIndexedArray.array
+

Returns a numpy array containing the uncompressed data.

+
+
Returns
+
+
numpy.ndarray

The uncompressed array.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.compressed_array.html new file mode 100644 index 0000000000..0d4a4ce5aa --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.compressed_array.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedIndexedArray.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.compressed_array

+
+
+RaggedIndexedArray.compressed_array
+

Returns an independent numpy array with the compressed data.

+
+
Returns
+
+
numpy.ndarray

The compressed array.

+
+
+
+
+

Examples:

+
>>> n = a.compressed_array
+
+
+
>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.dtype.html new file mode 100644 index 0000000000..5032681ef3 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.RaggedIndexedArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.dtype

+
+
+RaggedIndexedArray.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.ndim.html new file mode 100644 index 0000000000..ea23309506 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.ndim

+
+
+RaggedIndexedArray.ndim
+

The number of dimensions of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.shape.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.shape.html new file mode 100644 index 0000000000..0bde63df88 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.shape

+
+
+RaggedIndexedArray.shape
+

Shape of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.size.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.size.html new file mode 100644 index 0000000000..84a74625cb --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedArray.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.size

+
+
+RaggedIndexedArray.size
+

Number of elements in the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.array.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.array.html new file mode 100644 index 0000000000..62485a2640 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.array.html @@ -0,0 +1,170 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.array

+
+
+RaggedIndexedContiguousArray.array
+

Returns a numpy array containing the uncompressed data.

+
+
Returns
+
+
numpy.ndarray

The uncompressed array.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.compressed_array.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.compressed_array.html new file mode 100644 index 0000000000..84e0c82a0b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.compressed_array.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.compressed_array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.compressed_array

+
+
+RaggedIndexedContiguousArray.compressed_array
+

Returns an independent numpy array with the compressed data.

+
+
Returns
+
+
numpy.ndarray

The compressed array.

+
+
+
+
+

Examples:

+
>>> n = a.compressed_array
+
+
+
>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.dtype.html new file mode 100644 index 0000000000..c90718f1d4 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.dtype

+
+
+RaggedIndexedContiguousArray.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.ndim.html new file mode 100644 index 0000000000..bf878c7f3d --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.ndim

+
+
+RaggedIndexedContiguousArray.ndim
+

The number of dimensions of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.shape.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.shape.html new file mode 100644 index 0000000000..5cd3c4a40f --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.shape

+
+
+RaggedIndexedContiguousArray.shape
+

Shape of the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.size.html b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.size.html new file mode 100644 index 0000000000..cffd409d9b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.RaggedIndexedContiguousArray.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.size

+
+
+RaggedIndexedContiguousArray.size
+

Number of elements in the uncompressed data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Array.array.html b/docs/1.9.0.1/attribute/cfdm.core.Array.array.html new file mode 100644 index 0000000000..55fc0f1bd9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Array.array.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Array.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.array

+
+
+Array.array
+

Return an independent numpy array containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Array.dtype.html b/docs/1.9.0.1/attribute/cfdm.core.Array.dtype.html new file mode 100644 index 0000000000..971d56e0b8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Array.dtype.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Array.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.dtype

+
+
+Array.dtype
+

Data-type of the data elements.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Array.ndim.html b/docs/1.9.0.1/attribute/cfdm.core.Array.ndim.html new file mode 100644 index 0000000000..829b924800 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Array.ndim.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Array.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.ndim

+
+
+Array.ndim
+

Number of array dimensions.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Array.shape.html b/docs/1.9.0.1/attribute/cfdm.core.Array.shape.html new file mode 100644 index 0000000000..da3805b135 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Array.shape.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Array.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.shape

+
+
+Array.shape
+

Tuple of array dimension sizes.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Array.size.html b/docs/1.9.0.1/attribute/cfdm.core.Array.size.html new file mode 100644 index 0000000000..13f4500faf --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Array.size.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Array.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.size

+
+
+Array.size
+

Number of elements in the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.size
+7008
+>>> a.ndim
+2
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.bounds.html new file mode 100644 index 0000000000..fcf1413635 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.bounds

+
+
+AuxiliaryCoordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.construct_type.html new file mode 100644 index 0000000000..ddb1bef5c7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.construct_type

+
+
+AuxiliaryCoordinate.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> c.construct_type
+'auxiliary_coordinate'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.data.html b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.data.html new file mode 100644 index 0000000000..440df8619c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.data

+
+
+AuxiliaryCoordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.interior_ring.html new file mode 100644 index 0000000000..b80be289ce --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.AuxiliaryCoordinate.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.interior_ring

+
+
+AuxiliaryCoordinate.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Bounds.data.html b/docs/1.9.0.1/attribute/cfdm.core.Bounds.data.html new file mode 100644 index 0000000000..106273cdd8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Bounds.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Bounds.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.data

+
+
+Bounds.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.construct_type.html new file mode 100644 index 0000000000..21cee6b5c8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CellMeasure.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.construct_type

+
+
+CellMeasure.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMeasure()
+>>> c.construct_type
+'cell_measure'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.data.html b/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.data.html new file mode 100644 index 0000000000..038c81382e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CellMeasure.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.CellMeasure.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.data

+
+
+CellMeasure.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CellMethod.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.CellMethod.construct_type.html new file mode 100644 index 0000000000..075c791246 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CellMethod.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CellMethod.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.construct_type

+
+
+CellMethod.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.construct_type
+'cell_method'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Coordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.bounds.html new file mode 100644 index 0000000000..a20dc91504 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.Coordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.bounds

+
+
+Coordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Coordinate.data.html b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.data.html new file mode 100644 index 0000000000..f9c0b3cfd7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Coordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.data

+
+
+Coordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Coordinate.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.interior_ring.html new file mode 100644 index 0000000000..2ff2222415 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Coordinate.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Coordinate.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.interior_ring

+
+
+Coordinate.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.construct_type.html new file mode 100644 index 0000000000..111aff3ba9 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CoordinateReference.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.construct_type

+
+
+CoordinateReference.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CoordinateReference()
+>>> c.construct_type
+'coordinate_reference'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.coordinate_conversion.html b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.coordinate_conversion.html new file mode 100644 index 0000000000..17c523f710 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.coordinate_conversion.html @@ -0,0 +1,147 @@ + + + + + + + <no title> — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + + + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.datum.html b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.datum.html new file mode 100644 index 0000000000..f77071668c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.CoordinateReference.datum.html @@ -0,0 +1,147 @@ + + + + + + + <no title> — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + + + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Data.array.html b/docs/1.9.0.1/attribute/cfdm.core.Data.array.html new file mode 100644 index 0000000000..bfcbf55e23 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Data.array.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.core.Data.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.array

+
+
+Data.array
+

Return an independent numpy array containing the data.

+

If a fill value has been set (see set_fill_value) then it will +be used, otherwise the default numpy fill value appropriate to the +data type will be used.

+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.Data([1, 2, 3.0], 'km')
+>>> n = d.array
+>>> isinstance(n, numpy.ndarray)
+True
+>>> print(n)
+[1. 2. 3.]
+>>> n[0] = 88
+>>> d
+<Data(3): [1.0, 2.0, 3.0] km>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Data.dtype.html b/docs/1.9.0.1/attribute/cfdm.core.Data.dtype.html new file mode 100644 index 0000000000..c1b92572c7 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Data.dtype.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.Data.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.dtype

+
+
+Data.dtype
+

Data-type of the data elements.

+

Examples:

+
>>> d.dtype
+dtype('float64')
+>>> type(d.dtype)
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Data.ndim.html b/docs/1.9.0.1/attribute/cfdm.core.Data.ndim.html new file mode 100644 index 0000000000..aca3fa387a --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Data.ndim.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.core.Data.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.ndim

+
+
+Data.ndim
+

Number of data dimensions.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Data.shape.html b/docs/1.9.0.1/attribute/cfdm.core.Data.shape.html new file mode 100644 index 0000000000..948732a03c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Data.shape.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.core.Data.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.shape

+
+
+Data.shape
+

Tuple of data dimension sizes.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.ndim
+2
+>>> d.size
+7008
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Data.size.html b/docs/1.9.0.1/attribute/cfdm.core.Data.size.html new file mode 100644 index 0000000000..53aa0cf075 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Data.size.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.core.Data.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.size

+
+
+Data.size
+

Number of elements in the data.

+

Examples:

+
>>> d.shape
+(73, 96)
+>>> d.size
+7008
+>>> d.ndim
+2
+
+
+
>>> d.shape
+(1, 1, 1)
+>>> d.ndim
+3
+>>> d.size
+1
+
+
+
>>> d.shape
+()
+>>> d.ndim
+0
+>>> d.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.bounds.html new file mode 100644 index 0000000000..a4c9559832 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.DimensionCoordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.bounds

+
+
+DimensionCoordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.construct_type.html new file mode 100644 index 0000000000..1f1fd1e457 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.DimensionCoordinate.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.construct_type

+
+
+DimensionCoordinate.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> c.construct_type
+'dimension_coordinate'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.data.html b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.data.html new file mode 100644 index 0000000000..ef4ebde894 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.DimensionCoordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.data

+
+
+DimensionCoordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.interior_ring.html new file mode 100644 index 0000000000..abd35ae542 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DimensionCoordinate.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DimensionCoordinate.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.interior_ring

+
+
+DimensionCoordinate.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Domain.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.Domain.construct_type.html new file mode 100644 index 0000000000..a0249d6e07 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Domain.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Domain.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.construct_type

+
+
+Domain.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.Domain()
+>>> d.construct_type
+'domain'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Domain.constructs.html b/docs/1.9.0.1/attribute/cfdm.core.Domain.constructs.html new file mode 100644 index 0000000000..04c5368313 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Domain.constructs.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.core.Domain.constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.constructs

+
+
+Domain.constructs
+

Return the metadata constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Constructs

The constructs.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.example_field(0)
+>>> print(d.constructs)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.bounds.html new file mode 100644 index 0000000000..e2c543e10b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.DomainAncillary.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.bounds

+
+
+DomainAncillary.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.construct_type.html new file mode 100644 index 0000000000..ec984d10e8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.DomainAncillary.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.construct_type

+
+
+DomainAncillary.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.DomainAncillary()
+>>> d.construct_type
+'domain_ancillary'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.data.html b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.data.html new file mode 100644 index 0000000000..04efc4c8dc --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.DomainAncillary.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.data

+
+
+DomainAncillary.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.interior_ring.html new file mode 100644 index 0000000000..5b59f8a69b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DomainAncillary.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DomainAncillary.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.interior_ring

+
+
+DomainAncillary.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.DomainAxis.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.DomainAxis.construct_type.html new file mode 100644 index 0000000000..f41690a486 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.DomainAxis.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.DomainAxis.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.construct_type

+
+
+DomainAxis.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.DomainAxis()
+>>> d.construct_type
+'domain_axis'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Field.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.Field.construct_type.html new file mode 100644 index 0000000000..823ca400a8 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Field.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Field.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.construct_type

+
+
+Field.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.construct_type
+'field'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Field.constructs.html b/docs/1.9.0.1/attribute/cfdm.core.Field.constructs.html new file mode 100644 index 0000000000..b85a969319 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Field.constructs.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.core.Field.constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.constructs

+
+
+Field.constructs
+

Return the metadata constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Constructs

The constructs.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> print(f.constructs)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Field.data.html b/docs/1.9.0.1/attribute/cfdm.core.Field.data.html new file mode 100644 index 0000000000..4592bf2c55 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Field.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Field.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.data

+
+
+Field.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.Field.domain.html b/docs/1.9.0.1/attribute/cfdm.core.Field.domain.html new file mode 100644 index 0000000000..b89f901789 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.Field.domain.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Field.domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.domain

+
+
+Field.domain
+

Return the domain.

+

f.domain is equivalent to f.get_domain()

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_domain

+
+
+
Returns
+
+
Domain

The domain.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(2)
+>>> f.domain
+<Domain: {1, 5, 8, 36}>
+
+
+
>>> d0 = f.domain
+>>> d1 = f.get_domain()
+>>> d0.equals(d1)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.construct_type.html b/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.construct_type.html new file mode 100644 index 0000000000..7b72d31220 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.construct_type.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.FieldAncillary.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.construct_type

+
+
+FieldAncillary.construct_type
+

Return a description of the construct type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The construct type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.construct_type
+'field_ancillary'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.data.html b/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.data.html new file mode 100644 index 0000000000..282346ff8c --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.FieldAncillary.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.FieldAncillary.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.data

+
+
+FieldAncillary.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.InteriorRing.data.html b/docs/1.9.0.1/attribute/cfdm.core.InteriorRing.data.html new file mode 100644 index 0000000000..481d6244d0 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.InteriorRing.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.InteriorRing.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.data

+
+
+InteriorRing.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.array.html b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.array.html new file mode 100644 index 0000000000..4bcfbbae05 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.array.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.NumpyArray.array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.array

+
+
+NumpyArray.array
+

Return an independent numpy array containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> n = a.array
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.dtype.html b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.dtype.html new file mode 100644 index 0000000000..4108f2278e --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.dtype.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.NumpyArray.dtype — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.dtype

+
+
+NumpyArray.dtype
+

Data-type of the data elements.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.dtype
+dtype('float64')
+>>> print(type(a.dtype))
+<type 'numpy.dtype'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.ndim.html b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.ndim.html new file mode 100644 index 0000000000..7b81735f22 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.ndim.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.NumpyArray.ndim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.ndim

+
+
+NumpyArray.ndim
+

Number of array dimensions.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.shape.html b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.shape.html new file mode 100644 index 0000000000..eb79602973 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.shape.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.NumpyArray.shape — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.shape

+
+
+NumpyArray.shape
+

Tuple of array dimension sizes.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.ndim
+2
+>>> a.size
+7008
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.size.html b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.size.html new file mode 100644 index 0000000000..0c3192c4dd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.NumpyArray.size.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.NumpyArray.size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.size

+
+
+NumpyArray.size
+

Number of elements in the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.shape
+(73, 96)
+>>> a.size
+7008
+>>> a.ndim
+2
+
+
+
>>> a.shape
+(1, 1, 1)
+>>> a.ndim
+3
+>>> a.size
+1
+
+
+
>>> a.shape
+()
+>>> a.ndim
+0
+>>> a.size
+1
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.PropertiesData.data.html b/docs/1.9.0.1/attribute/cfdm.core.PropertiesData.data.html new file mode 100644 index 0000000000..6ad33a1bfd --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.PropertiesData.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.PropertiesData.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.data

+
+
+PropertiesData.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.bounds.html new file mode 100644 index 0000000000..7fa6aa3697 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.bounds.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.PropertiesDataBounds.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.bounds

+
+
+PropertiesDataBounds.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.data.html b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.data.html new file mode 100644 index 0000000000..bf38d04f90 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.data.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.PropertiesDataBounds.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.data

+
+
+PropertiesDataBounds.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.interior_ring.html b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.interior_ring.html new file mode 100644 index 0000000000..f48fa082e6 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.PropertiesDataBounds.interior_ring.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.PropertiesDataBounds.interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.interior_ring

+
+
+PropertiesDataBounds.interior_ring
+

Return the interior ring variable for polygon geometries.

+

f.interior_ring is equivalent to f.get_interior_ring()

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.interior_ring
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.bounds.html new file mode 100644 index 0000000000..7b8eacaeb2 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.abstract.Coordinate.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.bounds

+
+
+Coordinate.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.data.html b/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.data.html new file mode 100644 index 0000000000..c88bb2024b --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.abstract.Coordinate.data.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.core.abstract.Coordinate.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.data

+
+
+Coordinate.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.bounds.html b/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.bounds.html new file mode 100644 index 0000000000..4ad2077b18 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.bounds

+
+
+PropertiesDataBounds.bounds
+

Return the bounds.

+

f.bounds is equivalent to f.get_bounds()

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> b = c.bounds
+>>> b
+<Bounds: (5, 2) >
+>>> b.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> b.data.shape
+(5, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.data.html b/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.data.html new file mode 100644 index 0000000000..0324211e66 --- /dev/null +++ b/docs/1.9.0.1/attribute/cfdm.core.abstract.PropertiesDataBounds.data.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.data

+
+
+PropertiesDataBounds.data
+

Return the data.

+

f.data is equivalent to f.get_data()

+

Note that a Data instance is returned. Use its array +attribute to return the data as a numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data(cfdm.core.Data(numpy.arange(10.)))
+>>> f.has_data()
+True
+>>> d = f.data
+>>> d
+<Data(10): [0.0, ..., 9.0]>
+>>> f.data.shape
+(10,)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/cf_data_model.html b/docs/1.9.0.1/cf_data_model.html new file mode 100644 index 0000000000..bec1ea6103 --- /dev/null +++ b/docs/1.9.0.1/cf_data_model.html @@ -0,0 +1,215 @@ + + + + + + + CF data model — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

CF data model

+
+

The CF (Climate and Forecast) metadata conventions +(http://cfconventions.org) provide a description of the physical +meaning of data and of their spatial and temporal properties and are +designed to promote the creation, processing, and sharing of climate +and forecasting data using netCDF files and libraries +(https://www.unidata.ucar.edu/software/netcdf).

+

The CF data model +identifies the fundamental elements (“constructs”) of the CF +conventions and shows how they relate to each other, independently of +the netCDF encoding.

+

The CF data model defines a field construct for storing data with +all of its metadata. It is defined as follows:

+
+
field construct

corresponds to a CF-netCDF data variable with all of its +metadata. It consists of

+
    +
  • descriptive properties that apply to field construct as a whole +(e.g. the standard name),

  • +
  • a data array,

  • +
  • a domain construct that describes the locations of each cell +of the data array (i.e. the “domain”),

  • +
  • metadata constructs that describe the physical nature of the +data array, defined by

    +
    +
    field ancillary constructs

    corresponding to CF-netCDF ancillary variables

    +
    +
    cell method constructs

    corresponding to a CF-netCDF cell_methods attribute of data +variable

    +
    +
    +
  • +
+
+
domain construct

that describes the locations of each cell of the domain. It may +exist independently of a field construct and consists of

+
    +
  • descriptive properties that apply to domain construct as a whole,

  • +
  • metadata constructs that describe the locations of each cell +of the domain, defined by

  • +
+
+
domain axis constructs

corresponding to CF-netCDF dimensions or scalar coordinate +variables

+
+
dimension coordinate constructs

corresponding to CF-netCDF coordinate variables or numeric +scalar coordinate variables

+
+
auxiliary coordinate constructs

corresponding to CF-netCDF auxiliary coordinate variables and +non-numeric scalar coordinate variables

+
+
coordinate reference constructs

corresponding to CF-netCDF grid mapping variables or the +formula_terms attribute of a coordinate variable

+
+
domain ancillary constructs

corresponding to CF-netCDF variables named by the +formula_terms attribute of a coordinate variable

+
+
cell measure constructs

corresponding to CF-netCDF cell measure variables

+
+
+
+
+
+
+

+
+
+_images/cfdm_field.svg +

The constructs of the CF data model described using UML. The field construct corresponds to a CF-netCDF data variable. The domain construct provides the linkage between the field construct and the constructs which describe measurement locations and cell properties. It is useful to define an abstract generic coordinate construct that can be used to refer to coordinates when the their type (dimension or auxiliary coordinate construct) is not an issue.

+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class.html b/docs/1.9.0.1/class.html new file mode 100644 index 0000000000..a0559cf5d4 --- /dev/null +++ b/docs/1.9.0.1/class.html @@ -0,0 +1,324 @@ + + + + + + + cfdm classes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm classes

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+
+

Field construct class

+ ++++ + + + + + +

cfdm.Field

A field construct of the CF data model.

+
+
+

Domain construct class

+ ++++ + + + + + +

cfdm.Domain

A domain construct of the CF data model.

+
+
+

Metadata construct classes

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.AuxiliaryCoordinate

An auxiliary coordinate construct of the CF data model.

cfdm.CellMeasure

A cell measure construct of the CF data model.

cfdm.CellMethod

A cell method construct of the CF data model.

cfdm.CoordinateReference

A coordinate reference construct of the CF data model.

cfdm.DimensionCoordinate

A dimension coordinate construct of the CF data model.

cfdm.DomainAncillary

A domain ancillary construct of the CF data model.

cfdm.DomainAxis

A domain axis construct of the CF data model.

cfdm.FieldAncillary

A field ancillary construct of the CF data model.

+
+
+

Constructs class

+ ++++ + + + + + +

cfdm.Constructs

A container for metadata constructs.

+
+
+

Coordinate component classes

+ ++++ + + + + + + + + + + + + + + +

cfdm.Bounds

A cell bounds component.

cfdm.CoordinateConversion

A coordinate conversion component.

cfdm.Datum

A datum component of a CF data model coordinate reference.

cfdm.InteriorRing

An interior ring array with properties.

+
+
+

Data classes

+ ++++ + + + + + + + + + + + + + + +

cfdm.Data

An orthogonal multidimensional array with masking and units.

cfdm.NetCDFArray

An underlying array stored in a netCDF file.

cfdm.NumpyArray

An underlying numpy array.

cfdm.Array

Abstract base class for a container of an underlying array.

+
+
+

Data compression classes

+

Classes that support the creation and storage of compressed arrays.

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.Count

A count variable required to uncompress a ragged array.

cfdm.Index

An index variable required to uncompress a ragged array.

cfdm.List

A list variable required to uncompress a gathered array.

cfdm.GatheredArray

An underlying gathered array.

cfdm.RaggedContiguousArray

An underlying contiguous ragged array.

cfdm.RaggedIndexedArray

An underlying indexed ragged array.

cfdm.RaggedIndexedContiguousArray

An underlying indexed contiguous ragged array.

cfdm.CompressedArray

Mixin class for a container of an underlying compressed array.

+
+
+

Miscellaneous classes

+ ++++ + + + + + + + + +

cfdm.Constant

A container for a constant with context manager support.

cfdm.Configuration

Dictionary-like container for the global constants.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Array.html b/docs/1.9.0.1/class/cfdm.Array.html new file mode 100644 index 0000000000..b18ba8bc5c --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Array.html @@ -0,0 +1,282 @@ + + + + + + + cfdm.Array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array

+
+
+
+class cfdm.Array(**kwargs)[source]
+

Bases: cfdm.data.mixin.arraymixin.ArrayMixin, cfdm.core.data.abstract.array.Array

+

Abstract base class for a container of an underlying array.

+

The form of the array is defined by the initialisation parameters +of a subclass.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
kwargs: optional

Named parameters and their values that define the +array.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of array dimensions.

shape

Tuple of array dimension sizes.

size

Number of elements in the array.

+
+
+

Compression

+

Methods

+ ++++ + + + + + +

get_compression_type

Returns the array’s compression type.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace as an independent numpy array.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.AuxiliaryCoordinate.html b/docs/1.9.0.1/class/cfdm.AuxiliaryCoordinate.html new file mode 100644 index 0000000000..170223e4d8 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.AuxiliaryCoordinate.html @@ -0,0 +1,628 @@ + + + + + + + cfdm.AuxiliaryCoordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate

+
+
+
+class cfdm.AuxiliaryCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.coordinate.Coordinate, cfdm.core.auxiliarycoordinate.AuxiliaryCoordinate

+

An auxiliary coordinate construct of the CF data model.

+

An auxiliary coordinate construct provides information which +locate the cells of the domain and which depend on a subset of the +domain axis constructs. Auxiliary coordinate constructs have to be +used, instead of dimension coordinate constructs, when a single +domain axis requires more then one set of coordinate values, when +coordinate values are not numeric, strictly monotonic, or contain +missing values, or when they vary along more than one domain axis +construct simultaneously. CF-netCDF auxiliary coordinate variables +and non-numeric scalar coordinate variables correspond to +auxiliary coordinate constructs.

+

The auxiliary coordinate construct consists of a data array of the +coordinate values which spans a subset of the domain axis +constructs, an optional array of cell bounds recording the extents +of each cell (stored in a Bounds object), and properties to +describe the coordinates. An array of cell bounds spans the same +domain axes as its coordinate array, with the addition of an extra +dimension whose size is that of the number of vertices of each +cell. This extra dimension does not correspond to a domain axis +construct since it does not relate to an independent axis of the +domain. Note that, for climatological time axes, the bounds are +interpreted in a special way indicated by the cell method +constructs.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

{{netCDF variable group}}

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional
+

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'latitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, data and bounds from those of +source.

+

Note that if source is a AuxiliaryCoordinate instance then +cfdm.AuxiliaryCoordinate(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the auxiliary coordinate construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

get_bounds_data

Return the bounds data.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

del_node_count

Remove the node count variable for geometry bounds.

get_node_count

Return the node count variable for geometry bounds.

has_node_count

Whether geometry bounds have a node count variable.

set_node_count

Set the node count variable for geometry bounds.

del_part_node_count

Remove the part node count variable for geometry bounds.

get_part_node_count

Return the part node count variable for geometry bounds.

has_part_node_count

Whether geometry bounds have a part node count variable.

set_part_node_count

Set the part node count variable for geometry bounds.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Climatology

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

+
+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the construct defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Bounds.html b/docs/1.9.0.1/class/cfdm.Bounds.html new file mode 100644 index 0000000000..245ee6a748 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Bounds.html @@ -0,0 +1,484 @@ + + + + + + + cfdm.Bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds

+
+
+
+class cfdm.Bounds(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.bounds.Bounds

+

A cell bounds component.

+

Specifically, a cell bounds component of a coordinate or domain +ancillary construct of the CF data model.

+

An array of cell bounds spans the same domain axes as its +coordinate array, with the addition of an extra dimension whose +size is that of the number of vertices of each cell. This extra +dimension does not correspond to a domain axis construct since it +does not relate to an independent axis of the domain. Note that, +for climatological time axes, the bounds are interpreted in a +special way indicated by the cell method constructs.

+

In the CF data model, a bounds component does not have its own +properties because they can not logically be different to those of +the coordinate construct itself. However, it is sometimes desired +to store attributes on a CF-netCDF bounds variable, so it is also +allowed to provide properties to a bounds component.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The name of the trailing netCDF dimension spanned by bounds (which +does not correspond to a domain axis construct) may be accessed +with the nc_set_dimension, nc_get_dimension, +nc_del_dimension and nc_has_dimension methods.

+

{{netCDF variable group}}

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'grid_latitude'}

+
+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a Bounds instance then +cfdm.Bounds(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the bounds component.

identity

Return the canonical identity.

identities

Return all possible identities.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

inherited_properties

Return the properties inherited from a coordinate construct.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.CellMeasure.html b/docs/1.9.0.1/class/cfdm.CellMeasure.html new file mode 100644 index 0000000000..fe13f0eb09 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.CellMeasure.html @@ -0,0 +1,502 @@ + + + + + + + cfdm.CellMeasure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure

+
+
+
+class cfdm.CellMeasure(measure=None, properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFExternal, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.cellmeasure.CellMeasure

+

A cell measure construct of the CF data model.

+

A cell measure construct provides information that is needed about +the size or shape of the cells and that depends on a subset of the +domain axis constructs. Cell measure constructs have to be used +when the size or shape of the cells cannot be deduced from the +dimension or auxiliary coordinate constructs without special +knowledge that a generic application cannot be expected to have.

+

The cell measure construct consists of a numeric array of the +metric data which spans a subset of the domain axis constructs, +and properties to describe the data. The cell measure construct +specifies a “measure” to indicate which metric of the space it +supplies, e.g. cell horizontal areas, and must have a units +property consistent with the measure, e.g. square metres. It is +assumed that the metric does not depend on axes of the domain +which are not spanned by the array, along which the values are +implicitly propagated. CF-netCDF cell measure variables correspond +to cell measure constructs.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The selection of properties to be written as netCDF global +attributes may be accessed with the nc_global_attributes, +nc_clear_global_attributes and nc_set_global_attribute +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
measure: str, optional

Set the measure that indicates which metric given by +the data array. Ignored if the source parameter is +set.

+

The measure may also be set after initialisation with +the set_measure method.

+
+
Parameter example:

measure='area'

+
+
+
+
properties: dict, optional
+

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'cell_area'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the measure, properties and data from those +of source.

+

Note that if source is a CellMeasure instance then +cfdm.CellMeasure(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the cell measure construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_measure

Remove the measure.

get_measure

Return the measure.

has_measure

Whether the measure has been set.

set_measure

Set the measure.

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Returns the commands to create the cell measure construct.

equals

Whether two cell measure constructs are the same.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_get_external

Whether a construct matches an external netCDF variable.

nc_set_external

Set external status of a netCDF variable.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.CellMethod.html b/docs/1.9.0.1/class/cfdm.CellMethod.html new file mode 100644 index 0000000000..3bd04a9539 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.CellMethod.html @@ -0,0 +1,382 @@ + + + + + + + cfdm.CellMethod — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod

+
+
+
+class cfdm.CellMethod(axes=None, method=None, qualifiers=None, source=None, copy=True)[source]
+

Bases: cfdm.mixin.container.Container, cfdm.core.cellmethod.CellMethod

+

A cell method construct of the CF data model.

+

One or more cell method constructs describe how the cell values of +the field construct represent the variation of the physical +quantity within its cells, i.e. the structure of the data at a +higher resolution.

+

A single cell method construct consists of a set of axes, a +“method” property which describes how a value of the field +construct’s data array describes the variation of the quantity +within a cell over those axes (e.g. a value might represent the +cell area average), and descriptive qualifiers serving to indicate +more precisely how the method was applied (e.g. recording the +spacing of the original data, or the fact that the method was +applied only over El Nino years).

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
axes: (sequence of) str, optional

Set the axes of the cell method construct, specified +either by the construct identifiers of domain axis +constructs, standard names, or the special string +'area'.

+

The axes may also be set after initialisation with the +set_axes method.

+
+
Parameter example:

axes='domainaxis0'

+
+
Parameter example:

axes=['domainaxis0']

+
+
Parameter example:

axes=('domainaxis0', 'domainaxis1')

+
+
Parameter example:

axes='area'

+
+
Parameter example:

axes=['domainaxis2', 'time']

+
+
+
+
method: str, optional

Set the axes of the cell method construct. Either one or +more domain axis construct identifiers or standard +names. Ignored if the source parameter is set.

+

The method may also be set after initialisation with the +set_method method.

+
+
Parameter example:

method='mean'

+
+
+
+
qualifiers: dict, optional

Set descriptive qualifiers. The dictionary keys are +qualifier names, with corresponding values. Ignored if the +source parameter is set.

+

Qualifiers may also be set after initialisation with the +qualifiers and set_qualifier methods.

+
+
Parameter example:

qualifiers={'comment': 'sampled instantaneously'}

+
+
Parameter example:

qualifiers={'where': 'sea', ''over': 'ice'}

+
+
+
+
source: optional

Initialise the axes, method and qualifiers from those of +source.

+

Note that if source is a CellMethod instance then +cfdm.CellMethod(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the cell method construct.

identity

Return the canonical identity for the cell method construct.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_axes

Remove the axes of the cell method.

get_axes

Return the axes of the cell method.

has_axes

Whether the axes of the cell method have been set.

set_axes

Set the axes of the cell method.

del_method

Remove the method of the cell method.

get_method

Return the method of the cell method.

has_method

Whether the method of the cell method has been set.

set_method

Set the method of the cell method.

del_qualifier

Remove a qualifier of the cell method.

get_qualifier

Return a qualifier of the cell method.

has_qualifier

Whether a qualifier of the cell method has been set.

set_qualifier

Set a qualifier of the cell method.

qualifiers

Return all qualifiers of the cell method.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Returns the commands to create the cell method construct.

equals

Whether two cell method constructs are the same.

sorted

Return a new cell method construct with sorted axes.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.CompressedArray.html b/docs/1.9.0.1/class/cfdm.CompressedArray.html new file mode 100644 index 0000000000..e600a45f83 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.CompressedArray.html @@ -0,0 +1,308 @@ + + + + + + + cfdm.CompressedArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray

+
+
+
+class cfdm.CompressedArray(compressed_array=None, shape=None, size=None, ndim=None, compressed_dimension=None, compression_type=None, **kwargs)[source]
+

Bases: cfdm.data.abstract.array.Array

+

Mixin class for a container of an underlying compressed array.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
compressed_array: subclass of Array

The compressed array.

+
+
shape: tuple

The uncompressed array dimension sizes.

+
+
size: int

Number of elements in the uncompressed array.

+
+
ndim: int

The number of uncompressed array dimensions

+
+
compressed_dimension: int

The position of the compressed dimension in the compressed +array.

+
+
compression_type: str

The type of compression.

+
+
kwargs: optional

Further named parameters and their values needed to define +the compressed array.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + + + + +

array

Returns a numpy array containing the uncompressed data.

compressed_array

Returns an independent numpy array with the compressed data.

dtype

Data-type of the data elements.

ndim

The number of dimensions of the uncompressed data.

shape

Shape of the uncompressed data.

size

Number of elements in the uncompressed data.

+
+
+

Compression

+

Methods

+ ++++ + + + + + + + + + + + +

get_compressed_axes

Return axes that are compressed in the underlying array.

get_compressed_dimension

Returns the compressed dimension’s position in the array.

get_compression_type

Returns the array’s compression type.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

source

Return the underlying array object.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace as an independent numpy array.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Configuration.html b/docs/1.9.0.1/class/cfdm.Configuration.html new file mode 100644 index 0000000000..422ae8cbf9 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Configuration.html @@ -0,0 +1,264 @@ + + + + + + + cfdm.Configuration — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration

+
+
+
+class cfdm.Configuration[source]
+

Bases: dict

+

Dictionary-like container for the global constants.

+

The container has context manager support.

+

Initialisation is as for a dict, and nearly all of the dict +methods are available with the same behaviours (clear, +fromkeys, get, items, keys, pop, popitem, +setdefault, update, values):

+
>>> c = cfdm.Configuration(atol=0.1, rtol=0.2, log_level='INFO')
+>>> c
+<Configuration: {'atol': 0.1, 'rtol': 0.2, 'log_level': 'INFO'}>
+>>> print(c)
+{'atol': 0.1, 'rtol': 0.2, 'log_level': 'INFO'}
+>>> c.pop('atol')
+0.1
+>>> c
+<Configuration: {'rtol': 0.2, 'log_level': 'INFO'}>
+>>> c.clear()
+>>> c
+<Configuration: {}>
+
+
+

The copy method return a deep copy, rather than a shallow one.

+

Context manager

+

The Configuration instance can be used as a context manager that +upon exit executes the function defined by the _func attribute, +with the class itself as input kwargs parameters. For example, +the Configuration instance c would execute c._func(**c) upon +exit.

+
+

New in version (cfdm): 1.8.8.0

+
+

Must override this method in subclasses.

+
+ +
+

Copying

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Dictionary functionality

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

clear

fromkeys

Create a new dictionary with keys from iterable and values set to value.

get

Return the value for key if key is in the dictionary, else default.

items

keys

pop

If key is not found, d is returned if given, otherwise KeyError is raised

popitem

Remove and return a (key, value) pair as a 2-tuple.

setdefault

Insert key with a value of default if key is not in the dictionary.

update

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + +

__enter__

Enter the runtime context.

__exit__

Exit the runtime context.

__repr__

Called by the repr built-in function.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Constant.html b/docs/1.9.0.1/class/cfdm.Constant.html new file mode 100644 index 0000000000..8798772e36 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Constant.html @@ -0,0 +1,363 @@ + + + + + + + cfdm.Constant — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant

+
+
+
+class cfdm.Constant(value, _func=None)[source]
+

Bases: object

+

A container for a constant with context manager support.

+

The constant value is accessed via the value attribute:

+
>>> c = cfdm.Constant(1.9)
+>>> c.value
+1.9
+
+
+

Conversion to int, float, str and bool is with the usual +built-in functions:

+
>>> c = cfdm.Constant(1.9)
+>>> int(c)
+1
+>>> float(c)
+1.9
+>>> str(c)
+'1.9'
+>>> bool(c)
+True
+
+
+

Augmented arithmetic assignments (+=, -=, *=, /=, +//=) update Constant objects in-place:

+
>>> c = cfdm.Constant(20)
+>>> c.value
+20
+>>> c /= 2
+>>> c
+<Constant: 10.0>
+>>> c += c
+<Constant: 20.0>
+
+
+
>>> c = cfdm.Constant('New_')
+>>> c *= 2
+<Constant: 'New_New_'>
+
+
+

Binary arithmetic operations (+, -, *, /, //) +are equivalent to the operation acting on the Constant object’s +value attribute:

+
>>> c = cfdm.Constant(20)
+>>> c.value
+20
+>>> c * c
+400
+>>> c * 3
+60
+>>> 2 - c
+-18
+
+
+
>>> c = cfdm.Constant('New_')
+>>> c * 2
+'New_New_'
+
+
+

Care is required when the right hand side operand is a numpy +array

+
>>> c * numpy.array([1, 2, 3])
+array([20, 40, 60])
+>>> d = numpy.array([1, 2, 3]) * c
+>>> d
+array([10, 20, 30], dtype=object)
+>>> type(d[0])
+int
+
+
+

Unary arithmetic operations (+, -, abs) are equivalent +to the operation acting on the Constant object’s value +attribute:

+
>>> c = cfdm.Constant(-20)
+>>> c.value
+-20
+>>> -c
+20
+>>> abs(c)
+20
+>>> +c
+-20
+
+
+

Rich comparison operations are equivalent to the operation acting +on the Constant object’s value attribute:

+
>>> c = cfdm.Constant(20)
+>>> d = cfdm.Constant(1)
+>>> c.value
+20
+>>> d.value
+1
+>>> d < c
+True
+>>> c != 20
+False
+>>> 20 == c
+True
+
+
+
>>> c = cfdm.Constant('new')
+>>> d = cfdm.Constant('old')
+>>> c == d
+False
+>>> c == 'new'
+True
+>>> c != 3
+True
+>>> 3 == c
+False
+
+
+
>>> c = cfdm.Constant()
+>>> c < numpy.array([10, 20, 30])
+array([False, False,  True])
+>>> numpy.array([10, 20, 30]) >= c
+array([False,  True,  True])
+
+
+

Constant instances are hashable.

+

Context manager

+

The Constant instance can be used as a context manager that +upon exit executes the function defined by the _func attribute, +with the value attribute as an argument. For example, the +Constant instance c would execute c._func(c.value) upon +exit.

+
+

New in version (cfdm): 1.8.8.0

+
+

Initialisation

+
+
Parameters
+
+
value:

A value for the constant.

+
+
_func: function, optional

A function that that is executed upon exit from a +context manager, that takes the value parameter as +its argument.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

value

+
+
+

Copying

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+

Attributes

+ ++++ + + + + + +

_func

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__enter__

Enter the runtime context.

__exit__

Exit the runtime context.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Constructs.html b/docs/1.9.0.1/class/cfdm.Constructs.html new file mode 100644 index 0000000000..5b018919be --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Constructs.html @@ -0,0 +1,487 @@ + + + + + + + cfdm.Constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs

+
+
+
+class cfdm.Constructs(auxiliary_coordinate=None, dimension_coordinate=None, domain_ancillary=None, field_ancillary=None, cell_measure=None, coordinate_reference=None, domain_axis=None, cell_method=None, source=None, copy=True, _use_data=True, _view=False, _ignore=())[source]
+

Bases: cfdm.mixin.container.Container, cfdm.core.constructs.Constructs

+

A container for metadata constructs.

+

The following metadata constructs can be included:

+
    +
  • auxiliary coordinate constructs

  • +
  • coordinate reference constructs

  • +
  • cell measure constructs

  • +
  • dimension coordinate constructs

  • +
  • domain ancillary constructs

  • +
  • domain axis constructs

  • +
  • cell method constructs

  • +
  • field ancillary constructs

  • +
+

The container is used by used by Field and Domain instances.

+

The container is like a dictionary in many ways, in that it stores +key/value pairs where the key is the unique construct key with +corresponding metadata construct value, and provides some of the +usual dictionary methods.

+

Calling

+

Calling a Constructs instance selects metadata constructs by +identity and is an alias for the filter_by_identity method. For +example, to select constructs that have an identity of +“air_temperature”: d = c('air_temperature').

+

Note that c(*identities, **filter_kwargs) is equivalent to +c.filter(filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
auxiliary_coordinate: str, optional

The base name for keys of auxiliary coordinate +constructs.

+
+
Parameter example:

auxiliary_coordinate='auxiliarycoordinate'

+
+
+
+
dimension_coordinate: str, optional

The base name for keys of dimension coordinate +constructs.

+
+
Parameter example:

dimension_coordinate='dimensioncoordinate'

+
+
+
+
domain_ancillary: str, optional

The base name for keys of domain ancillary constructs.

+
+
Parameter example:

domain_ancillary='domainancillary'

+
+
+
+
field_ancillary: str, optional

The base name for keys of field ancillary constructs.

+
+
Parameter example:

field_ancillary='fieldancillary'

+
+
+
+
cell_measure: str, optional

The base name for keys of cell measure constructs.

+
+
Parameter example:

cell_measure='cellmeasure'

+
+
+
+
coordinate_reference: str, optional

The base name for keys of coordinate reference +constructs.

+
+
Parameter example:

coordinate_reference='coordinatereference'

+
+
+
+
domain_axis: str, optional

The base name for keys of domain axis constructs.

+
+
Parameter example:

domain_axis='domainaxis'

+
+
+
+
cell_method: str, optional

The base name for keys of cell method constructs.

+
+
Parameter example:

cell_method='cellmethod'

+
+
+
+
source: optional

Initialise the construct keys and contained metadata +constructs from those of source.

+
+
copy: bool, optional

If False then do not deep copy metadata constructs +from those of source prior to initialisation. By +default such metadata constructs are deep copied.

+
+
_ignore: sequence of str, optional

Ignores the given construct types.

+
+
Parameter example:

_ignore=('cell_method', 'field_ancillary')

+
+
+
+
+
+
+
+ +
+

Filtering

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

filter_by_identity

Select metadata constructs by identity.

filter_by_property

Select metadata constructs by property.

filter_by_measure

Select cell measure constructs by measure.

filter_by_method

Select cell method constructs by method.

filter_by_axis

Select metadata constructs by axes spanned by their data.

filter_by_naxes

Selects constructs by the number of axes their data spans.

filter_by_size

Select domain axis constructs by size.

filter_by_data

Selects metadata constructs that could contain data.

filter_by_type

Select metadata constructs by type.

filter_by_key

Select metadata constructs by key.

filter_by_ncdim

Select domain axis constructs by netCDF dimension name.

filter_by_ncvar

Select domain axis constructs by netCDF variable name.

filter

Select metadata constructs by a chain of filters.

domain_axes

Return domain axis constructs.

filters_applied

A history of filters that have been applied.

clear_filters_applied

Remove the history of filters that have been applied.

inverse_filter

Return the inverse of previous filters.

unfilter

Return the constructs that existed prior to previous filters.

+
+
+

Constructs and identifiers

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

key

Return the construct key of the sole metadata construct.

value

Return the sole metadata construct.

construct_type

Return the type of a construct for a given key.

construct_types

Return all of the construct types for all keys.

domain_axis_identity

Return the canonical identity for a domain axis construct.

new_identifier

Return a new, unused construct key.

+
+
+

Data axes

+

Methods

+ ++++ + + + + + + + + +

data_axes

Returns the axes spanned by the data.

get_data_axes

Return the keys of the axes spanned by a construct’s data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

shallow_copy

Return a shallow copy.

equals

Whether two Constructs instances are the same.

replace

Replace one metadata construct with another.

todict

Return a dictionary of the metadata constructs.

ordered

Return the constructs in their predetermined order.

+
+
+

Dictionary-access methods

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

get

Returns the construct for the key, else default.

items

Return the items as (construct key, construct) pairs.

keys

Return all of the construct keys, in arbitrary order.

values

Return all of the metadata constructs, in arbitrary order.

__getitem__

Return a construct with the given key.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

__call__

Select metadata constructs by identity.

__contains__

Implements membership test operators for construct keys.

__copy__

Called by the copy.copy standard library function.

__deepcopy__

Called by the copy.deepcopy standard library function.

__getitem__

Return a construct with the given key.

__iter__

Called when an iterator is required.

__len__

Return the number of constructs.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.CoordinateConversion.html b/docs/1.9.0.1/class/cfdm.CoordinateConversion.html new file mode 100644 index 0000000000..e864bf04f5 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.CoordinateConversion.html @@ -0,0 +1,345 @@ + + + + + + + cfdm.CoordinateConversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion

+
+
+
+class cfdm.CoordinateConversion(parameters=None, domain_ancillaries=None, source=None, copy=True)[source]
+

Bases: cfdm.mixin.parametersdomainancillaries.ParametersDomainAncillaries, cfdm.core.coordinateconversion.CoordinateConversion

+

A coordinate conversion component.

+

Specifically, a coordinate conversion component of a coordinate +reference construct of the CF data model.

+

A coordinate conversion formula converting coordinate values taken +from the dimension or auxiliary coordinate constructs to a +different coordinate system. A term of the conversion formula can +be a scalar or vector parameter which does not depend on any +domain axis constructs, may have units, or may be a descriptive +string (such as the projection name “mercator”), or it can be a +reference to a domain ancillary construct (such as one containing +spatially varying orography data). A coordinate reference +construct relates the coordinate values of the field to locations +in a planetary reference frame.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are term names, +with corresponding parameter values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
domain_ancillaries: dict, optional

Set references to domain ancillary constructs. The +dictionary keys are term names, with corresponding +domain ancillary construct keys. Ignored if the +source parameter is set.

+

Domain ancillaries may also be set after initialisation +with the set_domain_ancillaries and +set_domain_ancillary methods.

+
+
Parameter example:

domain_ancillaries={'orog': 'domainancillary2'}

+
+
+
+
source: optional

Initialise the parameters and domain ancillary terms +from those of source.

+

Note that if source is a CoordinateConversion instance then +cfdm.CoordinateConversion(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameter terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

clear_parameters

Remove all parameters.

set_parameters

Set parameters.

+
+
+

Domain ancillary terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_domain_ancillary

Delete a domain ancillary.

get_domain_ancillary

Return a domain ancillary term.

has_domain_ancillary

Whether a domain ancillary has been set.

set_domain_ancillary

Set an domain ancillary-valued term.

domain_ancillaries

Return all domain_ancillaries.

clear_domain_ancillaries

Remove all domain_ancillaries.

set_domain_ancillaries

Set domain_ancillaries.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

equals

Whether two instances are the same.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__bool__

Called by the bool built-in function.

__deepcopy__

Called by the copy.deepcopy function.

cfdm.CoordinateConversion.__nonzero__

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.CoordinateReference.html b/docs/1.9.0.1/class/cfdm.CoordinateReference.html new file mode 100644 index 0000000000..b42cb77b4f --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.CoordinateReference.html @@ -0,0 +1,489 @@ + + + + + + + cfdm.CoordinateReference — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference

+
+
+
+class cfdm.CoordinateReference(coordinates=None, datum=None, coordinate_conversion=None, source=None, copy=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.container.Container, cfdm.core.coordinatereference.CoordinateReference

+

A coordinate reference construct of the CF data model.

+

A coordinate reference construct relates the coordinate values of +the coordinate system to locations in a planetary reference frame.

+

The domain of a field construct may contain various coordinate +systems, each of which is constructed from a subset of the +dimension and auxiliary coordinate constructs. For example, the +domain of a four-dimensional field construct may contain +horizontal (y-x), vertical (z), and temporal (t) coordinate +systems. There may be more than one of each of these, if there is +more than one coordinate construct applying to a particular +spatiotemporal dimension (for example, there could be both +latitude-longitude and y-x projection coordinate systems). In +general, a coordinate system may be constructed implicitly from +any subset of the coordinate constructs, yet a coordinate +construct does not need to be explicitly or exclusively associated +with any coordinate system.

+

A coordinate system of the field construct can be explicitly +defined by a coordinate reference construct which relates the +coordinate values of the coordinate system to locations in a +planetary reference frame and consists of the following:

+
    +
  • References to the dimension coordinate and auxiliary coordinate +constructs that define the coordinate system to which the +coordinate reference construct applies. Note that the coordinate +values are not relevant to the coordinate reference construct, +only their properties.

  • +
+
    +
  • A definition of a datum specifying the zeroes of the dimension +and auxiliary coordinate constructs which define the coordinate +system. The datum may be implied by the metadata of the +referenced dimension and auxiliary coordinate constructs, or +explicitly provided.

  • +
+
    +
  • A coordinate conversion, which defines a formula for converting +coordinate values taken from the dimension or auxiliary +coordinate constructs to a different coordinate system. A +coordinate reference construct relates the coordinate values of +the field to locations in a planetary reference frame.

  • +
+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
coordinates: sequence of str, optional

Identify the related dimension and auxiliary +coordinate constructs by their construct +identifiers. Ignored if the source parameter is set.

+

The coordinates may also be set after initialisation +with the set_coordinates and set_coordinate +methods.

+
+
Parameter example:

coordinates=['dimensioncoordinate2']

+
+
Parameter example:

coordinates=('dimensioncoordinate0', 'dimensioncoordinate1')

+
+
+
+
datum: Datum, optional

Set the datum component of the coordinate reference +construct. Ignored if the source parameter is set.

+

The datum may also be set after initialisation with +the set_datum method.

+
+
coordinate_conversion: CoordinateConversion, optional

Set the coordinate conversion component of the +coordinate reference construct. Ignored if the +source parameter is set.

+

The coordinate conversion may also be set after +initialisation with the set_coordinate_conversion +method.

+
+
source: optional

Initialise the coordinates, datum and coordinate +conversion from those of source.

+

Note that if source is a CoordinateReference instance then +cfdm.CoordinateReference(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the coordinate reference construct.

identity

Return the canonical identity.

identities

Returns all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Coordinates

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

del_coordinate

Remove a reference to a coordinate construct.

has_coordinate

Whether a reference to a coordinate construct has been set.

set_coordinate

Set a reference to a coordinate construct.

coordinates

Return all references to coordinate constructs.

clear_coordinates

Remove all references to coordinate constructs.

set_coordinates

Set references to coordinate constructs.

+
+
+

Datum

+

Methods

+ ++++ + + + + + + + + + + + +

del_datum

Remove the datum component.

get_datum

Return the datum component.

set_datum

Set the datum component.

+

Attributes

+ ++++ + + + + + +

datum

Return the datum component.

+
+
+

Coordinate conversion

+

Methods

+ ++++ + + + + + + + + + + + +

del_coordinate_conversion

Remove the coordinate conversion component.

get_coordinate_conversion

Get the coordinate conversion component.

set_coordinate_conversion

Set the coordinate conversion component.

+

Attributes

+ ++++ + + + + + +

coordinate_conversion

Return the coordinate conversion component.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Returns the commands to create the coordinate reference.

equals

Whether two coordinate reference constructs are the same.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Count.html b/docs/1.9.0.1/class/cfdm.Count.html new file mode 100644 index 0000000000..84d8a1c575 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Count.html @@ -0,0 +1,514 @@ + + + + + + + cfdm.Count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count

+
+
+
+class cfdm.Count(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.netcdf.NetCDFSampleDimension, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.abstract.propertiesdata.PropertiesData

+

A count variable required to uncompress a ragged array.

+

A collection of features stored using a contiguous ragged array +combines all features along a single dimension (the sample +dimension) such that each feature in the collection occupies a +contiguous block.

+

The information needed to uncompress the data is stored in a count +variable that gives the size of each block.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The name of the netCDF dimension spanned by the count variable’s +data may be accessed with the nc_set_dimension, +nc_get_dimension, nc_del_dimension and nc_has_dimension +methods.

+

The name of the netCDF sample dimension spanned by the compressed +data (that is stored in the “sample_dimension” netCDF attribute +and which does not correspond to a domain axis construct) may be +accessed with the nc_set_sample_dimension, +nc_get_sample_dimension, nc_del_sample_dimension and +nc_has_sample_dimension methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'number of obs'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
source: optional

Initialise the properties and data from those of +source.

+

Note that if source is a Count instance then +cfdm.Count(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the count variable.

identity

Return the canonical identity.

identities

Return all possible identities.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

get_filenames

Return the name of the file or files containing the data.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+

Sample dimension

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_sample_dimension

Remove the netCDF sample dimension name.

nc_get_sample_dimension

Return the netCDF sample dimension name.

nc_has_sample_dimension

Whether the netCDF sample dimension name has been set.

nc_set_sample_dimension

Set the netCDF sample dimension name.

nc_sample_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_sample_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_sample_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Data.html b/docs/1.9.0.1/class/cfdm.Data.html new file mode 100644 index 0000000000..26ba00e945 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Data.html @@ -0,0 +1,760 @@ + + + + + + + cfdm.Data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data

+
+
+class cfdm.Data(array=None, units=None, calendar=None, fill_value=None, source=None, copy=True, dtype=None, mask=None, _use_array=True, **kwargs)[source]
+

Bases: cfdm.mixin.container.Container, cfdm.mixin.netcdf.NetCDFHDF5, cfdm.core.data.data.Data

+

An orthogonal multidimensional array with masking and units.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
array: data_like, optional

The array of values.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

Ignored if the source parameter is set.

+
+
Parameter example:

array=[34.6]

+
+
Parameter example:

array=[[1, 2], [3, 4]]

+
+
Parameter example:

array=numpy.ma.arange(10).reshape(2, 1, 5)

+
+
+
+
units: str, optional

The physical units of the data. Ignored if the source +parameter is set.

+

The units may also be set after initialisation with the +set_units method.

+
+
Parameter example:

units='km hr-1'

+
+
Parameter example:

units='days since 2018-12-01'

+
+
+
+
calendar: str, optional

The calendar for reference time units. Ignored if the +source parameter is set.

+

The calendar may also be set after initialisation with the +set_calendar method.

+
+
Parameter example:

calendar='360_day'

+
+
+
+
fill_value: optional

The fill value of the data. By default, or if set to +None, the numpy fill value appropriate to the array’s +data type will be used (see +numpy.ma.default_fill_value). Ignored if the source +parameter is set.

+

The fill value may also be set after initialisation with +the set_fill_value method.

+
+
Parameter example:

fill_value=-999.

+
+
+
+
dtype: data-type, optional

The desired data-type for the data. By default the +data-type will be inferred form the array parameter.

+

The data-type may also be set after initialisation +with the dtype attribute.

+
+
Parameter example:

dtype=float

+
+
Parameter example:

dtype='float32'

+
+
Parameter example:

dtype=numpy.dtype('i2')

+
+
+
+
mask: data_like, optional

Apply this mask to the data given by the array +parameter. By default, or if mask is None, no mask +is applied. May be any data_like object that +broadcasts to array. Masking will be carried out +where mask elements evaluate to True.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

This mask will applied in addition to any mask already +defined by the array parameter.

+
+
source: optional

Initialise the array, units, calendar and fill value +from those of source.

+

Note that if source is a Data instance then +cfdm.Data(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
kwargs: ignored

Not used. Present to facilitate subclassing.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of data dimensions.

shape

Tuple of data dimension sizes.

size

Number of elements in the data.

+
+
+

Units

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_units

Delete the units.

get_units

Return the units.

has_units

Whether units have been set.

set_units

Set the units.

del_calendar

Delete the calendar.

get_calendar

Return the calendar.

has_calendar

Whether a calendar has been set.

set_calendar

Set the calendar.

+
+
+

Data creation routines

+
+

Ones and zeros

+ ++++ + + + + + +

empty

Create a new data array without initialising the elements.

+
+
+

From existing data

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+
+

Data manipulation routines

+
+

Changing data shape

+ ++++ + + + + + +

flatten

Flatten axes of the data.

+
+
+

Transpose-like operations

+ ++++ + + + + + +

transpose

Permute the axes of the data array.

+
+
+

Changing number of dimensions

+ ++++ + + + + + + + + +

insert_dimension

Expand the shape of the data array.

squeeze

Remove size 1 axes from the data.

+
+
+

Adding and removing elements

+ ++++ + + + + + +

unique

The unique elements of the data.

+
+
+
+

Date-time support

+ ++++ + + + + + + + + + + + + + + +

del_calendar

Delete the calendar.

get_calendar

Return the calendar.

has_calendar

Whether a calendar has been set.

set_calendar

Set the calendar.

+

Attributes

+ ++++ + + + + + + + + +

datetime_array

Returns an independent numpy array of datetimes.

datetime_as_string

Returns an independent numpy array with datetimes as strings.

+
+
+

Indexing routines

+
+

Single value selection

+ ++++ + + + + + + + + + + + +

first_element

Return the first element of the data as a scalar.

second_element

Return the second element of the data as a scalar.

last_element

Return the last element of the data as a scalar.

+
+
+
+

Logic functions

+
+

Truth value testing

+ ++++ + + + + + +

any

Test whether any data array elements evaluate to True.

+
+
+

Comparison

+ ++++ + + + + + +

equals

Whether two data arrays are the same.

+
+
+
+

Mask support

+ ++++ + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking.

filled

Replace masked elements with the fill value.

del_fill_value

Delete the fill value.

get_fill_value

Return the missing data value.

has_fill_value

Whether a fill value has been set.

set_fill_value

Set the missing data value.

+

Attributes

+ ++++ + + + + + +

mask

The Boolean missing data mask of the data array.

+
+
+

Mathematical functions

+
+

Sums, products, differences

+ ++++ + + + + + +

sum

Return the sum of an array or the sum along axes.

+
+
+
+

Set routines

+
+

Making proper sets

+ ++++ + + + + + +

unique

The unique elements of the data.

+
+
+
+

Sorting, searching, and counting

+
+
+

Statistics

+
+

Order statistics

+ ++++ + + + + + + + + + + + + + + +

maximum

Return the maximum of an array or the maximum along axes.

minimum

Return the minimum of an array or minimum along axes.

max

Alias for maximum.

min

Alias for minimum.

+
+
+

Sums

+ ++++ + + + + + +

sum

Return the sum of an array or the sum along axes.

+
+
+
+

Compression by convention

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

get_compressed_axes

Returns the dimensions that are compressed in the array.

get_compressed_dimension

Returns the compressed dimension’s array position.

get_compression_type

Returns the type of compression applied to the array.

get_count

Return the count variable for a compressed array.

get_index

Return the index variable for a compressed array.

get_list

Return the list variable for a compressed array.

uncompress

Uncompress the underlying array.

+

Attributes

+ ++++ + + + + + +

compressed_array

Returns an independent numpy array of the compressed data.

+
+
+

Miscellaneous

+ ++++ + + + + + + + + + + + +

creation_commands

Return the commands that would create the data object.

get_filenames

Return the name of the file containing the data array.

source

Return the underlying array object.

+
+
+

Performance

+ ++++ + + + + + + + + + + + + + + +

nc_clear_hdf5_chunksizes

Clear the HDF5 chunksizes for the data.

nc_hdf5_chunksizes

Return the HDF5 chunksizes for the data.

nc_set_hdf5_chunksizes

Set the HDF5 chunksizes for the data.

to_memory

Bring data on disk into memory and retain it there.

+
+
+

Special

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the data defined by indices.

__int__

Called by the int built-in function.

__iter__

Called when an iterator is required.

__repr__

Called by the repr built-in function.

__setitem__

Assign to data elements defined by indices.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Datum.html b/docs/1.9.0.1/class/cfdm.Datum.html new file mode 100644 index 0000000000..53aee175e2 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Datum.html @@ -0,0 +1,351 @@ + + + + + + + cfdm.Datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum

+
+
+
+class cfdm.Datum(parameters=None, source=None, copy=True)[source]
+

Bases: cfdm.mixin.parameters.Parameters, cfdm.mixin.netcdf.NetCDFVariable, cfdm.core.datum.Datum

+

A datum component of a CF data model coordinate reference.

+

A datum is a complete or partial definition of the zeroes of the +dimension and auxiliary coordinate constructs which define a +coordinate system.

+

The datum may contain the definition of a geophysical surface +which corresponds to the zero of a vertical coordinate construct, +and this may be required for both horizontal and vertical +coordinate systems.

+

Elements of the datum not specified may be implied by the +properties of the dimension and auxiliary coordinate constructs +referenced by the CoordinateReference instance that contains the +datum.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are parameter +names, with corresponding values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
source: optional

Initialise the parameters from those of source.

+

Note that if source is a Datum instance then +cfdm.Datum(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameter terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

set_parameters

Set parameters.

clear_parameters

Remove all parameters.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

equals

Whether two instances are the same.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__bool__

Called by the bool built-in function.

__deepcopy__

Called by the copy.deepcopy function.

cfdm.Datum.__nonzero__

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.DimensionCoordinate.html b/docs/1.9.0.1/class/cfdm.DimensionCoordinate.html new file mode 100644 index 0000000000..774269c3bf --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.DimensionCoordinate.html @@ -0,0 +1,628 @@ + + + + + + + cfdm.DimensionCoordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate

+
+
+
+class cfdm.DimensionCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.coordinate.Coordinate, cfdm.core.dimensioncoordinate.DimensionCoordinate

+

A dimension coordinate construct of the CF data model.

+

A dimension coordinate construct provides information which locate +the cells of the domain and which depend on a subset of the domain +axis constructs. The dimension coordinate construct is able to +unambiguously describe cell locations because a domain axis can be +associated with at most one dimension coordinate construct, whose +data array values must all be non-missing and strictly +monotonically increasing or decreasing. They must also all be of +the same numeric data type. If cell bounds are provided, then each +cell must have exactly two vertices. CF-netCDF coordinate +variables and numeric scalar coordinate variables correspond to +dimension coordinate constructs.

+

The dimension coordinate construct consists of a data array of the +coordinate values which spans a subset of the domain axis +constructs, an optional array of cell bounds recording the extents +of each cell (stored in a Bounds object), and properties to +describe the coordinates. An array of cell bounds spans the same +domain axes as its coordinate array, with the addition of an extra +dimension whose size is that of the number of vertices of each +cell. This extra dimension does not correspond to a domain axis +construct since it does not relate to an independent axis of the +domain. Note that, for climatological time axes, the bounds are +interpreted in a special way indicated by the cell method +constructs.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional
+

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'time'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, data and bounds from those of +source.

+

Note that if source is a DimensionCoordinate instance then +cfdm.DimensionCoordinate(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the dimension coordinate construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

get_bounds_data

Return the bounds data.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

del_node_count

Remove the node count variable for geometry bounds.

get_node_count

Return the node count variable for geometry bounds.

has_node_count

Whether geometry bounds have a node count variable.

set_node_count

Set the node count variable for geometry bounds.

del_part_node_count

Remove the part node count variable for geometry bounds.

get_part_node_count

Return the part node count variable for geometry bounds.

has_part_node_count

Whether geometry bounds have a part node count variable.

set_part_node_count

Set the part node count variable for geometry bounds.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Climatology

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

+
+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the construct defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Domain.html b/docs/1.9.0.1/class/cfdm.Domain.html new file mode 100644 index 0000000000..78ad76c09c --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Domain.html @@ -0,0 +1,642 @@ + + + + + + + cfdm.Domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain

+
+
+
+class cfdm.Domain(properties=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.fielddomain.FieldDomain, cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFGeometry, cfdm.mixin.netcdf.NetCDFGlobalAttributes, cfdm.mixin.netcdf.NetCDFGroupAttributes, cfdm.mixin.netcdf.NetCDFComponents, cfdm.mixin.netcdf.NetCDFUnreferenced, cfdm.mixin.properties.Properties, cfdm.core.domain.Domain

+

A domain construct of the CF data model.

+

The domain represents a set of discrete “locations” in what +generally would be a multi-dimensional space, either in the real +world or in a model’s simulated world. The data array elements of +a field construct correspond to individual location of a domain.

+

The domain construct is defined collectively by the following +constructs of the CF data model: domain axis, dimension +coordinate, auxiliary coordinate, cell measure, coordinate +reference, and domain ancillary constructs; as well as properties +to describe the domain.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The selection of properties to be written as netCDF global +attributes may be accessed with the nc_global_attributes, +nc_clear_global_attributes and nc_set_global_attribute +methods.

+

{{netCDF variable group}}

+

The netCDF group attributes may be accessed with the +nc_group_attributes, nc_clear_group_attributes, +nc_set_group_attribute and nc_set_group_attributes methods.

+

The netCDF geometry variable name and group structure may be +accessed with the nc_set_geometry_variable, +nc_get_geometry_variable, nc_geometry_variable_groups, +nc_clear_variable_groups and nc_set_geometry_variable_groups +methods.

+

Some components exist within multiple constructs, but when written +to a netCDF dataset the netCDF names associated with such +components will be arbitrarily taken from one of them. The netCDF +variable, dimension and sample dimension names and group +structures for such components may be set or removed consistently +across all such components with the nc_del_component_variable, +nc_set_component_variable, nc_set_component_variable_groups, +nc_clear_component_variable_groups, +nc_del_component_dimension, nc_set_component_dimension, +nc_set_component_dimension_groups, +nc_clear_component_dimension_groups, +nc_del_component_sample_dimension, +nc_set_component_sample_dimension, +nc_set_component_sample_dimension_groups, +nc_clear_component_sample_dimension_groups methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'Domain for model'}

+
+
+
+
source: optional

Initialise the metadata constructs from those of +source.

+

Note that if source is a Domain instance then +cfdm.Domain(source=source) is equivalent +to source.copy().

+

A new domain may also be instantiated with the +fromconstructs class method.

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +

Methods

+
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the domain construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Metadata constructs

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

construct

Return a metadata construct.

construct_key

Return the identifier of a metadata construct.

construct_item

Return a metadata construct and its identifier.

del_construct

Remove a metadata construct.

get_construct

Return a metadata construct.

has_construct

Whether a unique metadata construct exists.

set_construct

Set a metadata construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by a construct’s data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets domain axis constructs spanned by the construct data.

domain_axis_key

Returns the domain axis key spanned by 1-d coordinates.

auxiliary_coordinates

Return auxiliary coordinate constructs.

cell_measures

Return cell measure constructs.

coordinates

Return dimension and auxiliary coordinate constructs.

coordinate_references

Return coordinate reference constructs.

dimension_coordinates

Return dimension coordinate constructs.

domain_ancillaries

Return domain ancillary constructs.

domain_axes

Return domain axis constructs.

climatological_time_axes

Return all axes which are climatological time axes.

+

Attributes

+ ++++ + + + + + +

constructs

Return the metadata constructs.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

climatological_time_axes

Return all axes which are climatological time axes.

copy

Return a deep copy.

creation_commands

Return the commands that would create the domain construct.

equals

Whether two constructs are the same.

fromconstructs

Return a new domain containing the given metadata constructs.

get_filenames

Return the file names containing the metadata construct data.

has_bounds

Whether or not there are cell bounds.

has_data

Whether or not the construct has data.

has_geometry

Return whether or not any coordinates have cell geometries.

apply_masking

Apply masking as defined by the CF conventions.

get_filenames

Return the file names containing the metadata construct data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_global_attributes

Returns properties to write as netCDF global attributes.

nc_clear_global_attributes

Removes properties to write as netCDF global attributes.

nc_set_global_attribute

Select a property to be written as a netCDF global attribute.

nc_set_global_attributes

Set properties to be written as netCDF global attributes.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_group_attributes

Returns properties to write as netCDF group attributes.

nc_clear_group_attributes

Removes properties to write as netCDF group attributes.

nc_set_group_attribute

Select a property to be written as a netCDF group attribute.

nc_set_group_attributes

Set properties to be written as netCDF group attributes.

+
+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_geometry_variable

Remove the netCDF geometry container variable name.

nc_get_geometry_variable

Return the netCDF geometry container variable name.

nc_has_geometry_variable

Whether a netCDF geometry container variable has a name.

nc_set_geometry_variable

Set the netCDF geometry container variable name.

nc_geometry_variable_groups

Return the netCDF geometry variable group hierarchy.

nc_set_geometry_variable_groups

Set the netCDF geometry variable group hierarchy.

nc_clear_geometry_variable_groups

Remove the netCDF geometry variable group hierarchy.

+
+
+

Components

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_component_variable

Remove the netCDF variable name of components.

nc_set_component_variable

Set the netCDF variable name for components.

nc_set_component_variable_groups

Set the netCDF variable groups of components.

nc_clear_component_variable_groups

Remove the netCDF variable groups of components.

nc_del_component_dimension

Remove the netCDF dimension name of components.

nc_set_component_dimension

Set the netCDF dimension name of components.

nc_set_component_dimension_groups

Set the netCDF dimension groups of components.

nc_clear_component_dimension_groups

Remove the netCDF dimension groups of components.

nc_del_component_sample_dimension

Remove the netCDF sample dimension name of components.

nc_set_component_sample_dimension

Set the netCDF sample dimension name of components.

nc_set_component_sample_dimension_groups

Set the netCDF sample dimension groups of components.

nc_clear_component_sample_dimension_groups

Remove the netCDF sample dimension groups of components.

+
+
+

Dataset compliance

+

Methods

+ ++++ + + + + + +

dataset_compliance

Return the dataset compliance report.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.DomainAncillary.html b/docs/1.9.0.1/class/cfdm.DomainAncillary.html new file mode 100644 index 0000000000..3fa5a4497f --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.DomainAncillary.html @@ -0,0 +1,593 @@ + + + + + + + cfdm.DomainAncillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary

+
+
+
+class cfdm.DomainAncillary(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.propertiesdatabounds.PropertiesDataBounds, cfdm.core.domainancillary.DomainAncillary

+

A domain ancillary construct of the CF data model.

+

A domain ancillary construct provides information which is needed +for computing the location of cells in an alternative coordinate +system. It is referenced by a term of a coordinate conversion +formula of a coordinate reference construct. It contains a data +array which depends on zero or more of the domain axes.

+

It also contains an optional array of cell bounds, stored in a +Bounds object, recording the extents of each cell (only +applicable if the array contains coordinate data), and properties +to describe the data.

+

An array of cell bounds spans the same domain axes as the data +array, with the addition of an extra dimension whose size is that +of the number of vertices of each cell.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional
+

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, data and bounds from those +of source.

+

Note that if source is a DomainAncillary instance then +cfdm.DomainAncillary(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the domain ancillary construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

get_bounds_data

Return the bounds data.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

del_node_count

Remove the node count variable for geometry bounds.

get_node_count

Return the node count variable for geometry bounds.

has_node_count

Whether geometry bounds have a node count variable.

set_node_count

Set the node count variable for geometry bounds.

del_part_node_count

Remove the part node count variable for geometry bounds.

get_part_node_count

Return the part node count variable for geometry bounds.

has_part_node_count

Whether geometry bounds have a part node count variable.

set_part_node_count

Set the part node count variable for geometry bounds.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the construct defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.DomainAxis.html b/docs/1.9.0.1/class/cfdm.DomainAxis.html new file mode 100644 index 0000000000..8eb44712c3 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.DomainAxis.html @@ -0,0 +1,371 @@ + + + + + + + cfdm.DomainAxis — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis

+
+
+
+class cfdm.DomainAxis(size=None, source=None, copy=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.netcdf.NetCDFUnlimitedDimension, cfdm.mixin.container.Container, cfdm.core.domainaxis.DomainAxis

+

A domain axis construct of the CF data model.

+

A domain axis construct specifies the number of points along an +independent axis of the domain. It comprises a positive integer +representing the size of the axis. In CF-netCDF it is usually +defined either by a netCDF dimension or by a scalar coordinate +variable, which implies a domain axis of size one. The field +construct’s data array spans the domain axis constructs of the +domain, with the optional exception of size one axes, because +their presence makes no difference to the order of the elements.

+

NetCDF interface

+

The netCDF dimension name of the construct may be accessed with +the nc_set_dimension, nc_get_dimension, nc_del_dimension and

+

Whether or not the netCDF is unlimited may be accessed with the +nc_is_unlimited and nc_set_unlimited methods. +nc_has_dimension methods.

+

The netCDF dimension group structure may be accessed with the +nc_set_dimension, nc_get_dimension, nc_dimension_groups, +nc_clear_dimension_groups and nc_set_dimension_groups methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
size: int, optional

The size of the domain axis.

+

The size may also be set after initialisation with the +set_size method.

+
+
Parameter example:

size=192

+
+
+
+
source: optional

Initialise the size from that of source.

+

Note that if source is a DomainAxis instance then +cfdm.DomainAxis(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + +

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Size

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_size

Remove the size.

has_size

Whether the size has been set.

get_size

Return the size.

set_size

Set the size.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Returns the commands to create the domain axis construct.

equals

Whether two domain axis constructs are the same.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

nc_is_unlimited

Inspect the unlimited status of the a netCDF dimension.

nc_set_unlimited

Set the unlimited status of the a netCDF dimension.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Field.html b/docs/1.9.0.1/class/cfdm.Field.html new file mode 100644 index 0000000000..cfa8535124 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Field.html @@ -0,0 +1,750 @@ + + + + + + + cfdm.Field — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field

+
+
+
+class cfdm.Field(properties=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFGeometry, cfdm.mixin.netcdf.NetCDFGlobalAttributes, cfdm.mixin.netcdf.NetCDFGroupAttributes, cfdm.mixin.netcdf.NetCDFComponents, cfdm.mixin.netcdf.NetCDFUnreferenced, cfdm.mixin.fielddomain.FieldDomain, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.field.Field

+

A field construct of the CF data model.

+

The field construct is central to the CF data model, and includes +all the other constructs. A field corresponds to a CF-netCDF data +variable with all of its metadata. All CF-netCDF elements are +mapped to a field construct or some element of the CF field +construct. The field construct contains all the data and metadata +which can be extracted from the file using the CF conventions.

+

The field construct consists of a data array and the definition of +its domain (that describes the locations of each cell of the data +array), field ancillary constructs containing metadata defined +over the same domain, and cell method constructs to describe how +the cell values represent the variation of the physical quantity +within the cells of the domain. The domain is defined collectively +by the following constructs of the CF data model: domain axis, +dimension coordinate, auxiliary coordinate, cell measure, +coordinate reference and domain ancillary constructs.

+

The field construct also has optional properties to describe +aspects of the data that are independent of the domain. These +correspond to some netCDF attributes of variables (e.g. units, +long_name and standard_name), and some netCDF global file +attributes (e.g. history and institution).

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The selection of properties to be written as netCDF global +attributes may be accessed with the nc_global_attributes, +nc_clear_global_attributes and nc_set_global_attribute +methods.

+

The netCDF group attributes may be accessed with the +nc_group_attributes, nc_clear_group_attributes, +nc_set_group_attribute and nc_set_group_attributes methods.

+

The netCDF geometry variable name and group structure may be +accessed with the nc_set_geometry_variable, +nc_get_geometry_variable, nc_geometry_variable_groups, +nc_clear_variable_groups and nc_set_geometry_variable_groups +methods.

+

Some components exist within multiple constructs, but when written +to a netCDF dataset the netCDF names associated with such +components will be arbitrarily taken from one of them. The netCDF +variable, dimension and sample dimension names and group +structures for such components may be set or removed consistently +across all such components with the nc_del_component_variable, +nc_set_component_variable, nc_set_component_variable_groups, +nc_clear_component_variable_groups, +nc_del_component_dimension, nc_set_component_dimension, +nc_set_component_dimension_groups, +nc_clear_component_dimension_groups, +nc_del_component_sample_dimension, +nc_set_component_sample_dimension, +nc_set_component_sample_dimension_groups, +nc_clear_component_sample_dimension_groups methods.

+

CF-compliance issues for field constructs read from a netCDF +dataset may be accessed with the dataset_compliance method.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'air_temperature'}

+
+
+
+
source: optional

Initialise the properties, data and metadata constructs +from those of source.

+

Note that if source is a Field instance then +cfdm.Field(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the field construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data of the field construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by the construct data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets the axes spanned by the construct data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Metadata constructs

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

construct

Return a metadata construct.

construct_key

Return the identifier of a metadata construct.

construct_item

Return a metadata construct and its identifier.

del_construct

Remove a metadata construct.

get_construct

Return a metadata construct.

has_construct

Whether a unique metadata construct exists.

set_construct

Set a metadata construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by the construct data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets the axes spanned by the construct data.

domain_axis_key

Returns the domain axis key spanned by 1-d coordinates.

auxiliary_coordinates

Return auxiliary coordinate constructs.

cell_measures

Return cell measure constructs.

cell_methods

Return cell method constructs.

coordinates

Return dimension and auxiliary coordinate constructs.

coordinate_references

Return coordinate reference constructs.

dimension_coordinates

Return dimension coordinate constructs.

domain_ancillaries

Return domain ancillary constructs.

domain_axes

Return domain axis constructs.

field_ancillaries

Return field ancillary constructs.

+

Attributes

+ ++++ + + + + + +

constructs

Return the metadata constructs.

+
+
+

Domain

+

Methods

+ ++++ + + + + + +

get_domain

Return the domain.

+

Attributes

+ ++++ + + + + + +

domain

Return the domain.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

climatological_time_axes

Return all axes which are climatological time axes.

compress

Compress the field construct.

copy

Return a deep copy.

creation_commands

Return the commands that would create the field construct.

equals

Whether two constructs are the same.

convert

Convert a metadata construct into a new field construct.

has_bounds

Whether or not there are cell bounds.

has_geometry

Return whether or not any coordinates have cell geometries.

uncompress

Uncompress the field construct.

get_filenames

Return the names of the files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_global_attributes

Returns properties to write as netCDF global attributes.

nc_clear_global_attributes

Removes properties to write as netCDF global attributes.

nc_set_global_attribute

Select a property to be written as a netCDF global attribute.

nc_set_global_attributes

Set properties to be written as netCDF global attributes.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_group_attributes

Returns properties to write as netCDF group attributes.

nc_clear_group_attributes

Removes properties to write as netCDF group attributes.

nc_set_group_attribute

Select a property to be written as a netCDF group attribute.

nc_set_group_attributes

Set properties to be written as netCDF group attributes.

+
+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_geometry_variable

Remove the netCDF geometry container variable name.

nc_get_geometry_variable

Return the netCDF geometry container variable name.

nc_has_geometry_variable

Whether a netCDF geometry container variable has a name.

nc_set_geometry_variable

Set the netCDF geometry container variable name.

nc_geometry_variable_groups

Return the netCDF geometry variable group hierarchy.

nc_set_geometry_variable_groups

Set the netCDF geometry variable group hierarchy.

nc_clear_geometry_variable_groups

Remove the netCDF geometry variable group hierarchy.

+
+
+

Components

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_component_variable

Remove the netCDF variable name of components.

nc_set_component_variable

Set the netCDF variable name for components.

nc_set_component_variable_groups

Set the netCDF variable groups of components.

nc_clear_component_variable_groups

Remove the netCDF variable groups of components.

nc_del_component_dimension

Remove the netCDF dimension name of components.

nc_set_component_dimension

Set the netCDF dimension name of components.

nc_set_component_dimension_groups

Set the netCDF dimension groups of components.

nc_clear_component_dimension_groups

Remove the netCDF dimension groups of components.

nc_del_component_sample_dimension

Remove the netCDF sample dimension name of components.

nc_set_component_sample_dimension

Set the netCDF sample dimension name of components.

nc_set_component_sample_dimension_groups

Set the netCDF sample dimension groups of components.

nc_clear_component_sample_dimension_groups

Remove the netCDF sample dimension groups of components.

+
+
+

Dataset compliance

+

Methods

+ ++++ + + + + + +

dataset_compliance

Return the dataset compliance report.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the field defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.FieldAncillary.html b/docs/1.9.0.1/class/cfdm.FieldAncillary.html new file mode 100644 index 0000000000..e099379aff --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.FieldAncillary.html @@ -0,0 +1,471 @@ + + + + + + + cfdm.FieldAncillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary

+
+
+
+class cfdm.FieldAncillary(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.fieldancillary.FieldAncillary

+

A field ancillary construct of the CF data model.

+

The field ancillary construct provides metadata which are +distributed over the same sampling domain as the field itself. For +example, if a data variable holds a variable retrieved from a +satellite instrument, a related ancillary data variable might +provide the uncertainty estimates for those retrievals (varying +over the same spatiotemporal domain).

+

The field ancillary construct consists of an array of the +ancillary data, which is zero-dimensional or which depends on one +or more of the domain axes, and properties to describe the +data. It is assumed that the data do not depend on axes of the +domain which are not spanned by the array, along which the values +are implicitly propagated. CF-netCDF ancillary data variables +correspond to field ancillary constructs. Note that a field +ancillary construct is constrained by the domain definition of the +parent field construct but does not contribute to the domain’s +definition, unlike, for instance, an auxiliary coordinate +construct or domain ancillary construct.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional
+

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of +source.

+

Note that if source is a FieldAncillary instance then +cfdm.FieldAncillary(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the field ancillary construct.

identity

Return the canonical identity.

identities

Return all possible identities.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.GatheredArray.html b/docs/1.9.0.1/class/cfdm.GatheredArray.html new file mode 100644 index 0000000000..893d90cbfa --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.GatheredArray.html @@ -0,0 +1,311 @@ + + + + + + + cfdm.GatheredArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray

+
+
+
+class cfdm.GatheredArray(compressed_array=None, shape=None, size=None, ndim=None, compressed_dimension=None, list_variable=None)[source]
+

Bases: cfdm.data.abstract.compressedarray.CompressedArray

+

An underlying gathered array.

+

Compression by gathering combines axes of a multidimensional array +into a new, discrete axis whilst omitting the missing values and +thus reducing the number of values that need to be stored.

+

The information needed to uncompress the data is stored in a “list +variable” that gives the indices of the required points.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
compressed_array: Data

The compressed array.

+
+
shape: tuple

The uncompressed array dimension sizes.

+
+
size: int

Number of elements in the uncompressed array.

+
+
ndim: int

The number of uncompressed array dimensions

+
+
compressed_dimension: int

The position of the compressed dimension in the compressed +array.

+
+
list_variable: List

The “list variable” required to uncompress the data, +identical to the data of a CF-netCDF list variable.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + +

get_compressed_axes

Return axes that are compressed in the underlying array.

get_compressed_dimension

Returns the compressed dimension’s position in the array.

get_compression_type

Returns the array’s compression type.

get_list

Return the list variable for a compressed array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + + + + +

array

Returns a numpy array containing the uncompressed data.

compressed_array

Returns an independent numpy array with the compressed data.

dtype

Data-type of the data elements.

ndim

The number of dimensions of the uncompressed data.

shape

Shape of the uncompressed data.

size

Number of elements in the uncompressed data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

source

Return the underlying array object.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Returns a subspace of the uncompressed data as a numpy array.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

cfdm.GatherArray._docstring_special_substitutions

cfdm.GatherArray._docstring_substitutions

cfdm.GatherArray._docstring_package_depth

cfdm.GatherArray._docstring_method_exclusions

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.Index.html b/docs/1.9.0.1/class/cfdm.Index.html new file mode 100644 index 0000000000..7d59c32611 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.Index.html @@ -0,0 +1,522 @@ + + + + + + + cfdm.Index — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index

+
+
+
+class cfdm.Index(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.netcdf.NetCDFSampleDimension, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.abstract.propertiesdata.PropertiesData

+

An index variable required to uncompress a ragged array.

+

A collection of features stored using an indexed ragged array +combines all features along a single dimension (the sample +dimension) such that the values of each feature in the collection +are interleaved.

+

The information needed to uncompress the data is stored in an +index variable that specifies the feature that each element of the +sample dimension belongs to.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The name of the netCDF dimension spanned by the index variable’s +data (which does not correspond to a domain axis construct) may be +accessed with the nc_set_dimension, nc_get_dimension, +nc_del_dimension and nc_has_dimension methods.

+

The name of the netCDF sample dimension spanned by the compressed +data (which does not correspond to a domain axis contract) may be +accessed with the nc_set_sample_dimension, +nc_get_sample_dimension, nc_del_sample_dimension and +nc_has_sample_dimension methods.

+
+
+

Note

+

The netCDF sample dimension and the netCDF dimension +spanned by the index variable’s data are should be +the same, unless the compressed data is an indexed +contiguous ragged array, in which case they must be +different.

+
+
+

The name of the netCDF instance dimension (that is stored in the +“instance_dimension” netCDF attribute) is accessed via the +corresponding domain axis construct.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'which station this obs is for'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a Index instance then +cfdm.Index(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the index variable.

identity

Return the canonical identity.

identities

Return all possible identities.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

get_filenames

Return the name of the file or files containing the data.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+

Sample dimension

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_sample_dimension

Remove the netCDF sample dimension name.

nc_get_sample_dimension

Return the netCDF sample dimension name.

nc_has_sample_dimension

Whether the netCDF sample dimension name has been set.

nc_set_sample_dimension

Set the netCDF sample dimension name.

nc_sample_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_sample_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_sample_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.InteriorRing.html b/docs/1.9.0.1/class/cfdm.InteriorRing.html new file mode 100644 index 0000000000..36451988e5 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.InteriorRing.html @@ -0,0 +1,479 @@ + + + + + + + cfdm.InteriorRing — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing

+
+
+
+class cfdm.InteriorRing(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.interiorring.InteriorRing

+

An interior ring array with properties.

+

If a cell is composed of multiple polygon parts, an individual +polygon may define an “interior ring”, i.e. a region that is to be +omitted from, as opposed to included in, the cell extent. In this +case an interior ring array is required that records whether each +polygon is to be included or excluded from the cell, and is +supplied by an interior ring variable in CF-netCDF. The interior +ring array spans the same domain axis constructs as its coordinate +array, with the addition of an extra dimension that indexes the +parts for each cell. For example, a cell describing the land area +surrounding a lake would require two polygon parts: one defines +the outer boundary of the land area; the other, recorded as an +interior ring, is the lake boundary, defining the inner boundary +of the land area.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+

The name of the netCDF dimension spanned by the interior ring +variable’s data (which does not correspond to a domain axis +construct) may be accessed with the nc_set_dimension, +nc_get_dimension, nc_del_dimension and nc_has_dimension +methods.

+
+

New in version (cfdm): 1.8.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'which station this obs is +for'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a InteriorRing instance then +cfdm.InteriorRing(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the interior ring variable.

identity

Return the canonical identity.

identities

Return all possible identities.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

get_filenames

Return the name of the file or files containing the data.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.List.html b/docs/1.9.0.1/class/cfdm.List.html new file mode 100644 index 0000000000..1ebe98f9d8 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.List.html @@ -0,0 +1,445 @@ + + + + + + + cfdm.List — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List

+
+
+
+class cfdm.List(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.abstract.propertiesdata.PropertiesData

+

A list variable required to uncompress a gathered array.

+

Compression by gathering combines axes of a multidimensional array +into a new, discrete axis whilst omitting the missing values and +thus reducing the number of values that need to be stored.

+

The information needed to uncompress the data is stored in a list +variable that gives the indices of the required points.

+

NetCDF interface

+

The netCDF variable name may be accessed with the +nc_set_variable, nc_get_variable, nc_del_variable and +nc_has_variable methods.

+

The netCDF variable group structure may be accessed with the +nc_set_variable, nc_get_variable, nc_variable_groups, +nc_clear_variable_groups and nc_set_variable_groups +methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'uncompression indices'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of +source.

+

Note that if source is a List instance then +cfdm.List(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + +

dump

A full description of the list variable.

identity

Return the canonical identity.

identities

Return all possible identities.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

get_filenames

Return the name of the file or files containing the data.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

+
+
+

NetCDF

+

Methods

+ ++++ + + + + + + + + + + + + + + +

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

+
+

Groups

+

Methods

+ ++++ + + + + + + + + + + + +

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

+
+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.NetCDFArray.html b/docs/1.9.0.1/class/cfdm.NetCDFArray.html new file mode 100644 index 0000000000..bf0a2289fc --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.NetCDFArray.html @@ -0,0 +1,356 @@ + + + + + + + cfdm.NetCDFArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray

+
+
+
+class cfdm.NetCDFArray(filename=None, ncvar=None, varid=None, group=None, dtype=None, ndim=None, shape=None, size=None, mask=True)[source]
+

Bases: cfdm.data.abstract.array.Array

+

An underlying array stored in a netCDF file.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
filename: str

The name of the netCDF file containing the array.

+
+
ncvar: str, optional

The name of the netCDF variable containing the +array. Required unless varid is set.

+
+
varid: int, optional

The UNIDATA netCDF interface ID of the variable +containing the array. Required if ncvar is not set, +ignored if ncvar is set.

+
+
group: None or sequence of str, optional

Specify the netCDF4 group to which the netCDF variable +belongs. By default, or if group is None or an +empty sequence, it assumed to be in the root +group. The last element in the sequence is the name of +the group in which the variable lies, with other +elements naming any parent groups (excluding the root +group).

+
+
Parameter example:

To specify that a variable is in the root group: +group=() or group=None

+
+
Parameter example:

To specify that a variable is in the group ‘/forecasts’: +group=['forecasts']

+
+
Parameter example:

To specify that a variable is in the group +‘/forecasts/model2’: group=['forecasts', 'model2']

+
+
+
+

New in version (cfdm): 1.8.6.0

+
+
+
dtype: numpy.dtype

The data type of the array in the netCDF file. May be +None if the numpy data-type is not known (which can be +the case for netCDF string types, for example).

+
+
shape: tuple

The array dimension sizes in the netCDF file.

+
+
size: int

Number of elements in the array in the netCDF file.

+
+
ndim: int

The number of array dimensions in the netCDF file.

+
+
mask: bool

If False then do not mask by convention when reading data +from disk. By default data is masked by convention.

+

A netCDF array is masked depending on the values of any of +the netCDF variable attributes valid_min, +valid_max, valid_range, _FillValue and +missing_value.

+
+

New in version (cfdm): 1.8.2

+
+
+
+
+
+

Examples:

+
>>> import netCDF4
+>>> nc = netCDF4.Dataset('file.nc', 'r')
+>>> v = nc.variable['tas']
+>>> a = NetCDFFileArray(filename='file.nc', ncvar='tas',
+...                     group=['forecast'], dtype=v.dtype,
+...                     ndim=v.ndim, shape=v.shape, size=v.size)
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + +

get_ncvar

The name of the netCDF variable containing the array.

get_varid

The UNIDATA netCDF interface ID of the array’s variable.

get_compression_type

Returns the array’s compression type.

get_subspace

Return a subspace, defined by indices, of a numpy array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of array dimensions.

shape

Tuple of array dimension sizes.

size

Number of elements in the array.

+
+
+

File

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

close

Close the netCDF4.Dataset for the file containing the data.

open

Returns an open netCDF4.Dataset for the array’s file.

get_filename

The name of the netCDF file containing the array.

get_group

The netCDF4 group structure of the netCDF variable.

get_mask

The mask of the data array.

+
+
+

Miscellaneous

+ ++++ + + + + + + + + +

copy

Return a deep copy of the array.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+ ++++ + + + + + +

__getitem__

Returns a subspace of the array as a numpy array.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.NumpyArray.html b/docs/1.9.0.1/class/cfdm.NumpyArray.html new file mode 100644 index 0000000000..396f8f767d --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.NumpyArray.html @@ -0,0 +1,265 @@ + + + + + + + cfdm.NumpyArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray

+
+
+
+class cfdm.NumpyArray(array=None)[source]
+

Bases: cfdm.data.mixin.arraymixin.ArrayMixin, cfdm.core.data.numpyarray.NumpyArray

+

An underlying numpy array.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
array: numpy.ndarray

The numpy array.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + +

get_compression_type

Returns the array’s compression type.

get_subspace

Return a subspace, defined by indices, of a numpy array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of array dimensions.

shape

Tuple of array dimension sizes.

size

Number of elements in the array.

+
+
+

Miscellaneous

+ ++++ + + + + + + + + +

copy

Return a deep copy of the array.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+ ++++ + + + + + +

__getitem__

Returns a subspace of the array as a numpy array.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.RaggedContiguousArray.html b/docs/1.9.0.1/class/cfdm.RaggedContiguousArray.html new file mode 100644 index 0000000000..273d044131 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.RaggedContiguousArray.html @@ -0,0 +1,311 @@ + + + + + + + cfdm.RaggedContiguousArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray

+
+
+
+class cfdm.RaggedContiguousArray(compressed_array=None, shape=None, size=None, ndim=None, count_variable=None)[source]
+

Bases: cfdm.data.mixin.raggedcontiguous.RaggedContiguous, cfdm.data.abstract.compressedarray.CompressedArray

+

An underlying contiguous ragged array.

+

A collection of features stored using a contiguous ragged array +combines all features along a single dimension (the “sample +dimension”) such that each feature in the collection occupies a +contiguous block.

+

The information needed to uncompress the data is stored in a +“count variable” that gives the size of each block.

+

It is assumed that the compressed dimension is the left-most +dimension in the compressed array.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
compressed_array: Data

The compressed data.

+
+
shape: tuple

The uncompressed array dimension sizes.

+
+
size: int

Number of elements in the uncompressed array.

+
+
ndim: int

The number of uncompressed array dimensions

+
+
count_variable: Count

The count variable required to uncompress the data, +corresponding to a CF-netCDF count variable.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + +

get_compressed_axes

Return axes that are compressed in the underlying array.

get_compressed_dimension

Returns the compressed dimension’s position in the array.

get_compression_type

Returns the array’s compression type.

get_count

Return the count variable for a compressed array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + + + + +

array

Returns a numpy array containing the uncompressed data.

compressed_array

Returns an independent numpy array with the compressed data.

dtype

Data-type of the data elements.

ndim

The number of dimensions of the uncompressed data.

shape

Shape of the uncompressed data.

size

Number of elements in the uncompressed data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

source

Return the underlying array object.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Returns a subspace of the array defined by the given indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.RaggedIndexedArray.html b/docs/1.9.0.1/class/cfdm.RaggedIndexedArray.html new file mode 100644 index 0000000000..e908dc771b --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.RaggedIndexedArray.html @@ -0,0 +1,310 @@ + + + + + + + cfdm.RaggedIndexedArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray

+
+
+
+class cfdm.RaggedIndexedArray(compressed_array=None, shape=None, size=None, ndim=None, index_variable=None)[source]
+

Bases: cfdm.data.mixin.raggedindexed.RaggedIndexed, cfdm.data.abstract.compressedarray.CompressedArray

+

An underlying indexed ragged array.

+

A collection of features stored using an indexed ragged array +combines all features along a single dimension (the “sample +dimension”) such that the values of each feature in the collection +are interleaved.

+

The information needed to uncompress the data is stored in an +“index variable” that specifies the feature that each element of +the sample dimension belongs to.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
compressed_array: Data

The compressed array.

+
+
shape: tuple

The uncompressed array dimension sizes.

+
+
size: int

Number of elements in the uncompressed array.

+
+
ndim: int

The number of uncompressed array dimensions

+
+
index_variable: Index

The index variable required to uncompress the data, +corresponding to a CF-netCDF index variable.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + +

get_compressed_axes

Return axes that are compressed in the underlying array.

get_compressed_dimension

Returns the compressed dimension’s position in the array.

get_compression_type

Returns the array’s compression type.

get_index

Return the index variable for a compressed array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + + + + +

array

Returns a numpy array containing the uncompressed data.

compressed_array

Returns an independent numpy array with the compressed data.

dtype

Data-type of the data elements.

ndim

The number of dimensions of the uncompressed data.

shape

Shape of the uncompressed data.

size

Number of elements in the uncompressed data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

source

Return the underlying array object.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Returns a subspace of the uncompressed data in a numpy array.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.RaggedIndexedContiguousArray.html b/docs/1.9.0.1/class/cfdm.RaggedIndexedContiguousArray.html new file mode 100644 index 0000000000..f3123daced --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.RaggedIndexedContiguousArray.html @@ -0,0 +1,319 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray

+
+
+
+class cfdm.RaggedIndexedContiguousArray(compressed_array=None, shape=None, size=None, ndim=None, count_variable=None, index_variable=None)[source]
+

Bases: cfdm.data.mixin.raggedcontiguous.RaggedContiguous, cfdm.data.mixin.raggedindexed.RaggedIndexed, cfdm.data.abstract.compressedarray.CompressedArray

+

An underlying indexed contiguous ragged array.

+

A collection of features, each of which is sequence of (vertical) +profiles, stored using an indexed contiguous ragged array combines +all feature elements along a single dimension (the “sample +dimension”) such that a contiguous ragged array representation is +used for each profile and the indexed ragged array representation +to organise the profiles into timeseries.

+

The information needed to uncompress the data is stored in a +“count variable” that gives the size of each profile; and in a +“index variable” that specifies the feature that each profile +belongs to.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
compressed_array: Data

The compressed array.

+
+
shape: tuple

The uncompressed array dimension sizes.

+
+
size: int

Number of elements in the uncompressed array.

+
+
ndim: int

The number of uncompressed array dimensions

+
+
count_variable: Count

The count variable required to uncompress the data, +corresponding to a CF-netCDF count variable.

+
+
index_variable: Index

The index variable required to uncompress the data, +corresponding to a CF-netCDF CF-netCDF index variable.

+
+
+
+
+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

get_compressed_axes

Return axes that are compressed in the underlying array.

get_compressed_dimension

Returns the compressed dimension’s position in the array.

get_compression_type

Returns the array’s compression type.

get_count

Return the count variable for a compressed array.

get_index

Return the index variable for a compressed array.

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + + + + +

array

Returns a numpy array containing the uncompressed data.

compressed_array

Returns an independent numpy array with the compressed data.

dtype

Data-type of the data elements.

ndim

The number of dimensions of the uncompressed data.

shape

Shape of the uncompressed data.

size

Number of elements in the uncompressed data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy of the array.

get_subspace

Return a subspace, defined by indices, of a numpy array.

source

Return the underlying array object.

to_memory

Bring an array on disk into memory and retain it there.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

__array__

The numpy array interface.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Returns a subspace of the uncompressed data a numpy array.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Array.html b/docs/1.9.0.1/class/cfdm.core.Array.html new file mode 100644 index 0000000000..3db0ad40bb --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Array.html @@ -0,0 +1,253 @@ + + + + + + + cfdm.core.Array — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array

+
+
+
+class cfdm.core.Array(**kwargs)[source]
+

Bases: cfdm.core.abstract.container.Container

+

Abstract base class for a container of an array.

+

The form of the array is defined by the initialisation parameters +of a subclass.

+

See cfdm.core.NumpyArray for an example implementation.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
kwargs: optional

Named parameters and their values that define the +array.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

dtype

Data-type of the data elements.

ndim

Number of array dimensions.

shape

Tuple of array dimension sizes.

size

Number of elements in the array.

array

Return an independent numpy array containing the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy of the array.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.AuxiliaryCoordinate.html b/docs/1.9.0.1/class/cfdm.core.AuxiliaryCoordinate.html new file mode 100644 index 0000000000..88f7803d26 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.AuxiliaryCoordinate.html @@ -0,0 +1,482 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate

+
+
+
+class cfdm.core.AuxiliaryCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.coordinate.Coordinate

+

An auxiliary coordinate construct of the CF data model.

+

An auxiliary coordinate construct provides information which +locate the cells of the domain and which depend on a subset of the +domain axis constructs. Auxiliary coordinate constructs have to be +used, instead of dimension coordinate constructs, when a single +domain axis requires more then one set of coordinate values, when +coordinate values are not numeric, strictly monotonic, or contain +missing values, or when they vary along more than one domain axis +construct simultaneously. CF-netCDF auxiliary coordinate variables +and non-numeric scalar coordinate variables correspond to +auxiliary coordinate constructs.

+

The auxiliary coordinate construct consists of a data array of the +coordinate values which spans a subset of the domain axis +constructs, an optional array of cell bounds recording the extents +of each cell (stored in a Bounds object), and properties to +describe the coordinates. An array of cell bounds spans the same +domain axes as its coordinate array, with the addition of an extra +dimension whose size is that of the number of vertices of each +cell. This extra dimension does not correspond to a domain axis +construct since it does not relate to an independent axis of the +domain. Note that, for climatological time axes, the bounds are +interpreted in a special way indicated by the cell method +constructs.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, geometry type, data, bounds +and interior ring from those of source.

+

Note that if source is a AuxiliaryCoordinate instance then +cfdm.core.AuxiliaryCoordinate(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Climatology

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

+
+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Bounds.html b/docs/1.9.0.1/class/cfdm.core.Bounds.html new file mode 100644 index 0000000000..237e0c4b18 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Bounds.html @@ -0,0 +1,330 @@ + + + + + + + cfdm.core.Bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds

+
+
+
+class cfdm.core.Bounds(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdata.PropertiesData

+

A cell bounds component.

+

That is, a cell bounds component of a coordinate or domain +ancillary construct of the CF data model.

+

An array of cell bounds spans the same domain axes as its +coordinate array, with the addition of an extra dimension whose +size is that of the number of vertices of each cell. This extra +dimension does not correspond to a domain axis construct since it +does not relate to an independent axis of the domain. Note that, +for climatological time axes, the bounds are interpreted in a +special way indicated by the cell method constructs.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source. +respectively.

+

Note that if source is a Bounds instance then +cfdm.core.Bounds(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

cfdm.core.Bounds_special_substitutions

cfdm.core.Bounds_substitutions

cfdm.core.Bounds_package_depth

cfdm.core.Bounds_method_exclusions

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.CellMeasure.html b/docs/1.9.0.1/class/cfdm.core.CellMeasure.html new file mode 100644 index 0000000000..7c2176060e --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.CellMeasure.html @@ -0,0 +1,374 @@ + + + + + + + cfdm.core.CellMeasure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure

+
+
+
+class cfdm.core.CellMeasure(measure=None, properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdata.PropertiesData

+

A cell measure construct of the CF data model.

+

A cell measure construct provides information that is needed about +the size or shape of the cells and that depends on a subset of the +domain axis constructs. Cell measure constructs have to be used +when the size or shape of the cells cannot be deduced from the +dimension or auxiliary coordinate constructs without special +knowledge that a generic application cannot be expected to have.

+

The cell measure construct consists of a numeric array of the +metric data which spans a subset of the domain axis constructs, +and properties to describe the data. The cell measure construct +specifies a “measure” to indicate which metric of the space it +supplies, e.g. cell horizontal areas, and must have a units +property consistent with the measure, e.g. square metres. It is +assumed that the metric does not depend on axes of the domain +which are not spanned by the array, along which the values are +implicitly propagated. CF-netCDF cell measure variables correspond +to cell measure constructs.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
measure: str, optional

Set the measure that indicates which metric given by +the data array. Ignored if the source parameter is +set.

+

The measure may also be set after initialisation with +the set_measure method.

+
+
Parameter example:

measure='area'

+
+
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'units': 'metres 2'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the measure, properties and data from those +of source.

+

Note that if source is a CellMeasure instance then +cfdm.core.CellMeasure(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_measure

Remove the measure.

get_measure

Return the measure.

has_measure

Whether the measure has been set.

set_measure

Set the measure.

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.CellMethod.html b/docs/1.9.0.1/class/cfdm.core.CellMethod.html new file mode 100644 index 0000000000..fbd644d674 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.CellMethod.html @@ -0,0 +1,349 @@ + + + + + + + cfdm.core.CellMethod — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod

+
+
+
+class cfdm.core.CellMethod(axes=None, method=None, qualifiers=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.container.Container

+

A cell method construct of the CF data model.

+

One or more cell method constructs describe how the cell values of +the field construct represent the variation of the physical +quantity within its cells, i.e. the structure of the data at a +higher resolution.

+

A single cell method construct consists of a set of axes, a +“method” property which describes how a value of the field +construct’s data array describes the variation of the quantity +within a cell over those axes (e.g. a value might represent the +cell area average), and descriptive qualifiers serving to indicate +more precisely how the method was applied (e.g. recording the +spacing of the original data, or the fact that the method was +applied only over El Nino years).

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
axes: (sequence of) str, optional

Set the axes of the cell method construct, specified +either by the construct identifiers of domain axis +constructs, standard names, or the special string +'area'.

+

The axes may also be set after initialisation with the +set_axes method.

+
+
Parameter example:

axes='domainaxis0'

+
+
Parameter example:

axes=['domainaxis0']

+
+
Parameter example:

axes=('domainaxis0', 'domainaxis1')

+
+
Parameter example:

axes='area'

+
+
Parameter example:

axes=['domainaxis2', 'time']

+
+
+
+
method: str, optional

Set the axes of the cell method construct. Either one or +more domain axis construct identifiers or standard +names. Ignored if the source parameter is set.

+

The method may also be set after initialisation with the +set_method method.

+
+
Parameter example:

method='mean'

+
+
+
+
qualifiers: dict, optional

Set descriptive qualifiers. The dictionary keys are +qualifier names, with corresponding values. Ignored if the +source parameter is set.

+

Qualifiers may also be set after initialisation with the +qualifiers and set_qualifier methods.

+
+
Parameter example:

qualifiers={'comment': 'sampled instantaneously'}

+
+
Parameter example:

qualifiers={'where': 'sea', ''over': 'ice'}

+
+
+
+
source: optional

Initialise the axes, method and qualifiers from those of +source.

+

Note that if source is a CellMethod instance then +cfdm.core.CellMethod(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_axes

Remove the axes of the cell method.

get_axes

Return the axes of the cell method.

has_axes

Whether the axes of the cell method have been set.

set_axes

Set the axes of the cell method.

del_method

Remove the method of the cell method.

get_method

Return the method of the cell method.

has_method

Whether the method of the cell method has been set.

set_method

Set the method of the cell method.

del_qualifier

Remove a qualifier of the cell method.

get_qualifier

Return a qualifier of the cell method.

has_qualifier

Whether a qualifier of the cell method has been set.

set_qualifier

Set a qualifier of the cell method.

qualifiers

Return all qualifiers of the cell method.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Constructs.html b/docs/1.9.0.1/class/cfdm.core.Constructs.html new file mode 100644 index 0000000000..b34a44398a --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Constructs.html @@ -0,0 +1,414 @@ + + + + + + + cfdm.core.Constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs

+
+
+
+class cfdm.core.Constructs(auxiliary_coordinate=None, dimension_coordinate=None, domain_ancillary=None, field_ancillary=None, cell_measure=None, coordinate_reference=None, domain_axis=None, cell_method=None, source=None, copy=True, _use_data=True, _view=False, _ignore=())[source]
+

Bases: cfdm.core.abstract.container.Container

+

A container for metadata constructs.

+

The following metadata constructs can be included:

+
    +
  • auxiliary coordinate constructs

  • +
  • coordinate reference constructs

  • +
  • cell measure constructs

  • +
  • dimension coordinate constructs

  • +
  • domain ancillary constructs

  • +
  • domain axis constructs

  • +
  • cell method constructs

  • +
  • field ancillary constructs

  • +
+

The container is used by used by Field and Domain instances.

+

The container is like a dictionary in many ways, in that it stores +key/value pairs where the key is the unique construct key with +corresponding metadata construct value, and provides some of the +usual dictionary methods.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
auxiliary_coordinate: str, optional

The base name for keys of auxiliary coordinate +constructs.

+
+
Parameter example:

auxiliary_coordinate='auxiliarycoordinate'

+
+
+
+
dimension_coordinate: str, optional

The base name for keys of dimension coordinate +constructs.

+
+
Parameter example:

dimension_coordinate='dimensioncoordinate'

+
+
+
+
domain_ancillary: str, optional

The base name for keys of domain ancillary constructs.

+
+
Parameter example:

domain_ancillary='domainancillary'

+
+
+
+
field_ancillary: str, optional

The base name for keys of field ancillary constructs.

+
+
Parameter example:

field_ancillary='fieldancillary'

+
+
+
+
cell_measure: str, optional

The base name for keys of cell measure constructs.

+
+
Parameter example:

cell_measure='cellmeasure'

+
+
+
+
coordinate_reference: str, optional

The base name for keys of coordinate reference +constructs.

+
+
Parameter example:

coordinate_reference='coordinatereference'

+
+
+
+
domain_axis: str, optional

The base name for keys of domain axis constructs.

+
+
Parameter example:

domain_axis='domainaxis'

+
+
+
+
cell_method: str, optional

The base name for keys of cell method constructs.

+
+
Parameter example:

cell_method='cellmethod'

+
+
+
+
source: optional

Initialise the construct keys and contained metadata +constructs from those of source.

+
+
copy: bool, optional

If False then do not deep copy metadata constructs +from those of source prior to initialisation. By +default such metadata constructs are deep copied.

+
+
_ignore: sequence of str, optional

Ignores the given construct types.

+
+
Parameter example:

_ignore=('cell_method', 'field_ancillary')

+
+
+
+
+
+
+
+ +
+

Filtering

+

Methods

+ ++++ + + + + + +

filter_by_type

Select metadata constructs by type.

+
+
+

Constructs and identifiers

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

key

Return the construct key of the sole metadata construct.

value

Return the sole metadata construct.

construct_type

Return the type of a construct for a given key.

construct_types

Return all of the construct types for all keys.

new_identifier

Return a new, unused construct key.

replace

Replace one metadata construct with another.

+
+
+

Data axes

+

Methods

+ ++++ + + + + + + + + +

data_axes

Returns the axes spanned by the data.

get_data_axes

Return the keys of the axes spanned by a construct’s data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy.

shallow_copy

Return a shallow copy.

ordered

Return the constructs in their predetermined order.

todict

Return a dictionary of the metadata constructs.

+
+
+

Dictionary-access methods

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

get

Returns the construct for the key, else default.

items

Return the items as (construct key, construct) pairs.

keys

Return all of the construct keys, in arbitrary order.

values

Return all of the metadata constructs, in arbitrary order.

__getitem__

Return a construct with the given key.

+
+
+

Special

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

__contains__

Implements membership test operators for construct keys.

__copy__

Called by the copy.copy standard library function.

__deepcopy__

Called by the copy.deepcopy standard library function.

__getitem__

Return a construct with the given key.

__iter__

Called when an iterator is required.

__len__

Return the number of constructs.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Container.html b/docs/1.9.0.1/class/cfdm.core.Container.html new file mode 100644 index 0000000000..ceb6bbc7e3 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Container.html @@ -0,0 +1,264 @@ + + + + + + + cfdm.core.Container — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container

+
+
+
+class cfdm.core.Container(source=None, copy=True)[source]
+

Bases: object

+

Abstract base class for storing components.

+
+

Warning

+

The custom component dictionary is only shallow +copied when initialised from the source parameter, +regardless of the value of the copy parameter. This +is to avoid potentially expensive deep copies of the +dictionary values.

+

A subclass of Container that requires custom +dictionary values to be deep copied should ensure +that this occurs its __init__ method.

+
+
+

New in version (cfdm): 1.7.0

+
+

Initialiation

+
+
Parameters
+
+
source: optional

Initialise the components from those of source.

+

Note that if source is a Container instance then +cfdm.core.Container(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Private

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_del_component

Remove a component.

_get_component

Return a component.

_has_component

Whether a component has been set.

_set_component

Set a component.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Coordinate.html b/docs/1.9.0.1/class/cfdm.core.Coordinate.html new file mode 100644 index 0000000000..3b07e16b4d --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Coordinate.html @@ -0,0 +1,469 @@ + + + + + + + cfdm.core.Coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate

+
+
+
+class cfdm.core.Coordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdatabounds.PropertiesDataBounds

+

Mixin for CF data model dimension and auxiliary coordinates.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, geometry type, data, bounds +and interior ring from those of source.

+

Note that if source is a Coordinate instance then +cfdm.core.Coordinate(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Climatology

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

+
+
+
+

Modification

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

set_data

Set the data.

del_bounds

Remove the bounds.

set_bounds

Set the bounds.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.CoordinateConversion.html b/docs/1.9.0.1/class/cfdm.core.CoordinateConversion.html new file mode 100644 index 0000000000..d18ed07a4a --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.CoordinateConversion.html @@ -0,0 +1,330 @@ + + + + + + + cfdm.core.CoordinateConversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion

+
+
+
+class cfdm.core.CoordinateConversion(parameters=None, domain_ancillaries=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.parametersdomainancillaries.ParametersDomainAncillaries

+

A coordinate conversion for a coordinate reference.

+

That is, a coordinate conversion component of a coordinate +reference construct of the CF data model.

+

A coordinate conversion formula converting coordinate values taken +from the dimension or auxiliary coordinate constructs to a +different coordinate system. A term of the conversion formula can +be a scalar or vector parameter which does not depend on any +domain axis constructs, may have units, or may be a descriptive +string (such as the projection name “mercator”), or it can be a +reference to a domain ancillary construct (such as one containing +spatially varying orography data). A coordinate reference +construct relates the coordinate values of the field to locations +in a planetary reference frame.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are term names, +with corresponding parameter values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
domain_ancillaries: dict, optional

Set references to domain ancillary constructs. The +dictionary keys are term names, with corresponding +domain ancillary construct keys. Ignored if the +source parameter is set.

+

Domain ancillaries may also be set after initialisation +with the set_domain_ancillaries and +set_domain_ancillary methods.

+
+
Parameter example:

domain_ancillaries={'orog': 'domainancillary2'}

+
+
+
+
source: optional

Initialise the parameters and domain ancillary terms +from those of source.

+

Note that if source is a CoordinateConversion instance then +cfdm.core.CoordinateConversion(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameter terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

clear_parameters

Remove all parameters.

set_parameters

Set parameters.

+
+
+

Domain ancillary terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_domain_ancillary

Delete a domain ancillary.

get_domain_ancillary

Return a domain ancillary term.

has_domain_ancillary

Whether a domain ancillary has been set.

set_domain_ancillary

Set an domain ancillary-valued term.

domain_ancillaries

Return all domain_ancillaries.

clear_domain_ancillaries

Remove all domain_ancillaries.

set_domain_ancillaries

Set domain_ancillaries.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.CoordinateReference.html b/docs/1.9.0.1/class/cfdm.core.CoordinateReference.html new file mode 100644 index 0000000000..c3f02585c0 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.CoordinateReference.html @@ -0,0 +1,406 @@ + + + + + + + cfdm.core.CoordinateReference — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference

+
+
+
+class cfdm.core.CoordinateReference(coordinates=None, datum=None, coordinate_conversion=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.container.Container

+

A coordinate reference construct of the CF data model.

+

A coordinate reference construct relates the coordinate values of +the coordinate system to locations in a planetary reference frame.

+

The domain of a field construct may contain various coordinate +systems, each of which is constructed from a subset of the +dimension and auxiliary coordinate constructs. For example, the +domain of a four-dimensional field construct may contain +horizontal (y-x), vertical (z), and temporal (t) coordinate +systems. There may be more than one of each of these, if there is +more than one coordinate construct applying to a particular +spatiotemporal dimension (for example, there could be both +latitude-longitude and y-x projection coordinate systems). In +general, a coordinate system may be constructed implicitly from +any subset of the coordinate constructs, yet a coordinate +construct does not need to be explicitly or exclusively associated +with any coordinate system.

+

A coordinate system of the field construct can be explicitly +defined by a coordinate reference construct which relates the +coordinate values of the coordinate system to locations in a +planetary reference frame and consists of the following:

+
    +
  • References to the dimension coordinate and auxiliary coordinate +constructs that define the coordinate system to which the +coordinate reference construct applies. Note that the coordinate +values are not relevant to the coordinate reference construct, +only their properties.

  • +
+
    +
  • A definition of a datum specifying the zeroes of the dimension +and auxiliary coordinate constructs which define the coordinate +system. The datum may be implied by the metadata of the +referenced dimension and auxiliary coordinate constructs, or +explicitly provided.

  • +
+
    +
  • A coordinate conversion, which defines a formula for converting +coordinate values taken from the dimension or auxiliary +coordinate constructs to a different coordinate system. A +coordinate reference construct relates the coordinate values of +the field to locations in a planetary reference frame.

  • +
+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
coordinates: sequence of str, optional

Identify the related dimension and auxiliary +coordinate constructs by their construct +identifiers. Ignored if the source parameter is set.

+

The coordinates may also be set after initialisation +with the set_coordinates and set_coordinate +methods.

+
+
Parameter example:

coordinates=['dimensioncoordinate2']

+
+
Parameter example:

coordinates=('dimensioncoordinate0', 'dimensioncoordinate1')

+
+
+
+
datum: Datum, optional

Set the datum component of the coordinate reference +construct. Ignored if the source parameter is set.

+

The datum may also be set after initialisation with +the set_datum method.

+
+
coordinate_conversion: CoordinateConversion, optional

Set the coordinate conversion component of the +coordinate reference construct. Ignored if the +source parameter is set.

+

The coordinate conversion may also be set after +initialisation with the set_coordinate_conversion +method.

+
+
source: optional

Initialise the coordinates, datum and coordinate +conversion from those of source.

+

Note that if source is a CoordinateReference instance then +cfdm.core.CoordinateReference(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Coordinates

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + +

del_coordinate

Remove a reference to a coordinate construct.

has_coordinate

Whether a reference to a coordinate construct has been set.

set_coordinate

Set a reference to a coordinate construct.

coordinates

Return all references to coordinate constructs.

clear_coordinates

Remove all references to coordinate constructs.

set_coordinates

Set references to coordinate constructs.

+
+
+

Datum

+

Methods

+ ++++ + + + + + + + + + + + +

del_datum

Remove the datum component.

get_datum

Return the datum component.

set_datum

Set the datum component.

+

Attributes

+ ++++ + + + + + +

datum

Return the datum component.

+
+
+

Coordinate conversion

+

Methods

+ ++++ + + + + + + + + + + + +

del_coordinate_conversion

Remove the coordinate conversion component.

get_coordinate_conversion

Get the coordinate conversion component.

set_coordinate_conversion

Set the coordinate conversion component.

+

Attributes

+ ++++ + + + + + +

coordinate_conversion

Return the coordinate conversion component.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Data.html b/docs/1.9.0.1/class/cfdm.core.Data.html new file mode 100644 index 0000000000..23ae490b7e --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Data.html @@ -0,0 +1,404 @@ + + + + + + + cfdm.core.Data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data

+
+
+class cfdm.core.Data(array=None, units=None, calendar=None, fill_value=None, source=None, copy=True, _use_array=True, _custom_deep_copy=False)[source]
+

Bases: cfdm.core.abstract.container.Container

+

An orthogonal multidimensional array with masking and units.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
array: data_like, optional

The array of values.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

Note that for Data objects and cfdm.core +objects that contain Data objects, +cfdm.core.Data(array) is equivalent to +cfdm.core.Data(source=array.__data__()).

+

Ignored if the source parameter is set.

+
+
array: numpy array_like, optional

The array of values.

+

Note that if array is another Data instance +then cfdm.core.Data(array) is equivalent to +cfdm.core.Data(source=array).

+

Ignored if the source parameter is set.

+
+
units: str, optional

The physical units of the data. Ignored if the +source parameter is set.

+

The units may also be set after initialisation with +the set_units method.

+
+
Parameter example:

units='km hr-1'

+
+
Parameter example:

units='days since 2018-12-01'

+
+
+
+
calendar: str, optional

The calendar for reference time units. Ignored if the +source parameter is set.

+

The calendar may also be set after initialisation with +the set_calendar method.

+
+
Parameter example:

calendar='360_day'

+
+
+
+
fill_value: optional

The fill value of the data. By default, or if set to +None, the numpy fill value appropriate to the +array’s data type will be used (see +numpy.ma.default_fill_value). Ignored if the +source parameter is set.

+

The fill value may also be set after initialisation +with the set_fill_value method.

+
+
Parameter example:

fill_value=-999.

+
+
+
+
source: optional

Initialise the data, units, calendar and fill value +from those of source.

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of data dimensions.

shape

Tuple of data dimension sizes.

size

Number of elements in the data.

+
+
+

Units

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_units

Delete the units.

get_units

Return the units.

has_units

Whether units have been set.

set_units

Set the units.

del_calendar

Delete the calendar.

get_calendar

Return the calendar.

has_calendar

Whether a calendar has been set.

set_calendar

Set the calendar.

+
+
+

Data creation routines

+
+

From existing data

+ ++++ + + + + + +

copy

Return a deep copy of the data.

+
+
+
+

Date-time support

+ ++++ + + + + + + + + + + + + + + +

del_calendar

Delete the calendar.

get_calendar

Return the calendar.

has_calendar

Whether a calendar has been set.

set_calendar

Set the calendar.

+
+
+

Mask support

+ ++++ + + + + + + + + + + + + + + +

del_fill_value

Delete the fill value.

get_fill_value

Return the missing data value.

has_fill_value

Whether a fill value has been set.

set_fill_value

Set the missing data value.

+
+
+

Miscellaneous

+ ++++ + + + + + +

source

Return the underlying array object.

+
+
+

Special

+ ++++ + + + + + + + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

__repr__

Return repr(self).

__str__

Return str(self).

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Datum.html b/docs/1.9.0.1/class/cfdm.core.Datum.html new file mode 100644 index 0000000000..04eedf9bd2 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Datum.html @@ -0,0 +1,283 @@ + + + + + + + cfdm.core.Datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum

+
+
+
+class cfdm.core.Datum(parameters=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.parameters.Parameters

+

A datum component of a coordinate reference of the CF data model.

+

A datum is a complete or partial definition of the zeroes of the +dimension and auxiliary coordinate constructs which define a +coordinate system.

+

The datum may contain the definition of a geophysical surface +which corresponds to the zero of a vertical coordinate construct, +and this may be required for both horizontal and vertical +coordinate systems.

+

Elements of the datum not specified may be implied by the +properties of the dimension and auxiliary coordinate constructs +referenced by the CoordinateReference instance that contains the +datum.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are parameter +names, with corresponding values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
source: optional

Initialise the parameters from those of source.

+

Note that if source is a Datum instance then +cfdm.core.Datum(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameters

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

clear_parameters

Remove all parameters.

set_parameters

Set parameters.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.DimensionCoordinate.html b/docs/1.9.0.1/class/cfdm.core.DimensionCoordinate.html new file mode 100644 index 0000000000..ed81e55cd2 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.DimensionCoordinate.html @@ -0,0 +1,483 @@ + + + + + + + cfdm.core.DimensionCoordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate

+
+
+
+class cfdm.core.DimensionCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.coordinate.Coordinate

+

A dimension coordinate construct of the CF data model.

+

A dimension coordinate construct provides information which locate +the cells of the domain and which depend on a subset of the domain +axis constructs. The dimension coordinate construct is able to +unambiguously describe cell locations because a domain axis can be +associated with at most one dimension coordinate construct, whose +data array values must all be non-missing and strictly +monotonically increasing or decreasing. They must also all be of +the same numeric data type. If cell bounds are provided, then each +cell must have exactly two vertices. CF-netCDF coordinate +variables and numeric scalar coordinate variables correspond to +dimension coordinate constructs.

+

The dimension coordinate construct consists of a data array of the +coordinate values which spans a subset of the domain axis +constructs, an optional array of cell bounds recording the extents +of each cell (stored in a Bounds object), and properties to +describe the coordinates. An array of cell bounds spans the same +domain axes as its coordinate array, with the addition of an extra +dimension whose size is that of the number of vertices of each +cell. This extra dimension does not correspond to a domain axis +construct since it does not relate to an independent axis of the +domain. Note that, for climatological time axes, the bounds are +interpreted in a special way indicated by the cell method +constructs.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, geometry type, data, bounds +and interior ring from those of source.

+

Note that if source is a DimensionCoordinate instance then +cfdm.core.DimensionCoordinate(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Climatology

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

+
+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.DocstringRewriteMeta.html b/docs/1.9.0.1/class/cfdm.core.DocstringRewriteMeta.html new file mode 100644 index 0000000000..52862ac0cf --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.DocstringRewriteMeta.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DocstringRewriteMeta — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta

+
+
+
+class cfdm.core.DocstringRewriteMeta[source]
+

Bases: type

+

Modify docstrings at time of import.

+

Methodology

+

To do this, we intercede before the class is created and modify +the docstrings of the attributes defined on the class.

+

Inherited methods are also modified. We cannot simply modify the +docstrings of inherited methods, because then the parent classes’ +methods will have the wrong docstring. Instead, we must actually +copy the functions, and then modify the docstring.

+

Special treatment is given to methods decorated with +@property, @staticmethod and @classmethod, as well as +user-defined decorations.

+
+

New in version (cfdm): 1.8.7.0

+
+

Combines docstring substitutions across the inheritance tree.

+

That is, combines docstring substitutions from all classes in the +inheritance tree.

+

The value for a key that occurs in multiple classes will be taken +from the class closest to the child class.

+
+ +
+

Inspection

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + +

mro

Return a type’s method resolution order.

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Domain.html b/docs/1.9.0.1/class/cfdm.core.Domain.html new file mode 100644 index 0000000000..7cbad1a162 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Domain.html @@ -0,0 +1,354 @@ + + + + + + + cfdm.core.Domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain

+
+
+
+class cfdm.core.Domain(properties=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.mixin.fielddomain.FieldDomain, cfdm.core.abstract.properties.Properties

+

A domain construct of the CF data model.

+

The domain represents a set of discrete “locations” in what +generally would be a multi-dimensional space, either in the real +world or in a model’s simulated world. The data array elements of +a field construct correspond to individual location of a domain.

+

The domain construct is defined collectively by the following +constructs of the CF data model: domain axis, dimension +coordinate, auxiliary coordinate, cell measure, coordinate +reference, and domain ancillary constructs; as well as properties +to describe the domain.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'long_name': 'Domain for model'}

+
+
source: optional

Initialise the metadata constructs from those of +source.

+

Note that if source is a Domain instance then +cfdm.core.Domain(source=source) is equivalent +to source.copy().

+

A new domain may also be instantiated with the +fromconstructs class method.

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Metadata constructs

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_construct

Remove a metadata construct.

get_construct

Return a metadata construct.

has_construct

Whether a metadata construct exists.

set_construct

Set a metadata construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by a construct’s data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets domain axis constructs spanned by the construct data.

+

Attributes

+ ++++ + + + + + +

constructs

Return the metadata constructs.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + + + + +

copy

Return a deep copy.

fromconstructs

Return a new domain containing the given metadata constructs.

has_bounds

Whether or not there are cell bounds.

has_data

Whether or not the construct has data.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.DomainAncillary.html b/docs/1.9.0.1/class/cfdm.core.DomainAncillary.html new file mode 100644 index 0000000000..26dd32aab5 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.DomainAncillary.html @@ -0,0 +1,448 @@ + + + + + + + cfdm.core.DomainAncillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary

+
+
+
+class cfdm.core.DomainAncillary(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdatabounds.PropertiesDataBounds

+

A domain ancillary construct of the CF data model.

+

A domain ancillary construct provides information which is needed +for computing the location of cells in an alternative coordinate +system. It is referenced by a term of a coordinate conversion +formula of a coordinate reference construct. It contains a data +array which depends on zero or more of the domain axes.

+

It also contains an optional array of cell bounds, stored in a +Bounds object, recording the extents of each cell (only +applicable if the array contains coordinate data), and properties +to describe the data.

+

An array of cell bounds spans the same domain axes as the data +array, with the addition of an extra dimension whose size is that +of the number of vertices of each cell.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, geometry type, data, bounds +and interior ring from those of source.

+

Note that if source is a DomainAncillary instance then +cfdm.core.DomainAncillary(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

+

Attributes

+ ++++ + + + + + +

bounds

Return the bounds.

+
+
+

Geometries

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.DomainAxis.html b/docs/1.9.0.1/class/cfdm.core.DomainAxis.html new file mode 100644 index 0000000000..7dd0ed4a02 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.DomainAxis.html @@ -0,0 +1,296 @@ + + + + + + + cfdm.core.DomainAxis — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis

+
+
+
+class cfdm.core.DomainAxis(size=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.container.Container

+

A domain axis construct of the CF data model.

+

A domain axis construct specifies the number of points along an +independent axis of the domain. It comprises a positive integer +representing the size of the axis. In CF-netCDF it is usually +defined either by a netCDF dimension or by a scalar coordinate +variable, which implies a domain axis of size one. The field +construct’s data array spans the domain axis constructs of the +domain, with the optional exception of size one axes, because +their presence makes no difference to the order of the elements.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
size: int, optional

The size of the domain axis.

+
+
Parameter example:

size=192

+
+
+

The size may also be set after initialisation with the +set_size method.

+
+
source:

Initialise the size from that of source.

+

Note that if source is a DomainAxis instance then +cfdm.core.DomainAxis(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Size

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_size

Remove the size.

get_size

Return the size.

has_size

Whether the size has been set.

set_size

Set the size.

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Field.html b/docs/1.9.0.1/class/cfdm.core.Field.html new file mode 100644 index 0000000000..a662f4ead9 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Field.html @@ -0,0 +1,435 @@ + + + + + + + cfdm.core.Field — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field

+
+
+
+class cfdm.core.Field(properties=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.mixin.fielddomain.FieldDomain, cfdm.core.abstract.propertiesdata.PropertiesData

+

A field construct of the CF data model.

+

The field construct is central to the CF data model, and includes +all the other constructs. A field corresponds to a CF-netCDF data +variable with all of its metadata. All CF-netCDF elements are +mapped to a field construct or some element of the CF field +construct. The field construct contains all the data and metadata +which can be extracted from the file using the CF conventions.

+

The field construct consists of a data array and the definition of +its domain (that describes the locations of each cell of the data +array), field ancillary constructs containing metadata defined +over the same domain, and cell method constructs to describe how +the cell values represent the variation of the physical quantity +within the cells of the domain. The domain is defined collectively +by the following constructs of the CF data model: domain axis, +dimension coordinate, auxiliary coordinate, cell measure, +coordinate reference and domain ancillary constructs. All of the +constructs contained by the field construct are optional.

+

The field construct also has optional properties to describe +aspects of the data that are independent of the domain. These +correspond to some netCDF attributes of variables (e.g. units, +long_name and standard_name), and some netCDF global file +attributes (e.g. history and institution).

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'air_temperature'}

+
+
+
+
source: optional

Initialise the properties, data and metadata +constructs from those of source.

+

Note that if source is a Field instance then +cfdm.core.Field(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data of the field construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by the construct data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets the axes spanned by the construct data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Metadata constructs

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_construct

Remove a metadata construct.

get_construct

Return a metadata construct.

has_construct

Whether a metadata construct exists.

set_construct

Set a metadata construct.

del_data_axes

Removes the keys of the axes spanned by the construct data.

get_data_axes

Gets the keys of the axes spanned by the construct data.

has_data_axes

Whether the axes spanned by the construct data have been set.

set_data_axes

Sets the axes spanned by the construct data.

+

Attributes

+ ++++ + + + + + +

constructs

Return the metadata constructs.

+
+
+

Domain

+

Methods

+ ++++ + + + + + +

get_domain

Return the domain.

+

Attributes

+ ++++ + + + + + +

domain

Return the domain.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.FieldAncillary.html b/docs/1.9.0.1/class/cfdm.core.FieldAncillary.html new file mode 100644 index 0000000000..34134c54b0 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.FieldAncillary.html @@ -0,0 +1,352 @@ + + + + + + + cfdm.core.FieldAncillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary

+
+
+
+class cfdm.core.FieldAncillary(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdata.PropertiesData

+

A field ancillary construct of the CF data model.

+

The field ancillary construct provides metadata which are +distributed over the same sampling domain as the field itself. For +example, if a data variable holds a variable retrieved from a +satellite instrument, a related ancillary data variable might +provide the uncertainty estimates for those retrievals (varying +over the same spatiotemporal domain).

+

The field ancillary construct consists of an array of the +ancillary data, which is zero-dimensional or which depends on one +or more of the domain axes, and properties to describe the +data. It is assumed that the data do not depend on axes of the +domain which are not spanned by the array, along which the values +are implicitly propagated. CF-netCDF ancillary data variables +correspond to field ancillary constructs. Note that a field +ancillary construct is constrained by the domain definition of the +parent field construct but does not contribute to the domain’s +definition, unlike, for instance, an auxiliary coordinate +construct or domain ancillary construct.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a FieldAncillary instance then +cfdm.core.FieldAncillary(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + +

construct_type

Return a description of the construct type.

+
+
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.InteriorRing.html b/docs/1.9.0.1/class/cfdm.core.InteriorRing.html new file mode 100644 index 0000000000..9ea6bb0d9f --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.InteriorRing.html @@ -0,0 +1,333 @@ + + + + + + + cfdm.core.InteriorRing — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing

+
+
+
+class cfdm.core.InteriorRing(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdata.PropertiesData

+

An interior ring array with properties.

+

If a cell is composed of multiple polygon parts, an individual +polygon may define an “interior ring”, i.e. a region that is to be +omitted from, as opposed to included in, the cell extent. In this +case an interior ring array is required that records whether each +polygon is to be included or excluded from the cell, and is +supplied by an interior ring variable in CF-netCDF. The interior +ring array spans the same domain axis constructs as its coordinate +array, with the addition of an extra dimension that indexes the +parts for each cell. For example, a cell describing the land area +surrounding a lake would require two polygon parts: one defines +the outer boundary of the land area; the other, recorded as an +interior ring, is the lake boundary, defining the inner boundary +of the land area.

+
+

New in version (cfdm): 1.8.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a InteriorRing instance then +cfdm.core.InteriorRing(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.NumpyArray.html b/docs/1.9.0.1/class/cfdm.core.NumpyArray.html new file mode 100644 index 0000000000..7fbae46bab --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.NumpyArray.html @@ -0,0 +1,233 @@ + + + + + + + cfdm.core.NumpyArray — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray

+
+
+
+class cfdm.core.NumpyArray(array=None)[source]
+

Bases: cfdm.core.data.abstract.array.Array

+

A container for a numpy array.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
array: numpy.ndarray

The numpy array.

+
+
+
+
+
+ +
+

Inspection

+

Attributes

+ ++++ + + + + + + + + + + + + + + + + + +

array

Return an independent numpy array containing the data.

dtype

Data-type of the data elements.

ndim

Number of array dimensions.

shape

Tuple of array dimension sizes.

size

Number of elements in the array.

+
+
+

Miscellaneous

+ ++++ + + + + + +

copy

Return a deep copy of the array.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Parameters.html b/docs/1.9.0.1/class/cfdm.core.Parameters.html new file mode 100644 index 0000000000..361f31b76a --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Parameters.html @@ -0,0 +1,272 @@ + + + + + + + cfdm.core.Parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters

+
+
+
+class cfdm.core.Parameters(parameters=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.container.Container

+

Mixin class for a collection of named parameters.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are parameter +names, with corresponding values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
source: optional

Initialise the parameters from those of source.

+

Note that if source is a Parameters instance then +cfdm.core.Parameters(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameter terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

clear_parameters

Remove all parameters.

set_parameters

Set parameters.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.ParametersDomainAncillaries.html b/docs/1.9.0.1/class/cfdm.core.ParametersDomainAncillaries.html new file mode 100644 index 0000000000..b2a22b87d0 --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.ParametersDomainAncillaries.html @@ -0,0 +1,318 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries

+
+
+
+class cfdm.core.ParametersDomainAncillaries(parameters=None, domain_ancillaries=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.parameters.Parameters

+

Mixin to collect named parameters and domain ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
parameters: dict, optional

Set parameters. The dictionary keys are term names, +with corresponding parameter values. Ignored if the +source parameter is set.

+

Parameters may also be set after initialisation with +the set_parameters and set_parameter methods.

+
+
Parameter example:

parameters={'earth_radius': 6371007.}

+
+
+
+
domain_ancillaries: dict, optional

Set references to domain ancillary constructs. The +dictionary keys are term names, with corresponding +domain ancillary construct keys. Ignored if the +source parameter is set.

+

Domain ancillaries may also be set after initialisation +with the set_domain_ancillaries and +set_domain_ancillary methods.

+
+
Parameter example:

domain_ancillaries={'orog': 'domainancillary2'}

+
+
+
+
source: optional

Initialise the parameters and domain ancillary terms +from those of source.

+

Note that if source is a ParametersDomainAncillaries instance then +cfdm.core.ParametersDomainAncillaries(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Parameter terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_parameter

Delete a parameter.

get_parameter

Get a parameter value.

has_parameter

Whether a parameter has been set.

set_parameter

Set a parameter-valued term.

parameters

Return all parameters.

clear_parameters

Remove all parameters.

set_parameters

Set parameters.

+
+
+

Domain ancillary terms

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_domain_ancillary

Delete a domain ancillary.

get_domain_ancillary

Return a domain ancillary term.

has_domain_ancillary

Whether a domain ancillary has been set.

set_domain_ancillary

Set an domain ancillary-valued term.

domain_ancillaries

Return all domain_ancillaries.

clear_domain_ancillaries

Remove all domain_ancillaries.

set_domain_ancillaries

Set domain_ancillaries.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

cfdm.core.ParametersDomainAncilliaries._docstring_special_substitutions

cfdm.core.ParametersDomainAncilliaries._docstring_substitutions

cfdm.core.ParametersDomainAncilliaries._docstring_package_depth

cfdm.core.ParametersDomainAncilliaries._docstring_method_exclusions

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.Properties.html b/docs/1.9.0.1/class/cfdm.core.Properties.html new file mode 100644 index 0000000000..631af94bef --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.Properties.html @@ -0,0 +1,278 @@ + + + + + + + cfdm.core.Properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties

+
+
+
+class cfdm.core.Properties(properties=None, source=None, copy=True)[source]
+

Bases: cfdm.core.abstract.container.Container

+

Mixin class for an object with descriptive properties.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
source: optional

Initialise the properties from those of source.

+

Note that if source is a Properties instance then +cfdm.core.Properties(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

has_data

Whether or not the construct has data.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.PropertiesData.html b/docs/1.9.0.1/class/cfdm.core.PropertiesData.html new file mode 100644 index 0000000000..0071d273cc --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.PropertiesData.html @@ -0,0 +1,320 @@ + + + + + + + cfdm.core.PropertiesData — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData

+
+
+
+class cfdm.core.PropertiesData(properties=None, data=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.properties.Properties

+

Mixin class for a data array with descriptive properties.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'altitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
source: optional

Initialise the properties and data from those of source.

+

Note that if source is a PropertiesData instance then +cfdm.core.PropertiesData(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + + + + +

copy

Return a deep copy.

has_bounds

Whether or not there are cell bounds.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class/cfdm.core.PropertiesDataBounds.html b/docs/1.9.0.1/class/cfdm.core.PropertiesDataBounds.html new file mode 100644 index 0000000000..1951d39f1c --- /dev/null +++ b/docs/1.9.0.1/class/cfdm.core.PropertiesDataBounds.html @@ -0,0 +1,446 @@ + + + + + + + cfdm.core.PropertiesDataBounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds

+
+
+
+class cfdm.core.PropertiesDataBounds(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]
+

Bases: cfdm.core.abstract.propertiesdata.PropertiesData

+

Mixin for a data array with bounds and descriptive properties.

+
+

New in version (cfdm): 1.7.0

+
+

Initialisation

+
+
Parameters
+
+
properties: dict, optional

Set descriptive properties. The dictionary keys are +property names, with corresponding values. Ignored if +the source parameter is set.

+

Properties may also be set after initialisation with +the set_properties and set_property methods.

+
+
Parameter example:

properties={'standard_name': 'longitude'}

+
+
+
+
data: data_like, optional

Set the data. Ignored if the source parameter is +set.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+

The data also may be set after initialisation with the +set_data method.

+
+
bounds: Bounds, optional

Set the bounds array. Ignored if the source +parameter is set.

+

The bounds array may also be set after initialisation +with the set_bounds method.

+
+
geometry: str, optional

Set the geometry type. Ignored if the source +parameter is set.

+

The geometry type may also be set after initialisation +with the set_geometry method.

+
+
Parameter example:

geometry='polygon'

+
+
+
+
interior_ring: InteriorRing, optional

Set the interior ring variable. Ignored if the +source parameter is set.

+

The interior ring variable may also be set after +initialisation with the set_interior_ring method.

+
+
source: optional

Initialise the properties, geometry type, data, bounds +and interior ring from those of source.

+

Note that if source is a PropertiesDataBounds instance then +cfdm.core.PropertiesDataBounds(source=source) is equivalent +to source.copy().

+
+
copy: bool, optional

If False then do not deep copy input parameters prior +to initialisation. By default arguments are deep +copied.

+
+
+
+
+
+ +
+

Properties

+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

+
+
+

Data

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

+

Attributes

+ ++++ + + + + + +

data

Return the data.

+
+
+

Bounds

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

+

Attributes

+ ++++ + + + + + + + + +

bounds

Return the bounds.

Geometries

+
+

Methods

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

+

Attributes

+ ++++ + + + + + +

interior_ring

Return the interior ring variable for polygon geometries.

+
+
+

Modification

+

Methods

+ ++++ + + + + + + + + + + + + + + +

del_data

Remove the data.

set_data

Set the data.

del_bounds

Remove the bounds.

set_bounds

Set the bounds.

+
+
+

Miscellaneous

+

Methods

+ ++++ + + + + + +

copy

Return a deep copy.

+
+
+

Special

+

Methods

+ ++++ + + + + + +

__deepcopy__

Called by the copy.deepcopy function.

+
+
+

Docstring substitutions

+

Methods

+ ++++ + + + + + + + + + + + + + + +

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/class_core.html b/docs/1.9.0.1/class_core.html new file mode 100644 index 0000000000..0397d3e188 --- /dev/null +++ b/docs/1.9.0.1/class_core.html @@ -0,0 +1,316 @@ + + + + + + + cfdm.core classes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core classes

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+
+

Field construct class

+ ++++ + + + + + +

cfdm.core.Field

A field construct of the CF data model.

+
+
+

Domain construct class

+ ++++ + + + + + +

cfdm.core.Domain

A domain construct of the CF data model.

+
+
+

Metadata construct classes

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.core.AuxiliaryCoordinate

An auxiliary coordinate construct of the CF data model.

cfdm.core.CellMeasure

A cell measure construct of the CF data model.

cfdm.core.CellMethod

A cell method construct of the CF data model.

cfdm.core.CoordinateReference

A coordinate reference construct of the CF data model.

cfdm.core.DimensionCoordinate

A dimension coordinate construct of the CF data model.

cfdm.core.DomainAncillary

A domain ancillary construct of the CF data model.

cfdm.core.DomainAxis

A domain axis construct of the CF data model.

cfdm.core.FieldAncillary

A field ancillary construct of the CF data model.

+
+
+

Constructs class

+ ++++ + + + + + +

cfdm.core.Constructs

A container for metadata constructs.

+
+
+

Coordinate component classes

+ ++++ + + + + + + + + + + + + + + +

cfdm.core.Bounds

A cell bounds component.

cfdm.core.CoordinateConversion

A coordinate conversion for a coordinate reference.

cfdm.core.Datum

A datum component of a coordinate reference of the CF data model.

cfdm.core.InteriorRing

An interior ring array with properties.

+
+
+

Data classes

+ ++++ + + + + + + + + + + + +

cfdm.core.Data

An orthogonal multidimensional array with masking and units.

cfdm.core.NumpyArray

A container for a numpy array.

cfdm.core.Array

Abstract base class for a container of an array.

+
+
+

Abstract base classes

+

Abstract base classes that provide the basis for constructs and +construct components.

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.core.Container

Abstract base class for storing components.

cfdm.core.Properties

Mixin class for an object with descriptive properties.

cfdm.core.PropertiesData

Mixin class for a data array with descriptive properties.

cfdm.core.PropertiesDataBounds

Mixin for a data array with bounds and descriptive properties.

cfdm.core.Coordinate

Mixin for CF data model dimension and auxiliary coordinates.

cfdm.core.Parameters

Mixin class for a collection of named parameters.

cfdm.core.ParametersDomainAncillaries

Mixin to collect named parameters and domain ancillaries.

+
+
+

Miscellaneous

+ ++++ + + + + + +

cfdm.core.DocstringRewriteMeta

Modify docstrings at time of import.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/constant.html b/docs/1.9.0.1/constant.html new file mode 100644 index 0000000000..a37c4ec6a5 --- /dev/null +++ b/docs/1.9.0.1/constant.html @@ -0,0 +1,162 @@ + + + + + + + cfdm constants — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm constants

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+
+
+cfdm.masked
+

A constant that allows data values to be masked by direct +assignment. This is consistent with the behaviour of numpy +masked arrays.

+

Examples:

+

Masking every element of a field construct’s data could be done as +follows:

+
>>> f[...] = cfdm.masked
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/contributing.html b/docs/1.9.0.1/contributing.html new file mode 100644 index 0000000000..3b7192a429 --- /dev/null +++ b/docs/1.9.0.1/contributing.html @@ -0,0 +1,232 @@ + + + + + + + Contributing — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Contributing

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +
+

Reporting bugs

+

Please report bugs via a new issue in issue tracker +(https://github.com/NCAS-CMS/cfdm/issues), using the Bug report +issue template.

+
+
+
+

Feature requests and suggested improvements

+

Suggestions for new features and any improvements to the +functionality, API, documentation and infrastructure can be submitted +via a new issue in issue tracker +(https://github.com/NCAS-CMS/cfdm/issues), using the Feature +request issue template.

+
+
+
+

Questions

+

Questions, such as “how can I do this?”, “why does it behave like +that?”, “how can I make it faster?”, etc., can be raised via a new +issue in issue tracker (https://github.com/NCAS-CMS/cfdm/issues), +using the Question issue template.

+
+
+
+

Preparing pull requests

+

Pull requests should follow on from a discussion in the issue tracker +(https://github.com/NCAS-CMS/cfdm/issues).

+

Fork the cfdm GitHub repository (https://github.com/NCAS-CMS/cfdm).

+

Clone your fork locally and create a branch:

+
$ git clone git@github.com:<YOUR GITHUB USERNAME>/cfdm.git
+$ cd cfdm
+$ git checkout -b <your-bugfix-feature-branch-name master>
+
+
+

Break your edits up into reasonably-sized commits, each representing +a single logical change:

+
$ git commit -a -m "<COMMIT MESSAGE>"
+
+
+

Create a new changelog entry in Changelog.rst. The entry should be +written (where <description> should be a brief description of +the change) as:

+
* <description> (https://github.com/NCAS-CMS/cfdm/issues/<issue number>)
+
+
+

Run the test suite to make sure the tests all pass:

+
$ cd cfdm/test
+$ python run_tests.py
+
+
+

Add your name to the list of contributors list at +docs/source/contributing.rst.

+

Finally, make sure all commits have been pushed to the remote copy of +your fork and submit the pull request via the GitHub website, to the +master branch of the NCAS-CMS/cfdm repository. Make sure to +reference the original issue in the pull request’s description.

+

Note that you can create the pull request while you’re working on +this, as it will automatically update as you add more commits. If it is +a work in progress, you can mark it initially as a draft pull request.

+
+
+
+

Contributors

+

We would like to acknowledge and thank all those who have contributed +ideas, code, and documentation to the cfdm library:

+
    +
  • Alan Iwi

  • +
  • Allyn Treshansky

  • +
  • Bryan Lawrence

  • +
  • David Hassell

  • +
  • Jonathan Gregory

  • +
  • Martin Juckes

  • +
  • Riley Brady

  • +
  • Sadie Bartholomew

  • +
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/extensions.html b/docs/1.9.0.1/extensions.html new file mode 100644 index 0000000000..b2dc11ac5d --- /dev/null +++ b/docs/1.9.0.1/extensions.html @@ -0,0 +1,426 @@ + + + + + + + Extensions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Extensions

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +

The cfdm package has been designed to be subclassed, so that the +creation of a new implementation of the CF data model, based on cfdm, +is straight forward. For example:

+
+
Create a new implementation with a new field construct +class.
+
import cfdm
+
+class my_Field(cfdm.Field):
+    def info(self):
+        return 'I am a {!r} instance'.format(
+            self.__class__.__name__)
+
+
+
+

The interpretation of CF-netCDF files that is encoded within the +cfdm.read and cfdm.write functions is also inheritable, so that an +extended data model implementation need not recreate the complicated +mapping of CF data model constructs to, and from, CF-netCDF +elements. This is made possible by the bridge design pattern, that decouples the +implementation of the CF data model from the CF-netCDF encoding so +that the two can vary independently.

+
+
Define an implementation that is the same as cfdm, but +which uses the my_Field class to represent field +constructs
+
>>> my_implementation = cfdm.implementation()
+>>> my_implementation.set_class('Field', my_Field)
+
+
+
+
+
Define new functions that can read into my_Field +instances, and write write my_Field instances to +datasets on disk.
+
>>> import functools
+>>> my_read = functools.partial(cfdm.read,
+...                             _implementation=my_implementation)
+>>> my_write = functools.partial(cfdm.write,
+...                              _implementation=my_implementation)
+
+
+
+
+
Read my_field constructs from ‘file.nc’, the netCDF file +used in the tutorial, using the new my_read +function. Inspect a field construct read from the +dataset, demonstrating that it is a my_Field instance +from the new implementation that has the inherited +functionality of a cfdm.Field instance.
+
>>> q, t = my_read('file.nc')
+>>> print(type(q))
+<class '__main__.my_Field'>
+>>> print(q.info())
+I am a 'my_Field' instance
+>>> print(repr(q))
+<my_Field: specific_humidity(latitude(5), longitude(8)) 1>
+>>> print(q.data.array)
+[[0.007 0.034 0.003 0.014 0.018 0.037 0.024 0.029]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [0.006 0.036 0.019 0.035 0.018 0.037 0.034 0.013]]
+
+
+
+
+
Write the my_field constructs to a netCDF file using the +new my_write function.
+
>>> my_write([q, t], 'new_file.nc')
+
+
+
+

Note that, so far, we have only replaced the field construct class in +the new implementation, and not any of the metadata constructs or +other component classes:

+
+
Demonstrate that the metadata construct classes of +within the my_Field instance are still cfdm classes.
+
>>> print(type(q))
+<class '__main__.my_Field'>
+>>> print(type(q.construct('latitude')))
+<class 'cfdm.dimensioncoordinate.DimensionCoordinate'>
+
+
+
+

If the API of the new implementation is changed such that a given cfdm +functionality has a different API in the new implementation, then the +new read-from-disk and write-to-disk functions defined above can still +be used provided that the new implementation is created from a +subclass of cfdm.CFDMImplementation, with the new API being applied +in overridden methods.

+
+
Create an implementation with a different API.
+
class my_Field_2(cfdm.Field):
+   def my_coordinates(self):
+       """Get coordinate constructs with a different API."""
+       c = self.coordinates
+       if not c:
+           return {}
+       return c
+
+class my_CFDMImplementation(cfdm.CFDMImplementation):
+   def get_coordinates(self, field):
+       """Get coordinate constructs from a my_Field_2 instance,
+       using its different API.
+       """
+       return field.my_coordinates()
+
+my_implementation_2 = my_CFDMImplementation(
+   cf_version=cfdm.CF(),
+
+   Field=my_Field_2,
+
+   AuxiliaryCoordinate=cfdm.AuxiliaryCoordinate,
+   CellMeasure=cfdm.CellMeasure,
+   CellMethod=cfdm.CellMethod,
+   CoordinateReference=cfdm.CoordinateReference,
+   DimensionCoordinate=cfdm.DimensionCoordinate,
+   DomainAncillary=cfdm.DomainAncillary,
+   DomainAxis=cfdm.DomainAxis,
+   FieldAncillary=cfdm.FieldAncillary,
+
+   Bounds=cfdm.Bounds,
+   InteriorRing=cfdm.InteriorRing,
+   CoordinateConversion=cfdm.CoordinateConversion,
+   Datum=cfdm.Datum,
+
+   List=cfdm.List,
+   Index=cfdm.Index,
+   Count=cfdm.Count,
+   NodeCountProperties=cfdm.NodeCountProperties,
+   PartNodeCountProperties=cfdm.PartNodeCountProperties,
+
+   Data=cfdm.Data,
+   GatheredArray=cfdm.GatheredArray,
+   NetCDFArray=cfdm.NetCDFArray,
+   RaggedContiguousArray=cfdm.RaggedContiguousArray,
+   RaggedIndexedArray=cfdm.RaggedIndexedArray,
+   RaggedIndexedContiguousArray=cfdm.RaggedIndexedContiguousArray,
+)
+
+
+
+

As all classes are required for the initialisation of the new +implementation class, this demonstrates explicitly that, in the absence +of subclasses of the other classes, the cfdm classes may be used.

+
+
Read the file into ‘my_Field_2’ instances.
+
>>> my_read_2 = functools.partial(cfdm.read,
+...                               _implementation=my_implementation2)
+>>> q, t = my_read_2('file.nc')
+>>> print(repr(q))
+<my_Field_2: specific_humidity(latitude(5), longitude(8)) 1>
+
+
+
+

Finally, the mapping of CF data model constructs from CF-netCDF +elements, and vice versa, may be modified where desired, leaving all +other aspects it unchanged

+
+
Modify the mapping of netCDF elements to CF data model +instances.
+
class my_NetCDFRead(cfdm.read_write.netcdf.NetCDFRead):
+    def read(self, filename):
+        """Read my fields from a netCDF file on disk or from
+        an OPeNDAP server location, using my modified mapping
+        from netCDF to the CF data model.
+        """
+        print("Reading dataset using my modified mapping")
+        return super().read(filename)
+
+
+
+
+
Create a new read-from-disk function that uses the +modified mapping.
+
my_netcdf = my_NetCDFRead(my_implementation_2)
+def my_read_3(filename, ):
+    """Read my field constructs from a dataset."""
+    return my_netcdf.read(filename)
+
+
+
+
+
Read the file from disk into ‘my_Field_2’ instances, +demonstrating that the modified mapping is being used.
+
>>> q, t = my_read_3('~/cfdm/docs/source/sample_files/file.nc')
+Reading dataset using my modified mapping
+>>> print(repr(q))
+<my_Field_2: specific_humidity(latitude(5), longitude(8)) 1>
+
+
+
+

In the same manner, cfdm.read_write.netcdf.NetCDFWrite may be +subclassed, and a new write-to-disk function defined, to override +aspects of the mapping from CF data model constructs to netCDF +elements in a dataset.

+
+

The _custom dictionary

+

All cfdm classes have a _custom attribute that contains a dictionary +meant for use in external subclasses.

+

It is intended for the storage of extra objects that are required by +an external subclass, yet can be transferred to copied instances using +the inherited cfdm infrastructure. The _custom dictionary is shallow +copied, rather than deep copied, when using the standard cfdm deep +copy method techniques (i.e. the copy method, initialisation with +the source parameter, or applying the copy.deepcopy function) so +that subclasses of cfdm are not committed to potentially expensive +deep copies of the dictionary values, of which cfdm has no +knowledge. Note that calling copy.deepcopy on a cfdm (sub)class +simply invokes its copy method. The cfdm library itself does not +use the _custom dictionary, other than to pass on a shallow copy of +it to copied instances.

+

The consequence of this shallow-copy behaviour is that if an external +subclass stores a mutable object within its custom dictionary then, by +default, a deep copy will contain the identical mutable object, to +which in-place changes will affect both the original and copied +instances.

+

To account for this, the external subclass can either simply commit to +never updating such mutables in-place (which is can be acceptable for +private quantities which are tightly controlled); or else include +extra code that does deep copy such mutables when any deep copy (or +equivalent) operation is called. The latter approach should be +implemented in the subclass’s __init__ method, similarly to this:

+
+
If desired, ensure that the _custom dictionary ‘x’ +value is deep copied when a deep copy of an instance is +requested.
+
import copy
+
+class my_Field_3(cfdm.Field):
+    def __init__(self, properties=None, source=None, copy=True,
+                 _use_data=True):
+        super().__init__(properties=properties, source=source,
+                         copy=copy, _use_data=_use_data)
+        if source and copy:
+            # Deep copy the custom 'x' value
+            try:
+                self._custom['x'] = copy.deepcopy(source._custom['x'])
+            except (AttributeError, KeyError):
+                pass
+
+
+
+
+
+

Documentation

+

The cfdm package uses a “docstring rewriter” that allows commonly used +parts of class and class method docstrings to be written once in a +central location, and then inserted into each class at import time. In +addition, parts of a docstring are modified to reflect the appropriate +package and class names. This functionality extends to subclasses of +cfdm classes. New docstring substitutions may also be defined for the +subclasses.

+

See cfdm.core.meta.DocstringRewriteMeta for details on how to add to +create new docstring substitutions for extensions, and how to modify +the substitutions defined in the cfdm package.

+
+
+

A complete example

+

See cf-python for a +complete example of extending the cfdm package in the manner described +above.

+

cf-python adds more flexible inspection, reading and writing; and +provides metadata-aware analytical processing capabilities such as +regridding and statistical calculations.

+

It also has a more sophisticated data class that subclasses +cfdm.Data, but allows for larger-than-memory manipulations and +parallel processing.

+

cf-python strictly extends the cfdm API, so that a cfdm command will +always work on its cf-python counterpart.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.ATOL.html b/docs/1.9.0.1/function/cfdm.ATOL.html new file mode 100644 index 0000000000..b4063f30c4 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.ATOL.html @@ -0,0 +1,154 @@ + + + + + + + cfdm.ATOL — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.ATOL

+
+
+cfdm.ATOL(*new_atol)[source]
+

Alias for cfdm.atol.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.CF.html b/docs/1.9.0.1/function/cfdm.CF.html new file mode 100644 index 0000000000..45833d0152 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.CF.html @@ -0,0 +1,174 @@ + + + + + + + cfdm.CF — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CF

+
+
+cfdm.CF()[source]
+

The version of the CF conventions.

+

This indicates which version of the CF conventions are represented +by this release of the cfdm package, and therefore the version can +not be changed.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
str

The version of the CF conventions represented by this +release of the cfdm package.

+
+
+
+
+

Examples:

+
>>> CF()
+'1.9'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.LOG_LEVEL.html b/docs/1.9.0.1/function/cfdm.LOG_LEVEL.html new file mode 100644 index 0000000000..44ec766096 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.LOG_LEVEL.html @@ -0,0 +1,154 @@ + + + + + + + cfdm.LOG_LEVEL — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.LOG_LEVEL

+
+
+cfdm.LOG_LEVEL(*new_log_level)[source]
+

Alias for cfdm.log_level.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.RTOL.html b/docs/1.9.0.1/function/cfdm.RTOL.html new file mode 100644 index 0000000000..b9485c69dc --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.RTOL.html @@ -0,0 +1,154 @@ + + + + + + + cfdm.RTOL — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RTOL

+
+
+cfdm.RTOL(*new_rtol)[source]
+

Alias for cfdm.rtol.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.abspath.html b/docs/1.9.0.1/function/cfdm.abspath.html new file mode 100644 index 0000000000..d57af1da7f --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.abspath.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.abspath — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.abspath

+
+
+cfdm.abspath(filename)[source]
+

Return a normalised absolute version of a file name.

+

If a string containing URL is provided then it is returned +unchanged.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
filename: str

The name of the file.

+
+
+
+
Returns
+
+
str

The normalised absolutised version of filename.

+
+
+
+
+

Examples:

+
>>> import os
+>>> os.getcwd()
+'/data/archive'
+>>> cfdm.abspath('file.nc')
+'/data/archive/file.nc'
+>>> cfdm.abspath('..//archive///file.nc')
+'/data/archive/file.nc'
+>>> cfdm.abspath('http://data/archive/file.nc')
+'http://data/archive/file.nc'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.atol.html b/docs/1.9.0.1/function/cfdm.atol.html new file mode 100644 index 0000000000..cd1da5a96f --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.atol.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.atol — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.atol

+
+
+cfdm.atol(*arg)[source]
+

The numerical equality tolerance on absolute differences.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on absolute +differences) and rtol (the tolerance on relative differences) +are positive, typically very small numbers. The values of atol +and rtol are initialised to the system epsilon (the difference +between 1 and the least value greater than 1 that is representable +as a float).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

rtol, configuration

+
+
+
Parameters
+
+
arg: float or Constant, optional

The new value of relative tolerance. The default is to not +change the current value.

+
+
+
+
Returns
+
+
Constant

The value prior to the change, or the current value if no +new value was specified.

+
+
+
+
+

Examples:

+
>>> cfdm.atol()
+<Constant: 2.220446049250313e-16>
+>>> print(cfdm.atol())
+2.220446049250313e-16
+>>> str(cfdm.atol())
+'2.220446049250313e-16'
+>>> cfdm.atol().value
+2.220446049250313e-16
+>>> float(cfdm.atol())
+2.220446049250313e-16
+
+
+
>>> old = cfdm.atol(1e-10)
+>>> cfdm.atol()
+<Constant: 2.220446049250313e-16>
+>>> cfdm.atol(old)
+<Constant: 1e-10>
+>>> cfdm.atol()
+<Constant: 2.220446049250313e-16>
+
+
+

Use as a context manager:

+
>>> print(cfdm.atol())
+2.220446049250313e-16
+>>> with cfdm.atol(1e-5):
+...     print(cfdm.atol(), cfdm.atol(2e-30), cfdm.atol())
+...
+1e-05 1e-05 2e-30
+>>> print(cfdm.atol())
+2.220446049250313e-16
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.configuration.html b/docs/1.9.0.1/function/cfdm.configuration.html new file mode 100644 index 0000000000..a5f2e0115f --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.configuration.html @@ -0,0 +1,271 @@ + + + + + + + cfdm.configuration — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.configuration

+
+
+cfdm.configuration(atol=None, rtol=None, log_level=None)[source]
+

Views and sets constants in the project-wide configuration.

+

The full list of global constants that are provided in a +dictionary to view, and can be set in any combination, are:

+ +

These are all constants that apply throughout cfdm, except for +in specific functions only if overridden by the corresponding +keyword argument to that function.

+

The value of None, either taken by default or supplied as a +value, will result in the constant in question not being changed +from the current value. That is, it will have no effect.

+

Note that setting a constant using this function is equivalent to +setting it by means of a specific function of the same name, +e.g. via cfdm.atol, but in this case multiple constants can be +set at once.

+
+

New in version (cfdm): 1.8.6

+
+
+

See also

+

atol, rtol, log_level

+
+
+
Parameters
+
+
atol: number or Constant, optional

The new value of absolute tolerance. The default is to not +change the current value.

+
+
rtol: number or Constant, optional

The new value of relative tolerance. The default is to not +change the current value.

+
+
log_level: str or int or Constant, optional

The new value of the minimal log severity level. This can +be specified either as a string equal (ignoring case) to +the named set of log levels or identifier 'DISABLE', +or an integer code corresponding to each of these, namely:

+
    +
  • 'DISABLE' (0);

  • +
  • 'WARNING' (1);

  • +
  • 'INFO' (2);

  • +
  • 'DETAIL' (3);

  • +
  • 'DEBUG' (-1).

  • +
+
+
+
+
Returns
+
+
Configuration

The dictionary-like object containing the names and values +of the project-wide constants prior to the change, or the +current names and values if no new values are specified.

+
+
+
+
+

Examples:

+

View full global configuration of constants:

+
>>> cfdm.configuration()
+<{{repr}}Configuration: {'atol': 2.220446049250313e-16,
+                 'rtol': 2.220446049250313e-16,
+                 'log_level': 'WARNING'}>
+>>> print(cfdm.configuration())
+{'atol': 2.220446049250313e-16,
+ 'rtol': 2.220446049250313e-16,
+ 'log_level': 'WARNING'}
+
+
+

Make a change to one constant and see that it is reflected in the +configuration:

+
>>> cfdm.log_level('DEBUG')
+<{{repr}}Constant: 'WARNING'>
+>>> print(cfdm.configuration())
+{'atol': 2.220446049250313e-16,
+ 'rtol': 2.220446049250313e-16,
+ 'log_level': 'DEBUG'}
+
+
+

Access specific values by key querying, noting the equivalency to +using its bespoke function:

+
>>> cfdm.configuration()['atol']
+2.220446049250313e-16
+>>> cfdm.configuration()['atol'] == cfdm.atol()
+True
+
+
+

Set multiple constants simultaneously:

+
>>> print(cfdm.configuration(atol=5e-14, log_level='INFO'))
+{'atol': 2.220446049250313e-16,
+ 'rtol': 2.220446049250313e-16,
+ 'log_level': 'DEBUG'}
+>>> print(cfdm.configuration())
+{'atol': 5e-14, 'rtol': 2.220446049250313e-16, 'log_level': 'INFO'}
+
+
+

Set a single constant without using its bespoke function:

+
>>> print(cfdm.configuration(rtol=1e-17))
+{'atol': 5e-14, 'rtol': 2.220446049250313e-16, 'log_level': 'INFO'}
+>>> cfdm.configuration()
+{'atol': 5e-14, 'rtol': 1e-17, 'log_level': 'INFO'}
+
+
+

Use as a context manager:

+
>>> print(cfdm.configuration())
+{'atol': 2.220446049250313e-16,
+ 'rtol': 2.220446049250313e-16,
+ 'log_level': 'WARNING'}
+>>> with cfdm.configuration(atol=9, rtol=10):
+...     print(cfdm.configuration())
+...
+{'atol': 9.0, 'rtol': 10.0, 'log_level': 'WARNING'}
+>>> print(cfdm.configuration())
+{'atol': 2.220446049250313e-16,
+ 'rtol': 2.220446049250313e-16,
+ 'log_level': 'WARNING'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.environment.html b/docs/1.9.0.1/function/cfdm.environment.html new file mode 100644 index 0000000000..c5f1facdda --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.environment.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.environment — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.environment

+
+
+cfdm.environment(display=True, paths=True)[source]
+

Return the names, versions and paths of all dependencies.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description of the environment as +a string. By default the description is printed.

+
+
paths: bool, optional

If False then do not output the locations of each package.

+
+
+
+
Returns
+
+
None or list

If display is True then the description of the +environment is printed and None is returned. Otherwise +the description is returned as in a list.

+
+
+
+
+

Examples:

+
>>> cfdm.environment()
+Platform: Linux-4.15.0-72-generic-x86_64-with-debian-stretch-sid
+HDF5 library: 1.10.6
+netcdf library: 4.7.4
+python: 3.8.2 /home/user/anaconda3/bin/python
+netCDF4: 1.5.6 /home/user/anaconda3/lib/python3.7/site-packages/netCDF4/__init__.py
+cftime: 1.5.0 /home/user/anaconda3/lib/python3.7/site-packages/cftime/__init__.py
+numpy: 1.18.1 /home/user/anaconda3/lib/python3.7/site-packages/numpy/__init__.py
+cfdm: 1.9.0.0
+
+
+
>>> cfdm.environment(paths=False)
+Platform: Linux-4.15.0-72-generic-x86_64-with-debian-stretch-sid
+HDF5 library: 1.10.6
+netcdf library: 4.7.4
+python: 3.8.2
+netCDF4: 1.5.6
+cftime: 1.5.0
+numpy: 1.18.1
+cfdm: 1.9.0.0
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.example_domain.html b/docs/1.9.0.1/function/cfdm.example_domain.html new file mode 100644 index 0000000000..43882bcd84 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.example_domain.html @@ -0,0 +1,310 @@ + + + + + + + cfdm.example_domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.example_domain

+
+
+cfdm.example_domain(n, _func=<function example_field>)[source]
+

Return an example domain construct.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
n: int

Select the example domain construct to return, one of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

n

Description

0

A domain construct dimension coordinate constructs +with bounds.

1

A domain construct with at least one of every +possible type of metadata construct.

2

A domain construct dimension coordinate constructs +with bounds. +series at each latitude-longitude location.

3

A domain construct for discrete sampling geometry +(DSG) “timeSeries” features.

4

A domain construct or discrete sampling geometry +(DSG) “timeSeriesProfile” features.

5

A domain construct dimension coordinate constructs +with bounds.

6

A domain construct that has polygon geometry +coordinate cells with interior ring variables.

7

A domain construct that has rotated pole dimension +coordinate constructs and 2-d latitude and +longitude auxiliary coordinate constructs.

+

See the examples for details.

+
+
_func: function

The function that creates the field construct from which +the domain construct is derived.

+
+
+
+
Returns
+
+
Domain

The example domain construct.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_domain(0)
+>>> print(f)
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+
+
+
>>> f = cfdm.example_domain(1)
+>>> print(f)
+Dimension coords: atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+                : time(1) = [2019-01-01 00:00:00]
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., b'kappa']
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: grid_mapping_name:rotated_latitude_longitude
+                : standard_name:atmosphere_hybrid_height_coordinate
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+
+
+
>>> f = cfdm.example_domain(2)
+>>> print(f)
+Dimension coords: time(36) = [1959-12-16 12:00:00, ..., 1962-11-16 00:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : air_pressure(1) = [850.0] hPa
+
+
+
>>> f = cfdm.example_domain(3)
+>>> print(f)
+Auxiliary coords: time(cf_role=timeseries_id(4), ncdim%timeseries(9)) = [[1969-12-29 00:00:00, ..., 1970-01-07 00:00:00]]
+                : latitude(cf_role=timeseries_id(4)) = [-9.0, ..., 78.0] degrees_north
+                : longitude(cf_role=timeseries_id(4)) = [-23.0, ..., 178.0] degrees_east
+                : height(cf_role=timeseries_id(4)) = [0.5, ..., 345.0] m
+                : cf_role=timeseries_id(cf_role=timeseries_id(4)) = [b'station1', ..., b'station4']
+                : long_name=station information(cf_role=timeseries_id(4)) = [-10, ..., -7]
+
+
+
>>> f = cfdm.example_domain(4)
+>>> print(f)
+Auxiliary coords: time(cf_role=timeseries_id(3), ncdim%timeseries(26)) = [[1970-01-04 00:00:00, ..., --]]
+                : latitude(cf_role=timeseries_id(3)) = [-9.0, 2.0, 34.0] degrees_north
+                : longitude(cf_role=timeseries_id(3)) = [-23.0, 0.0, 67.0] degrees_east
+                : height(cf_role=timeseries_id(3)) = [0.5, 12.6, 23.7] m
+                : altitude(cf_role=timeseries_id(3), ncdim%timeseries(26), ncdim%profile_1(4)) = [[[2.07, ..., --]]] km
+                : cf_role=timeseries_id(cf_role=timeseries_id(3)) = [b'station1', b'station2', b'station3']
+                : long_name=station information(cf_role=timeseries_id(3)) = [-10, -9, -8]
+                : cf_role=profile_id(cf_role=timeseries_id(3), ncdim%timeseries(26)) = [[102, ..., --]]
+
+
+
>>> f = cfdm.example_domain(5)
+>>> print(f)
+Dimension coords: time(118) = [1959-01-01 06:00:00, ..., 1959-02-28 18:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : air_pressure(1) = [850.0] hPa
+
+
+
>>> f = cfdm.example_domain(6)
+>>> print(f)
+Dimension coords: time(4) = [2000-01-16 12:00:00, ..., 2000-04-15 00:00:00]
+Auxiliary coords: latitude(cf_role=timeseries_id(2)) = [25.0, 7.0] degrees_north
+                : longitude(cf_role=timeseries_id(2)) = [10.0, 40.0] degrees_east
+                : cf_role=timeseries_id(cf_role=timeseries_id(2)) = [b'x1', b'y2']
+                : ncvar%z(cf_role=timeseries_id(2), 3, 4) = [[[1.0, ..., --]]] m
+Coord references: grid_mapping_name:latitude_longitude
+
+
+
>>> f = cfdm.example_domain(7)
+>>> print(f)
+Dimension coords: time(3) = [1979-05-01 12:00:00, 1979-05-02 12:00:00, 1979-05-03 12:00:00] gregorian
+                : air_pressure(1) = [850.0] hPa
+                : grid_latitude(4) = [0.44, ..., -0.88] degrees
+                : grid_longitude(5) = [-1.18, ..., 0.58] degrees
+Auxiliary coords: latitude(grid_latitude(4), grid_longitude(5)) = [[52.4243, ..., 51.1163]] degrees_north
+                : longitude(grid_latitude(4), grid_longitude(5)) = [[8.0648, ..., 10.9238]] degrees_east
+Coord references: grid_mapping_name:rotated_latitude_longitude
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.example_field.html b/docs/1.9.0.1/function/cfdm.example_field.html new file mode 100644 index 0000000000..1b6108527f --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.example_field.html @@ -0,0 +1,347 @@ + + + + + + + cfdm.example_field — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.example_field

+
+
+cfdm.example_field(n, _implementation=<CFDMImplementation: >)[source]
+

Return an example field construct.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
n: int

Select the example field construct to return, one of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

n

Description

0

A field construct with properties as well as a +cell method construct and dimension coordinate +constructs with bounds.

1

A field construct with properties as well as at +least one of every type of metadata construct.

2

A field construct that contains a monthly time +series at each latitude-longitude location.

3

A field construct that contains discrete sampling +geometry (DSG) “timeSeries” features.

4

A field construct that contains discrete sampling +geometry (DSG) “timeSeriesProfile” features.

5

A field construct that contains a 12 hourly time +series at each latitude-longitude location.

6

A field construct that has polygon geometry +coordinate cells with interior ring variables.

7

A field construct that has rotated pole dimension +coordinate constructs and 2-d latitude and +longitude auxiliary coordinate constructs.

+

See the examples for details.

+
+
_implementation: (subclass of) CFDMImplementation, optional

Define the CF data model implementation that provides the +returned field constructs.

+
+
+
+
Returns
+
+
Field or int

The example field construct, or if n_field is True, the +number of field constructs that are available.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> print(f.data.array)
+[[0.007 0.034 0.003 0.014 0.018 0.037 0.024 0.029]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [0.006 0.036 0.019 0.035 0.018 0.037 0.034 0.013]]
+
+
+
>>> f = cfdm.example_field(1)
+>>> print(f)
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Data            : air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K
+Cell methods    : grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees) time(1): maximum
+Field ancils    : air_temperature standard_error(grid_latitude(10), grid_longitude(9)) = [[0.76, ..., 0.32]] K
+Dimension coords: atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+                : time(1) = [2019-01-01 00:00:00]
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., b'kappa']
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: grid_mapping_name:rotated_latitude_longitude
+                : standard_name:atmosphere_hybrid_height_coordinate
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+
+
+
>>> f = cfdm.example_field(2)
+>>> print(f)
+Field: air_potential_temperature (ncvar%air_potential_temperature)
+------------------------------------------------------------------
+Data            : air_potential_temperature(time(36), latitude(5), longitude(8)) K
+Cell methods    : area: mean
+Dimension coords: time(36) = [1959-12-16 12:00:00, ..., 1962-11-16 00:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : air_pressure(1) = [850.0] hPa
+
+
+
>>> f = cfdm.example_field(3)
+>>> print(f)
+Field: precipitation_flux (ncvar%p)
+-----------------------------------
+Data            : precipitation_flux(cf_role=timeseries_id(4), ncdim%timeseries(9)) kg m-2 day-1
+Auxiliary coords: time(cf_role=timeseries_id(4), ncdim%timeseries(9)) = [[1969-12-29 00:00:00, ..., 1970-01-07 00:00:00]]
+                : latitude(cf_role=timeseries_id(4)) = [-9.0, ..., 78.0] degrees_north
+                : longitude(cf_role=timeseries_id(4)) = [-23.0, ..., 178.0] degrees_east
+                : height(cf_role=timeseries_id(4)) = [0.5, ..., 345.0] m
+                : cf_role=timeseries_id(cf_role=timeseries_id(4)) = [b'station1', ..., b'station4']
+                : long_name=station information(cf_role=timeseries_id(4)) = [-10, ..., -7]
+
+
+
>>> f = cfdm.example_field(4)
+>>> print(f)
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Data            : air_temperature(cf_role=timeseries_id(3), ncdim%timeseries(26), ncdim%profile_1(4)) K
+Auxiliary coords: time(cf_role=timeseries_id(3), ncdim%timeseries(26)) = [[1970-01-04 00:00:00, ..., --]]
+                : latitude(cf_role=timeseries_id(3)) = [-9.0, 2.0, 34.0] degrees_north
+                : longitude(cf_role=timeseries_id(3)) = [-23.0, 0.0, 67.0] degrees_east
+                : height(cf_role=timeseries_id(3)) = [0.5, 12.6, 23.7] m
+                : altitude(cf_role=timeseries_id(3), ncdim%timeseries(26), ncdim%profile_1(4)) = [[[2.07, ..., --]]] km
+                : cf_role=timeseries_id(cf_role=timeseries_id(3)) = [b'station1', b'station2', b'station3']
+                : long_name=station information(cf_role=timeseries_id(3)) = [-10, -9, -8]
+                : cf_role=profile_id(cf_role=timeseries_id(3), ncdim%timeseries(26)) = [[102, ..., --]]
+
+
+
>>> f = cfdm.example_field(5)
+>>> print(f)
+Field: air_potential_temperature (ncvar%air_potential_temperature)
+------------------------------------------------------------------
+Data            : air_potential_temperature(time(118), latitude(5), longitude(8)) K
+Cell methods    : area: mean
+Dimension coords: time(118) = [1959-01-01 06:00:00, ..., 1959-02-28 18:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : air_pressure(1) = [850.0] hPa
+
+
+
>>> f = cfdm.example_field(6)
+>>> print(f)
+Field: precipitation_amount (ncvar%pr)
+--------------------------------------
+Data            : precipitation_amount(cf_role=timeseries_id(2), time(4))
+Dimension coords: time(4) = [2000-01-16 12:00:00, ..., 2000-04-15 00:00:00]
+Auxiliary coords: latitude(cf_role=timeseries_id(2)) = [25.0, 7.0] degrees_north
+                : longitude(cf_role=timeseries_id(2)) = [10.0, 40.0] degrees_east
+                : cf_role=timeseries_id(cf_role=timeseries_id(2)) = [b'x1', b'y2']
+                : ncvar%z(cf_role=timeseries_id(2), 3, 4) = [[[1.0, ..., --]]] m
+Coord references: grid_mapping_name:latitude_longitude
+
+
+
>>> f = cfdm.example_field(7)
+>>> print(f)
+Field: eastward_wind (ncvar%ua)
+-------------------------------
+Data            : eastward_wind(time(3), air_pressure(1), grid_latitude(4), grid_longitude(5)) m s-1
+Cell methods    : time(3): mean
+Dimension coords: time(3) = [1979-05-01 12:00:00, 1979-05-02 12:00:00, 1979-05-03 12:00:00] gregorian
+                : air_pressure(1) = [850.0] hPa
+                : grid_latitude(4) = [0.44, ..., -0.88] degrees
+                : grid_longitude(5) = [-1.18, ..., 0.58] degrees
+Auxiliary coords: latitude(grid_latitude(4), grid_longitude(5)) = [[52.4243, ..., 51.1163]] degrees_north
+                : longitude(grid_latitude(4), grid_longitude(5)) = [[8.0648, ..., 10.9238]] degrees_east
+Coord references: grid_mapping_name:rotated_latitude_longitude
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.example_fields.html b/docs/1.9.0.1/function/cfdm.example_fields.html new file mode 100644 index 0000000000..30282ff322 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.example_fields.html @@ -0,0 +1,258 @@ + + + + + + + cfdm.example_fields — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.example_fields

+
+
+cfdm.example_fields(*n, _func=<function example_field>)[source]
+

Return example field constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
n: zero or more int, optional

Select the example field constructs to return, any +combination of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

n

Description

0

A field construct with properties as well as a +cell method construct and dimension coordinate +constructs with bounds.

1

A field construct with properties as well as at +least one of every type of metadata construct.

2

A field construct that contains a monthly time +series at each latitude-longitude location.

3

A field construct that contains discrete sampling +geometry (DSG) “timeSeries” features.

4

A field construct that contains discrete sampling +geometry (DSG) “timeSeriesProfile” features.

5

A field construct that contains a 12 hourly time +series at each latitude-longitude location.

6

A field construct that has polygon geometry +coordinate cells with interior ring variables.

7

A field construct that has rotated pole dimension +coordinate constructs and 2-d latitude and +longitude auxiliary coordinate constructs.

+

If no individual field constructs are selected then all +available field constructs will be returned.

+

Field constructs may be selected multiple time, and will +be output in the order that they are given.

+

See the cfdm.example_field for details.

+
+
_func: function

The function that returns each individual field construct.

+
+
+
+
Returns
+
+
list

The example field constructs.

+
+
+
+
+

Examples

+
>>> cfdm.example_fields()
+[<Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>,
+ <Field: air_potential_temperature(time(36), latitude(5), longitude(8)) K>,
+ <Field: precipitation_flux(cf_role=timeseries_id(4), ncdim%timeseries(9)) kg m-2 day-1>,
+ <Field: air_temperature(cf_role=timeseries_id(3), ncdim%timeseries(26), ncdim%profile_1(4)) K>,
+ <Field: air_potential_temperature(time(118), latitude(5), longitude(8)) K>,
+ <Field: precipitation_amount(cf_role=timeseries_id(2), time(4))>,
+ <Field: eastward_wind(time(3), air_pressure(1), grid_latitude(4), grid_longitude(5)) m s-1>]
+
+
+
>>> cfdm.example_fields(7, 1)
+[<Field: eastward_wind(time(3), air_pressure(1), grid_latitude(4), grid_longitude(5)) m s-1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+
+
+
>>> cfdm.example_fields(3)
+[<Field: precipitation_flux(cf_role=timeseries_id(4), ncdim%timeseries(9)) kg m-2 day-1>]
+
+
+
>>> cfdm.example_fields(3, 3, 4)
+[<Field: precipitation_flux(cf_role=timeseries_id(4), ncdim%timeseries(9)) kg m-2 day-1>,
+ <Field: precipitation_flux(cf_role=timeseries_id(4), ncdim%timeseries(9)) kg m-2 day-1>,
+ <Field: air_temperature(cf_role=timeseries_id(3), ncdim%timeseries(26), ncdim%profile_1(4)) K>]
+
+
+

See the cfdm.example_field for more details.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.implementation.html b/docs/1.9.0.1/function/cfdm.implementation.html new file mode 100644 index 0000000000..650ffe51d3 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.implementation.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.implementation — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.implementation

+
+
+cfdm.implementation()[source]
+

Return a container for the CF data model implementation.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
CFDMImplementation

A container for the CF data model implementation.

+
+
+
+
+

Examples:

+
>>> i = cfdm.implementation()
+>>> i
+<CFDMImplementation: >
+>>> i.classes()
+{'AuxiliaryCoordinate': <class 'cfdm.auxiliarycoordinate.AuxiliaryCoordinate'>,
+ 'CellMeasure': <class 'cfdm.cellmeasure.CellMeasure'>,
+ 'CellMethod': <class 'cfdm.cellmethod.CellMethod'>,
+ 'CoordinateReference': <class 'cfdm.coordinatereference.CoordinateReference'>,
+ 'DimensionCoordinate': <class 'cfdm.dimensioncoordinate.DimensionCoordinate'>,
+ 'DomainAncillary': <class 'cfdm.domainancillary.DomainAncillary'>,
+ 'DomainAxis': <class 'cfdm.domainaxis.DomainAxis'>,
+ 'Field': <class 'cfdm.field.Field'>,
+ 'FieldAncillary': <class 'cfdm.fieldancillary.FieldAncillary'>,
+ 'Bounds': <class 'cfdm.bounds.Bounds'>,
+ 'InteriorRing': <class 'cfdm.interiorring.InteriorRing'>,
+ 'CoordinateConversion': <class 'cfdm.coordinateconversion.CoordinateConversion'>,
+ 'Datum': <class 'cfdm.datum.Datum'>,
+ 'Data': <class 'cfdm.data.data.Data'>,
+ 'GatheredArray': <class 'cfdm.data.gatheredarray.GatheredArray'>,
+ 'NetCDFArray': <class 'cfdm.data.netcdfarray.NetCDFArray'>,
+ 'RaggedContiguousArray': <class 'cfdm.data.raggedcontiguousarray.RaggedContiguousArray'>,
+ 'RaggedIndexedArray': <class 'cfdm.data.raggedindexedarray.RaggedIndexedArray'>,
+ 'RaggedIndexedContiguousArray': <class 'cfdm.data.raggedindexedcontiguousarray.RaggedIndexedContiguousArray'>,
+ 'List': <class 'cfdm.list.List'>,
+ 'Count': <class 'cfdm.count.Count'>,
+ 'Index': <class 'cfdm.index.Index'>,
+ 'NodeCountProperties': <class 'cfdm.nodecountproperties.NodeCountProperties'>,
+ 'PartNodeCountProperties': <class 'cfdm.partnodecountproperties.PartNodeCountProperties'>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.is_log_level_debug.html b/docs/1.9.0.1/function/cfdm.is_log_level_debug.html new file mode 100644 index 0000000000..ff997a0717 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.is_log_level_debug.html @@ -0,0 +1,167 @@ + + + + + + + cfdm.is_log_level_debug — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.is_log_level_debug

+
+
+cfdm.is_log_level_debug(logger)[source]
+

Return True if and only if log level is at least DEBUG.

+
+

New in version (cfdm): 1.8.9.0

+
+
+

See also

+

log_level

+
+
+
Parameters
+
+
logger: logging.Logger

The logger in use.

+
+
+
+
Returns
+
+
bool

Whether or not the log level is at least DEBUG.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.is_log_level_detail.html b/docs/1.9.0.1/function/cfdm.is_log_level_detail.html new file mode 100644 index 0000000000..4e2cbd0aa6 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.is_log_level_detail.html @@ -0,0 +1,167 @@ + + + + + + + cfdm.is_log_level_detail — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.is_log_level_detail

+
+
+cfdm.is_log_level_detail(logger)[source]
+

Return True if and only if log level is at least DETAIL.

+
+

New in version (cfdm): 1.8.9.0

+
+
+

See also

+

log_level

+
+
+
Parameters
+
+
logger: logging.Logger

The logger in use.

+
+
+
+
Returns
+
+
bool

Whether or not the log level is at least DETAIL.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.is_log_level_info.html b/docs/1.9.0.1/function/cfdm.is_log_level_info.html new file mode 100644 index 0000000000..8b4985798b --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.is_log_level_info.html @@ -0,0 +1,167 @@ + + + + + + + cfdm.is_log_level_info — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.is_log_level_info

+
+
+cfdm.is_log_level_info(logger)[source]
+

Return True if and only if log level is at least INFO.

+
+

New in version (cfdm): 1.8.9.0

+
+
+

See also

+

log_level

+
+
+
Parameters
+
+
logger: logging.Logger

The logger in use.

+
+
+
+
Returns
+
+
bool

Whether or not the log level is at least INFO.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.log_level.html b/docs/1.9.0.1/function/cfdm.log_level.html new file mode 100644 index 0000000000..d70e6df0eb --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.log_level.html @@ -0,0 +1,226 @@ + + + + + + + cfdm.log_level — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.log_level

+
+
+cfdm.log_level(*arg)[source]
+

The minimal level of seriousness of log messages which are shown.

+

This can be adjusted to filter out potentially-useful log messages +generated by cfdm at runtime, such that any messages marked as +having a severity below the level set will not be reported.

+

For example, when set to 'WARNING' (or equivalently 1), +all messages categorised as 'DEBUG' or 'INFO' will be +suppressed, and only warnings will emerge.

+

See https://ncas-cms.github.io/cfdm/tutorial.html#logging for a +detailed breakdown on the levels and configuration possibilities.

+

The default level is 'WARNING' (1).

+
+

New in version (cfdm): 1.8.4

+
+
+

See also

+

configuration

+
+
+
Parameters
+
+
log_level: str or int or Constant, optional

The new value of the minimal log severity level. This can +be specified either as a string equal (ignoring case) to +the named set of log levels or identifier 'DISABLE', +or an integer code corresponding to each of these, namely:

+
    +
  • 'DISABLE' (0);

  • +
  • 'WARNING' (1);

  • +
  • 'INFO' (2);

  • +
  • 'DETAIL' (3);

  • +
  • 'DEBUG' (-1).

  • +
+
+
+
+
Returns
+
+
Constant

The value prior to the change, or the current value if no +new value was specified (or if one was specified but was +not valid). Note the string name, rather than the +equivalent integer, will always be returned.

+
+
+
+
+

Examples:

+
>>> cfdm.log_level()
+<Constant: 'WARNING'>
+>>> print(cfdm.log_level())
+WARNING
+>>> str(cfdm.log_level())
+'WARNING'
+
+
+
>>> old = cfdm.log_level('INFO')
+>>> cfdm.log_level()
+<Constant: 'WARNING'>
+>>> cfdm.log_level(old)
+<Constant: 'INFO'>
+>>> cfdm.log_level()
+<Constant: 'WARNING'>
+
+
+

Use as a context manager:

+
>>> print(cfdm.log_level())
+WARNING
+>>> with cfdm.log_level('DETAIL'):
+...     print(cfdm.log_level(), cfdm.log_level(-1), cfdm.log_level())
+...
+DETAIL DETAIL DEBUG
+>>> print(cfdm.log_level())
+WARNING
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.read.html b/docs/1.9.0.1/function/cfdm.read.html new file mode 100644 index 0000000000..7568f617fa --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.read.html @@ -0,0 +1,422 @@ + + + + + + + cfdm.read — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.read

+
+
+cfdm.read(filename, external=None, extra=None, verbose=None, warnings=False, warn_valid=False, mask=True, domain=False, _implementation=<CFDMImplementation: >)[source]
+

Read field or domain constructs from a dataset.

+

The dataset may be a netCDF file on disk or on an OPeNDAP server, +or a CDL file on disk (see below).

+

The returned constructs are sorted by the netCDF variable names of +their corresponding data or domain variables.

+

CDL files

+

A file is considered to be a CDL representation of a netCDF +dataset if it is a text file whose first non-comment line starts +with the seven characters “netcdf ” (six letters followed by a +space). A comment line is identified as one which starts with any +amount white space (including none) followed by “//” (two +slashes). It is converted to a temporary netCDF4 file using the +external ncgen command, and the temporary file persists until +the end of the Python session, at which time it is automatically +deleted. The CDL file may omit data array values (as would be the +case, for example, if the file was created with the -h or +-c option to ncdump), in which case the the relevant +constructs in memory will be created with data with all missing +values.

+

NetCDF unlimited dimensions

+

Domain axis constructs that correspond to NetCDF unlimited +dimensions may be accessed with the +nc_is_unlimited and +nc_set_unlimited methods of a domain axis +construct.

+

NetCDF hierarchical groups

+

Hierarchical groups in CF provide a mechanism to structure +variables within netCDF4 datasets. Field constructs are +constructed from grouped datasets by applying the well defined +rules in the CF conventions for resolving references to +out-of-group netCDF variables and dimensions. The group structure +is preserved in the field construct’s netCDF interface. Groups +were incorporated into CF-1.8. For files with groups that state +compliance to earlier versions of the CF conventions, the groups +will be interpreted as per the latest release of the CF +conventions.

+

CF-compliance

+

If the dataset is partially CF-compliant to the extent that it is +not possible to unambiguously map an element of the netCDF dataset +to an element of the CF data model, then a field construct is +still returned, but may be incomplete. This is so that datasets +which are partially conformant may nonetheless be modified in +memory and written to new datasets.

+

Such “structural” non-compliance would occur, for example, if the +“coordinates” attribute of a CF-netCDF data variable refers to +another variable that does not exist, or refers to a variable that +spans a netCDF dimension that does not apply to the data +variable. Other types of non-compliance are not checked, such +whether or not controlled vocabularies have been adhered to. The +structural compliance of the dataset may be checked with the +dataset_compliance method of the returned +constructs, as well as optionally displayed when the dataset is +read by setting the warnings parameter.

+

Performance

+

Descriptive properties are always read into memory, but lazy +loading is employed for all data arrays, which means that no data +is read into memory until the data is required for inspection or +to modify the array contents. This maximises the number of field +constructs that may be read within a session, and makes the read +operation fast.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
filename: str

The file name or OPenDAP URL of the dataset.

+

Relative paths are allowed, and standard tilde and shell +parameter expansions are applied to the string.

+
+
Parameter example:

The file file.nc in the user’s home directory could +be described by any of the following: +'$HOME/file.nc', '${HOME}/file.nc', +'~/file.nc', '~/tmp/../file.nc'.

+
+
+
+
external: (sequence of) str, optional

Read external variables (i.e. variables which are named by +attributes, but are not present, in the parent file given +by the filename parameter) from the given external +files. Ignored if the parent file does not contain a +global external_variables attribute. Multiple external +files may be provided, which are searched in random order +for the required external variables.

+

If an external variable is not found in any external +files, or is found in multiple external files, then the +relevant metadata construct is still created, but without +any metadata or data. In this case the construct’s +is_external method will return True.

+
+
Parameter example:

external='cell_measure.nc'

+
+
Parameter example:

external=['cell_measure.nc']

+
+
Parameter example:

external=('cell_measure_A.nc', 'cell_measure_O.nc')

+
+
+
+
+

extra: (sequence of) str, optional

+
+

Create extra, independent fields from netCDF variables +that correspond to particular types metadata constructs. +Ignored if domain is True.

+

The extra parameter may be one, or a sequence, of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + +

extra

Metadata constructs

'field_ancillary'

Field ancillary constructs

'domain_ancillary'

Domain ancillary constructs

'dimension_coordinate'

Dimension coordinate constructs

'auxiliary_coordinate'

Auxiliary coordinate constructs

'cell_measure'

Cell measure constructs

+
+
Parameter example:

To create fields from auxiliary coordinate constructs: +extra='auxiliary_coordinate' or +extra=['auxiliary_coordinate'].

+
+
Parameter example:

To create fields from domain ancillary and cell measure +constructs: extra=['domain_ancillary', +'cell_measure'].

+
+
+

An extra field construct created via the extra parameter +will have a domain limited to that which can be inferred +from the corresponding netCDF variable, but without the +connections that are defined by the parent netCDF data +variable. It is possible to create independent fields from +metadata constructs that do incorporate as much of the +parent field construct’s domain as possible by using the +convert method of a returned field +construct, instead of setting the extra parameter.

+
+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent string +equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the minimum +cut-off for the verboseness level of displayed output (log) +messages, regardless of the globally-configured cfdm.log_level. +Note that increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special case of +maximal and extreme verbosity.

+

Otherwise, if None (the default value), output messages will +be shown according to the value of the cfdm.log_level setting.

+

Overall, the higher a non-negative integer or equivalent string +that is set (up to a maximum of 3/'DETAIL') for +increasing verbosity, the more description that is printed to +convey how the contents of the netCDF file were parsed and +mapped to CF data model constructs.

+
+
warnings: bool, optional

If True then print warnings when an output field construct +is incomplete due to structural non-compliance of the +dataset. By default such warnings are not displayed.

+
+
warn_valid: bool, optional

If True then print a warning for the presence of +valid_min, valid_max or valid_range properties +on field constructs and metadata constructs that have +data. By default no such warning is issued.

+

“Out-of-range” data values in the file, as defined by any +of these properties, are automatically masked by default, +which may not be as intended. See the mask parameter for +turning off all automatic masking.

+

See +https://ncas-cms.github.io/cfdm/tutorial.html#data-mask +for details.

+
+

New in version (cfdm): 1.8.3

+
+
+
mask: bool, optional

If False then do not mask by convention the data of field +and metadata constructs. By default all data is masked by +convention.

+

The masking by convention of a netCDF array depends on the +values of any of the netCDF variable attributes +_FillValue, missing_value, valid_min, +valid_max and valid_range.

+

See +https://ncas-cms.github.io/cfdm/tutorial.html#data-mask +for details.

+
+

New in version (cfdm): 1.8.2

+
+
+
domain: bool, optional

If True then return only the domain constructs that are +explicitly defined by CF-netCDF domain variables, ignoring +all CF-netCDF data variables. By default only the field +constructs defined by CF-netCDF data variables are +returned.

+

CF-netCDF domain variables are only defined from CF-1.9, +so older datasets automatically contain no CF-netCDF +domain variables.

+

The unique domain constructs of the dataset are easily +found with the cfdm.unique_constructs function. For +example:

+
>>> d = cfdm.read('file.nc', domain=True)
+>>> ud = cfdm.unique_constructs(d)
+>>> f = cfdm.read('file.nc')
+>>> ufd = cfdm.unique_constructs(x.domain for x in f)
+
+
+
+

New in version (cfdm): 1.9.0.0

+
+
+
_implementation: (subclass of) CFDMImplementation, optional

Define the CF data model implementation that provides the +returned field constructs.

+
+
+
+
Returns
+
+
list of Field or Domain

The field constructs found in the dataset, or the domain +constructs if domain is True. The list may be empty.

+
+
+
+
+

Examples:

+
>>> x = cfdm.read('file.nc')
+>>> print(type(x))
+<type 'list'>
+
+
+

Read a file and create field constructs from CF-netCDF data +variables as well as from the netCDF variables that correspond to +particular types metadata constructs:

+
>>> f = cfdm.read('file.nc', extra='domain_ancillary')
+>>> g = cfdm.read('file.nc', extra=['dimension_coordinate',
+...                                 'auxiliary_coordinate'])
+
+
+

Read a file that contains external variables:

+
>>> h = cfdm.read('parent.nc')
+>>> i = cfdm.read('parent.nc', external='external.nc')
+>>> j = cfdm.read('parent.nc', external=['external1.nc', 'external2.nc'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.rtol.html b/docs/1.9.0.1/function/cfdm.rtol.html new file mode 100644 index 0000000000..b7adc1357d --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.rtol.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.rtol — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.rtol

+
+
+cfdm.rtol(*arg)[source]
+

The numerical equality tolerance on relative differences.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on absolute +differences) and rtol (the tolerance on relative differences) +are positive, typically very small numbers. The values of atol +and rtol are initialised to the system epsilon (the difference +between 1 and the least value greater than 1 that is representable +as a float).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

atol, configuration

+
+
+
Parameters
+
+
arg: float or Constant, optional

The new value of relative tolerance. The default is to not +change the current value.

+
+
+
+
Returns
+
+
Constant

The value prior to the change, or the current value if no +new value was specified.

+
+
+
+
+

Examples:

+
>>> cfdm.rtol()
+<Constant: 2.220446049250313e-16>
+>>> print(cfdm.rtol())
+2.220446049250313e-16
+>>> str(cfdm.rtol())
+'2.220446049250313e-16'
+>>> cfdm.rtol().value
+2.220446049250313e-16
+>>> float(cfdm.rtol())
+2.220446049250313e-16
+
+
+
>>> old = cfdm.rtol(1e-10)
+>>> cfdm.rtol()
+<Constant: 2.220446049250313e-16>
+>>> cfdm.rtol(old)
+<Constant: 1e-10>
+>>> cfdm.rtol()
+<Constant: 2.220446049250313e-16>
+
+
+

Use as a context manager:

+
>>> print(cfdm.rtol())
+2.220446049250313e-16
+>>> with cfdm.rtol(1e-5):
+...     print(cfdm.rtol(), cfdm.rtol(2e-30), cfdm.rtol())
+...
+1e-05 1e-05 2e-30
+>>> print(cfdm.rtol())
+2.220446049250313e-16
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.unique_constructs.html b/docs/1.9.0.1/function/cfdm.unique_constructs.html new file mode 100644 index 0000000000..dbe692d303 --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.unique_constructs.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.unique_constructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.unique_constructs

+
+
+cfdm.unique_constructs(constructs, copy=True)[source]
+

Return the unique constructs from a sequence.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Parameters
+
+
constructs: sequence of constructs

The constructs to be compared. The constructs may comprise +a mixture of types. The sequence can be empty.

+
+
copy: bool, optional

If False then do not copy returned constructs. By default +they are deep copies.

+
+
+
+
Returns
+
+
list

The unique constructs. May be an empty list.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> g = cfdm.example_field(1)
+>>> f
+<Field: specific_humidity(latitude(5), longitude(8)) 1>
+>>> g
+<Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>
+
+
+
>>> fields = [f, f, g]
+>>> cfdm.unique_constructs(fields)
+[<Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+
+
+
>>> domains = [x.domain for x in fields]
+>>> cfdm.unique_constructs(domains)
+[<Domain: {latitude(5), longitude(8), time(1)}>,
+ <Domain: {atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9), time(1)}>]
+
+
+
>>> cfdm.unique_constructs(domains + fields + [f.domain])
+[<Domain: {latitude(5), longitude(8), time(1)}>,
+ <Domain: {atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9), time(1)}>,
+ <Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+
+
+
>>> cfdm.unique_constructs(x for x in fields)
+[<Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/function/cfdm.write.html b/docs/1.9.0.1/function/cfdm.write.html new file mode 100644 index 0000000000..fb8094724c --- /dev/null +++ b/docs/1.9.0.1/function/cfdm.write.html @@ -0,0 +1,617 @@ + + + + + + + cfdm.write — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.write

+
+
+cfdm.write(fields, filename, fmt='NETCDF4', mode='w', overwrite=True, global_attributes=None, variable_attributes=None, file_descriptors=None, external=None, Conventions=None, datatype=None, least_significant_digit=None, endian='native', compress=0, fletcher32=False, shuffle=True, string=True, verbose=None, warn_valid=True, group=True, coordinates=False, _implementation=<CFDMImplementation: >)[source]
+

Write field and domain constructs to a netCDF file.

+

File format

+

See the fmt parameter for details on which output netCDF file +formats are supported.

+

NetCDF variable and dimension names

+

These names are stored within constructs read a from dataset, or +may be set manually. They are used when writing a field construct +to the file. If a name has not been set then one will be +constructed (usually based on the standard name if it exists). The +names may be modified internally to prevent duplication in the +file.

+

Each construct, or construct component, that corresponds to a +netCDF variable has the following methods to get, set and remove a +netCDF variable name: nc_get_variable, nc_set_variable and +nc_del_variable method

+

The domain axis construct has the following methods to get, set +and remove a netCDF dimension name: +nc_get_dimension, +nc_set_dimension and +nc_del_dimension.

+

NetCDF attributes

+

Field construct properties may be written as netCDF global +attributes and/or netCDF data variable attributes. See the +file_descriptors, global_attributes and variable_attributes +parameters for details.

+

External variables

+

Metadata constructs marked as external are omitted from the file +and referred to via the netCDF external_variables global +attribute. However, omitted constructs may be written to an +external file (see the external parameter for details).

+

NetCDF unlimited dimensions

+

Domain axis constructs that correspond to NetCDF unlimited +dimensions may be accessed with the +nc_is_unlimited and +nc_set_unlimited methods of a domain axis +construct.

+

NetCDF hierarchical groups

+

Hierarchical groups in CF provide a mechanism to structure +variables within netCDF4 datasets with well defined rules for +resolving references to out-of-group netCDF variables and +dimensions. The group structure defined by a field construct’s +netCDF interface will, by default, be recreated in the output +dataset. See the group parameter for details.

+

NetCDF4 HDF chunksizes

+

HDF5 chunksizes may be set on construct’s data. See the +nc_hdf5_chunksizes, +nc_clear_hdf5_chunksizes and +nc_set_hdf5_chunksizes methods of a Data instance.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

read

+
+
+
Parameters
+
+
+
fields: (sequence of) Field or Domain

The field and domain constructs to write to the file.

+
+
filename: str

The output netCDF file name. Various type of expansion are +applied to the file names.

+

Relative paths are allowed, and standard tilde and shell +parameter expansions are applied to the string.

+
+
Parameter example:

The file file.nc in the user’s home directory could +be described by any of the following: +'$HOME/file.nc', '${HOME}/file.nc', +'~/file.nc', '~/tmp/../file.nc'.

+
+
+
+
fmt: str, optional

The format of the output file. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

fmt

Output file type

'NETCDF4'

NetCDF4 format file. This is +the default.

'NETCDF4_CLASSIC'

NetCDF4 classic format file +(see below)

'NETCDF3_CLASSIC'

NetCDF3 classic format file +(limited to file sizes less +than 2GB).

'NETCDF3_64BIT_OFFSET'

NetCDF3 64-bit offset format +file

'NETCDF3_64BIT'

An alias for +'NETCDF3_64BIT_OFFSET'

'NETCDF3_64BIT_DATA'

NetCDF3 64-bit offset format +file with extensions (see +below)

+

By default the format is 'NETCDF4'.

+

All formats support large files (i.e. those greater than +2GB) except 'NETCDF3_CLASSIC'.

+

'NETCDF3_64BIT_DATA' is a format that requires version +4.4.0 or newer of the C library (use cfdm.environment to +see which version if the netCDF-C library is in use). It +extends the 'NETCDF3_64BIT_OFFSET' binary format to +allow for unsigned 64 bit integer data types and 64-bit +dimension sizes.

+

'NETCDF4_CLASSIC' files use the version 4 disk format +(HDF5), but omits features not found in the version 3 +API. They can be read by HDF5 clients. They can also be +read by netCDF3 clients only if they have been re-linked +against the netCDF4 library.

+

'NETCDF4' files use the version 4 disk format (HDF5) +and use the new features of the version 4 API.

+
+
mode: str, optional

Specify the mode of write access for the output file. One of:

+ ++++ + + + + + + + + + + + + + + + + +

mode

Description

'w'

Open a new file for writing to. If it exists and +overwrite is True then the file is deleted +prior to being recreated.

'a'

Open an existing file for appending new +information to. The new information will be +incorporated whilst the original contents of the +file will be preserved.

+

In practice this means that new fields will be +created, whilst the original fields will not be +edited at all. Coordinates on the fields, where +equal, will be shared as standard.

+

For append mode, note the following:

+
    +
  • Global attributes on the file +will remain the same as they were originally, +so will become inaccurate where appended fields +have incompatible attributes. To rectify this, +manually inspect and edit them as appropriate +after the append operation using methods such as +nc_clear_global_attributes and +nc_set_global_attribute.

  • +
  • Fields with incompatible featureType to +the original file cannot be appended.

  • +
  • At present fields with groups cannot be +appended, but this will be possible in a future +version. Groups can however be cleared, the +fields appended, and groups re-applied, via +methods such as nc_clear_variable_groups and +nc_set_variable_groups, to achieve the same +for now.

  • +
  • At present domain ancillary constructs of +appended fields may not be handled correctly +and can appear as extra fields. Set them on the +resultant fields using set_domain_ancillary +and similar methods if required.

  • +
+

'r+'

Alias for 'a'.

+

By default the file is opened with write access mode +'w'.

+
+
overwrite: bool, optional

If False then raise an error if the output file +pre-exists. By default a pre-existing output file is +overwritten.

+
+
Conventions: (sequence of) str, optional

Specify conventions to be recorded by the netCDF global +Conventions attribute. By default the current +conventions are always included, but if an older CF +conventions is defined then this is used instead.

+
+
Parameter example:

Conventions='UGRID-1.0'

+
+
Parameter example:

Conventions=['UGRID-1.0']

+
+
Parameter example:

Conventions=['CMIP-6.2', 'UGRID-1.0']

+
+
Parameter example:

Conventions='CF-1.7'

+
+
Parameter example:

Conventions=['CF-1.7', 'UGRID-1.0']

+
+
+

Note that if the Conventions property is set on a +field construct then it is ignored.

+
+
file_descriptors: dict, optional

Create description of file contents netCDF global +attributes from the specified attributes and their +values.

+

If any field construct has a property with the same name +then it will be written as a netCDF data variable +attribute, even if it has been specified by the +global_attributes parameter, or has been flagged as +global on any of the field constructs (see +cfdm.Field.nc_global_attributes for details).

+

Identification of the conventions being adhered to by the +file are not specified as a file descriptor, but by the +Conventions parameter instead.

+
+
Parameter example:

file_attributes={'title': 'my data'}

+
+
Parameter example:

file_attributes={'history': 'created 2019-01-01', +'foo': 'bar'}

+
+
+
+
global_attributes: (sequence of) str, optional

Create netCDF global attributes from the specified field +construct properties, rather than netCDF data variable +attributes.

+

These attributes are in addition to the following field +construct properties, which are created as netCDF global +attributes by default:

+
    +
  • the description of file contents properties (as defined +by the CF conventions), and

  • +
  • properties flagged as global on any of the field +constructs being written (see +cfdm.Field.nc_global_attributes for details).

  • +
+

Note that it is not possible to create a netCDF global +attribute from a property that has different values for +different field constructs being written. In this case +the property will not be written as a netCDF global +attribute, even if it has been specified by the +global_attributes parameter or is one of the default +properties, but will appear as an attribute on the netCDF +data variable corresponding to each field construct that +contains the property.

+

Any global attributes that are also specified as file +descriptors will not be written as netCDF global +variables, but as netCDF data variable attributes +instead.

+
+
Parameter example:

global_attributes='project'

+
+
Parameter example:

global_attributes=['project']

+
+
Parameter example:

global_attributes=['project', 'experiment']

+
+
+
+
variable_attributes: (sequence of) str, optional

Create netCDF data variable attributes from the specified +field construct properties.

+

By default, all field construct properties that are not +created as netCDF global properties are created as +attributes netCDF data variables. See the +global_attributes parameter for details.

+

Any field construct property named by the +variable_attributes parameter will always be created as +a netCDF data variable attribute

+
+
Parameter example:

variable_attributes='project'

+
+
Parameter example:

variable_attributes=['project']

+
+
Parameter example:

variable_attributes=['project', 'doi']

+
+
+
+
external: str, optional

Write metadata constructs that have data and are marked as +external to the named external file. Ignored if there are +no such constructs.

+
+
datatype: dict, optional

Specify data type conversions to be applied prior to +writing data to disk. This may be useful as a means of +packing, or because the output format does not support a +particular data type (for example, netCDF3 classic files +do not support 64-bit integers). By default, input data +types are preserved. Any data type conversion is only +applied to the arrays on disk, and not to the input field +constructs themselves.

+

Data types conversions are defined by numpy.dtype +objects in a dictionary whose keys are input data types +with values of output data types.

+
+
Parameter example:

To convert 64-bit integers to 32-bit integers: +datatype={numpy.dtype('int64'): +numpy.dtype('int32')}.

+
+
+
+
endian: str, optional

The endian-ness of the output file. Valid values are +'little', 'big' or 'native'. By default the +output is native endian. See the netCDF4 package for more +details.

+
+
Parameter example:

endian='big'

+
+
+
+
compress: int, optional

Regulate the speed and efficiency of compression. Must be +an integer between 0 and 9. 0 means no +compression; 1 is the fastest, but has the lowest +compression ratio; 9 is the slowest but best +compression ratio. The default value is 0. An error is +raised if compression is requested for a netCDF3 output +file format. See the netCDF4 package for more +details.

+
+
Parameter example:

compress=4

+
+
+
+
least_significant_digit: int, optional

Truncate the input field construct data arrays, but not +the data arrays of metadata constructs. For a given +positive integer, N the precision that is retained in the +compressed data is 10 to the power -N. For example, a +value of 2 will retain a precision of 0.01. In conjunction +with the compress parameter this produces ‘lossy’, but +significantly more efficient, compression. See the +netCDF4 package for more +details.

+
+
Parameter example:

least_significant_digit=3

+
+
+
+
fletcher32: bool, optional

If True then the Fletcher-32 HDF5 checksum algorithm is +activated to detect compression errors. Ignored if +compress is 0. See the netCDF4 package for details.

+
+
shuffle: bool, optional

If True (the default) then the HDF5 shuffle filter (which +de-interlaces a block of data before compression by +reordering the bytes by storing the first byte of all of a +variable’s values in the chunk contiguously, followed by +all the second bytes, and so on) is turned off. By default +the filter is applied because if the data array values are +not all wildly different, using the filter can make the +data more easily compressible. Ignored if the compress +parameter is 0 (which is its default value). See the +netCDF4 package for more +details.

+
+
string: bool, optional

By default string-valued construct data are written as +netCDF arrays of type string if the output file format is +'NETCDF4', or of type char with an extra dimension +denoting the maximum string length for any other output +file format (see the fmt parameter). If string is False +then string-valued construct data are written as netCDF +arrays of type char with an extra dimension denoting the +maximum string length, regardless of the selected output +file format.

+
+

New in version (cfdm): 1.8.0

+
+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent string +equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the minimum +cut-off for the verboseness level of displayed output (log) +messages, regardless of the globally-configured cfdm.log_level. +Note that increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special case of +maximal and extreme verbosity.

+

Otherwise, if None (the default value), output messages will +be shown according to the value of the cfdm.log_level setting.

+

Overall, the higher a non-negative integer or equivalent string +that is set (up to a maximum of 3/'DETAIL') for +increasing verbosity, the more description that is printed to +convey how constructs map to output netCDF dimensions, variables +and attributes.

+
+
+
+
+
warn_valid: bool, optional
+

If False then do not print a warning when writing +“out-of-range” data, as indicated by the values, if +present, of any of the valid_min, valid_max or +valid_range properties on field and metadata +constructs that have data. By default a warning is printed +if any such construct has any of these properties in +combination with out-of-range data.

+

The consequence of writing out-of-range data values is +that, by default, these values will be masked when the +file is subsequently read.

+
+
Parameter example:

If a construct has valid_max property with value +100 and data with maximum value 999, then the +resulting warning may be suppressed by setting +warn_valid=False.

+
+
+
+

New in version (cfdm): 1.8.3

+
+
+
+
group: bool, optional

If False then create a “flat” netCDF file, i.e. one with +only the root group, regardless of any group structure +specified by the field constructs. By default any groups +defined by the netCDF interface of the field constructs and +its components will be created and populated.

+
+

New in version (cfdm): 1.8.6

+
+
+
coordinates: bool, optional

If True then include CF-netCDF coordinate variable names +in the ‘coordinates’ attribute of output data +variables. By default only auxiliary and scalar coordinate +variables are included.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
_implementation: (subclass of) CFDMImplementation, optional

Define the CF data model implementation that defines field +and metadata constructs and their components.

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> cfdm.write(f, 'file.nc')
+
+
+
>>> cfdm.write(f, 'file.nc', fmt='NETCDF3_CLASSIC')
+
+
+
>>> cfdm.write(f, 'file.nc', external='cell_measures.nc')
+
+
+
>>> cfdm.write(f, 'file.nc', Conventions='CMIP-6.2')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/functions.html b/docs/1.9.0.1/functions.html new file mode 100644 index 0000000000..ce7e0fcbe3 --- /dev/null +++ b/docs/1.9.0.1/functions.html @@ -0,0 +1,232 @@ + + + + + + + cfdm functions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm functions

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+
+

Reading and writing

+ ++++ + + + + + + + + +

cfdm.read

Read field or domain constructs from a dataset.

cfdm.write

Write field and domain constructs to a netCDF file.

+
+
+

Constants

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.CF

The version of the CF conventions.

cfdm.atol

The numerical equality tolerance on absolute differences.

cfdm.rtol

The numerical equality tolerance on relative differences.

cfdm.log_level

The minimal level of seriousness of log messages which are shown.

cfdm.configuration

Views and sets constants in the project-wide configuration.

cfdm.ATOL

Alias for cfdm.atol.

cfdm.RTOL

Alias for cfdm.rtol.

cfdm.LOG_LEVEL

Alias for cfdm.log_level.

+
+
+

Miscellaneous

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + +

cfdm.abspath

Return a normalised absolute version of a file name.

cfdm.environment

Return the names, versions and paths of all dependencies.

cfdm.example_field

Return an example field construct.

cfdm.example_fields

Return example field constructs.

cfdm.example_domain

Return an example domain construct.

cfdm.implementation

Return a container for the CF data model implementation.

cfdm.unique_constructs

Return the unique constructs from a sequence.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/genindex.html b/docs/1.9.0.1/genindex.html new file mode 100644 index 0000000000..053d118a44 --- /dev/null +++ b/docs/1.9.0.1/genindex.html @@ -0,0 +1,4708 @@ + + + + + + + + Index — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + +

Index

+ +
+ _ + | A + | B + | C + | D + | E + | F + | G + | H + | I + | K + | L + | M + | N + | O + | P + | Q + | R + | S + | T + | U + | V + | W + +
+

_

+ + + +
+ +

A

+ + + +
+ +

B

+ + + +
+ +

C

+ + + +
+ +

D

+ + + +
+ +

E

+ + + +
+ +

F

+ + + +
+ +

G

+ + + +
+ +

H

+ + + +
+ +

I

+ + + +
+ +

K

+ + + +
+ +

L

+ + + +
+ +

M

+ + + +
+ +

N

+ + + +
+ +

O

+ + + +
+ +

P

+ + + +
+ +

Q

+ + +
+ +

R

+ + + +
+ +

S

+ + + +
+ +

T

+ + +
+ +

U

+ + + +
+ +

V

+ + + +
+ +

W

+ + +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/index.html b/docs/1.9.0.1/index.html new file mode 100644 index 0000000000..62f9d2f79b --- /dev/null +++ b/docs/1.9.0.1/index.html @@ -0,0 +1,332 @@ + + + + + + + cfdm package — Documentation + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm package

+
+
+

Introduction

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +

The cfdm library implements the data model of the CF (Climate and +Forecast) metadata conventions (http://cfconventions.org) and so +should be able to represent and manipulate all existing and +conceivable CF-compliant datasets.

+

The CF conventions are designed to promote the creation, processing, +and sharing of climate and forecasting data using Network Common Data +Form (netCDF) files and libraries +(https://www.unidata.ucar.edu/software/netcdf). They cater for data +from model simulations as well as from observations, made in situ or +by remote sensing platforms, of the planetary surface, ocean, and +atmosphere. For a netCDF data variable, they provide a description of +the physical meaning of data and of its spatial, temporal, and other +dimensional properties. The CF data model is an abstract +interpretation of the CF conventions that is independent of the netCDF +encoding.

+

For more details see cfdm: A Python reference implementation of the +CF data model in the Journal of Open Source Software: +https://doi.org/10.21105/joss.02717

+
+
+

Functionality

+

The cfdm library can create field constructs ab initio, or read them +from netCDF files, inspect, subspace and modify in memory, and write +them to CF-netCDF dataset files. As long as it can interpret the data, +cfdm does not enforce CF-compliance, allowing non-compliant datasets +to be read, processed, corrected and rewritten.

+

It does not contain higher-level analysis functions (such as +regridding) because the expectation is that other libraries will build +on cfdm, inheriting its comprehensive knowledge of the CF conventions, +to add more sophisticated methods.

+
+
A simple example of reading a field construct from a +file and inspecting it.
+
>>> import cfdm
+>>> f = cfdm.read('file.nc')
+>>> f
+[<Field: air_temperature(time(12), latitude(64), longitude(128)) K>]
+>>> print(f[0])
+Field: air_temperature (ncvar%tas)
+----------------------------------
+Data            : air_temperature(time(12), latitude(64), longitude(128)) K
+Cell methods    : time(12): mean (interval: 1.0 month)
+Dimension coords: time(12) = [0450-11-16 00:00:00, ..., 0451-10-16 12:00:00] noleap
+                : latitude(64) = [-87.8638, ..., 87.8638] degrees_north
+                : longitude(128) = [0.0, ..., 357.1875] degrees_east
+                : height(1) = [2.0] m
+
+
+
+

The cfdm package can

+
    +
  • read field constructs and domain +constructs from netCDF and CDL datasets,

  • +
  • create new field and domain constructs in memory,

  • +
  • write field and domain constructs to netCDF datasets on disk,

  • +
  • read, write, and create coordinates defined by geometry cells,

  • +
  • read and write netCDF4 string data-type variables,

  • +
  • read, write, and create netCDF and CDL datasets containing +hierarchical groups,

  • +
  • inspect field and domain constructs,

  • +
  • test whether two constructs are the same,

  • +
  • modify field and domain construct metadata and data,

  • +
  • create subspaces of field and domain constructs,

  • +
  • incorporate, and create, metadata stored in external files, and

  • +
  • read, write, and create data that have been compressed by convention +(i.e. ragged or gathered arrays), whilst presenting a view of the +data in its uncompressed form.

  • +
+

Note that the cfdm package enables the representation and creation of +CF field constructs, but it is largely up to the user to use +them in a CF-compliant way.

+

A command line tool is provided that allows inspection of datasets +outside of a Python environment:

+
+
Inspect a dataset from the command line.
+
$ cfdump file.nc
+Field: air_temperature (ncvar%tas)
+----------------------------------
+Data            : air_temperature(time(12), latitude(64), longitude(128)) K
+Cell methods    : time(12): mean (interval: 1.0 month)
+Dimension coords: time(12) = [0450-11-16 00:00:00, ..., 0451-10-16 12:00:00] noleap
+                : latitude(64) = [-87.8638, ..., 87.8638] degrees_north
+                : longitude(128) = [0.0, ..., 357.1875] degrees_east
+                : height(1) = [2.0] m
+
+
+
+
+
+ +
+
+

Citation

+

If you use cfdm, either as a stand-alone application or to provide a +CF data model implementation to another software library, please +consider including the reference:

+
+
Hassell, D., and Bartholomew, S. L. (2020). cfdm: A Python reference

implementation of the CF data model. Journal of Open Source +Software, 5(54), 2717, https://doi.org/10.21105/joss.02717

+
+
+
@article{Hassell2020,
+  doi = {10.21105/joss.02717},
+  url = {https://doi.org/10.21105/joss.02717},
+  year = {2020},
+  publisher = {The Open Journal},
+  volume = {5},
+  number = {54},
+  pages = {2717},
+  author = {David Hassell and Sadie L. Bartholomew},
+  title = {cfdm: A Python reference implementation of the CF data model},
+  journal = {Journal of Open Source Software}
+}
+
+
+
+
+
+

References

+
+
Eaton, B., Gregory, J., Drach, B., Taylor, K., Hankin, S., Caron, J.,

Signell, R., et al. (2020). NetCDF Climate and Forecast (CF) +Metadata Conventions. CF Conventions Committee. Retrieved from +https://cfconventions.org/cf-conventions/cf-conventions.html

+
+
Hassell, D., and Bartholomew, S. L. (2020). cfdm: A Python reference

implementation of the CF data model. Journal of Open Source +Software, 5(54), 2717, https://doi.org/10.21105/joss.02717

+
+
Hassell, D., Gregory, J., Blower, J., Lawrence, B. N., and

Taylor, K. E. (2017). A data model of the Climate and Forecast +metadata conventions (CF-1.6) with a software implementation +(cf-python v2.1), Geosci. Model Dev., 10, 4619-4646, +https://doi.org/10.5194/gmd-10-4619-2017

+
+
Rew, R., and Davis, G. (1990). NetCDF: An Interface for Scientific

Data Access. IEEE Computer Graphics and Applications, 10(4), +76–82. https://doi.org/10.1109/38.56302

+
+
Rew, R., Hartnett, E., and Caron, J. (2006). NetCDF-4: Software

Implementing an Enhanced Data Model for the Geosciences. In 22nd +International Conference on Interactive Information Processing +Systems for Meteorology, Oceanography, and Hydrology. AMS. Retrieved +from +https://www.unidata.ucar.edu/software/netcdf/papers/2006-ams.pdf

+
+
+
+
+ + +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/installation.html b/docs/1.9.0.1/installation.html new file mode 100644 index 0000000000..097c2d6bee --- /dev/null +++ b/docs/1.9.0.1/installation.html @@ -0,0 +1,271 @@ + + + + + + + Installation — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Installation

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +
+

Note

+

The latest version to be released and the newest versions +available from the Python package index (PyPI) and conda are +confirmed at the top of the README document.

+
+
+

Operating systems

+

cfdm works for Linux, Mac and Windows operating systems.

+
+
+

Python versions

+

cfdm works for Python versions 3.7 or newer.

+
+
+
+

pip

+

To install cfdm and all of its dependencies run, +for example:

+
+
Install as root, with any missing dependencies.
+
$ pip install cfdm
+
+
+
+
+
Install as a user, with any missing dependencies.
+
$ pip install cfdm --user
+
+
+
+

To install cfdm without any of its dependencies then run, for example:

+
+
Install as root without installing any of the +dependencies.
+
$ pip install cfdm --no-deps
+
+
+
+

See the documentation for pip install for further +options.

+
+
+
+

Source

+

To install from source:

+
    +
  1. Download the cfdm package from https://pypi.org/project/cfdm

  2. +
  3. Unpack the library (replacing <version> with the version that +you want to install, e.g. 1.9.0.0):

    +
    $ tar zxvf cfdm-<version>.tar.gz
    +$ cd cfdm-<version>
    +
    +
    +
  4. +
  5. Install the package:

  6. +
+
+
    +
  • To install the cfdm package to a central location:

    +
    $ python setup.py install
    +
    +
    +
  • +
  • To install the cfdm package locally to the user in the default +location:

    +
    $ python setup.py install --user
    +
    +
    +
  • +
  • To install the cfdm package in the <directory> of your choice:

    +
    $ python setup.py install --home=<directory>
    +
    +
    +
  • +
+
+
+
+
+

cfdump utility

+

During installation the cfdump command line utility is +also installed, which generates text descriptions of the field +constructs contained in a netCDF dataset.

+
+
+
+

Tests

+

Tests are run from within the cfdm/test directory:

+
$ python run_tests.py
+
+
+
+
+
+

Dependencies

+

The cfdm package requires:

+ +
+
+
+

Code repository

+

The source code is available at https://github.com/NCAS-CMS/cfdm

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/introduction.html b/docs/1.9.0.1/introduction.html new file mode 100644 index 0000000000..71c6aaf4b7 --- /dev/null +++ b/docs/1.9.0.1/introduction.html @@ -0,0 +1,303 @@ + + + + + + + Introduction — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Introduction

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +

The cfdm library implements the data model of the CF (Climate and +Forecast) metadata conventions (http://cfconventions.org) and so +should be able to represent and manipulate all existing and +conceivable CF-compliant datasets.

+

The CF conventions are designed to promote the creation, processing, +and sharing of climate and forecasting data using Network Common Data +Form (netCDF) files and libraries +(https://www.unidata.ucar.edu/software/netcdf). They cater for data +from model simulations as well as from observations, made in situ or +by remote sensing platforms, of the planetary surface, ocean, and +atmosphere. For a netCDF data variable, they provide a description of +the physical meaning of data and of its spatial, temporal, and other +dimensional properties. The CF data model is an abstract +interpretation of the CF conventions that is independent of the netCDF +encoding.

+

For more details see cfdm: A Python reference implementation of the +CF data model in the Journal of Open Source Software: +https://doi.org/10.21105/joss.02717

+
+
+

Functionality

+

The cfdm library can create field constructs ab initio, or read them +from netCDF files, inspect, subspace and modify in memory, and write +them to CF-netCDF dataset files. As long as it can interpret the data, +cfdm does not enforce CF-compliance, allowing non-compliant datasets +to be read, processed, corrected and rewritten.

+

It does not contain higher-level analysis functions (such as +regridding) because the expectation is that other libraries will build +on cfdm, inheriting its comprehensive knowledge of the CF conventions, +to add more sophisticated methods.

+
+
A simple example of reading a field construct from a +file and inspecting it.
+
>>> import cfdm
+>>> f = cfdm.read('file.nc')
+>>> f
+[<Field: air_temperature(time(12), latitude(64), longitude(128)) K>]
+>>> print(f[0])
+Field: air_temperature (ncvar%tas)
+----------------------------------
+Data            : air_temperature(time(12), latitude(64), longitude(128)) K
+Cell methods    : time(12): mean (interval: 1.0 month)
+Dimension coords: time(12) = [0450-11-16 00:00:00, ..., 0451-10-16 12:00:00] noleap
+                : latitude(64) = [-87.8638, ..., 87.8638] degrees_north
+                : longitude(128) = [0.0, ..., 357.1875] degrees_east
+                : height(1) = [2.0] m
+
+
+
+

The cfdm package can

+
    +
  • read field constructs and domain +constructs from netCDF and CDL datasets,

  • +
  • create new field and domain constructs in memory,

  • +
  • write field and domain constructs to netCDF datasets on disk,

  • +
  • read, write, and create coordinates defined by geometry cells,

  • +
  • read and write netCDF4 string data-type variables,

  • +
  • read, write, and create netCDF and CDL datasets containing +hierarchical groups,

  • +
  • inspect field and domain constructs,

  • +
  • test whether two constructs are the same,

  • +
  • modify field and domain construct metadata and data,

  • +
  • create subspaces of field and domain constructs,

  • +
  • incorporate, and create, metadata stored in external files, and

  • +
  • read, write, and create data that have been compressed by convention +(i.e. ragged or gathered arrays), whilst presenting a view of the +data in its uncompressed form.

  • +
+

Note that the cfdm package enables the representation and creation of +CF field constructs, but it is largely up to the user to use +them in a CF-compliant way.

+

A command line tool is provided that allows inspection of datasets +outside of a Python environment:

+
+
Inspect a dataset from the command line.
+
$ cfdump file.nc
+Field: air_temperature (ncvar%tas)
+----------------------------------
+Data            : air_temperature(time(12), latitude(64), longitude(128)) K
+Cell methods    : time(12): mean (interval: 1.0 month)
+Dimension coords: time(12) = [0450-11-16 00:00:00, ..., 0451-10-16 12:00:00] noleap
+                : latitude(64) = [-87.8638, ..., 87.8638] degrees_north
+                : longitude(128) = [0.0, ..., 357.1875] degrees_east
+                : height(1) = [2.0] m
+
+
+
+
+
+ +
+
+

Citation

+

If you use cfdm, either as a stand-alone application or to provide a +CF data model implementation to another software library, please +consider including the reference:

+
+
Hassell, D., and Bartholomew, S. L. (2020). cfdm: A Python reference

implementation of the CF data model. Journal of Open Source +Software, 5(54), 2717, https://doi.org/10.21105/joss.02717

+
+
+
@article{Hassell2020,
+  doi = {10.21105/joss.02717},
+  url = {https://doi.org/10.21105/joss.02717},
+  year = {2020},
+  publisher = {The Open Journal},
+  volume = {5},
+  number = {54},
+  pages = {2717},
+  author = {David Hassell and Sadie L. Bartholomew},
+  title = {cfdm: A Python reference implementation of the CF data model},
+  journal = {Journal of Open Source Software}
+}
+
+
+
+
+
+

References

+
+
Eaton, B., Gregory, J., Drach, B., Taylor, K., Hankin, S., Caron, J.,

Signell, R., et al. (2020). NetCDF Climate and Forecast (CF) +Metadata Conventions. CF Conventions Committee. Retrieved from +https://cfconventions.org/cf-conventions/cf-conventions.html

+
+
Hassell, D., and Bartholomew, S. L. (2020). cfdm: A Python reference

implementation of the CF data model. Journal of Open Source +Software, 5(54), 2717, https://doi.org/10.21105/joss.02717

+
+
Hassell, D., Gregory, J., Blower, J., Lawrence, B. N., and

Taylor, K. E. (2017). A data model of the Climate and Forecast +metadata conventions (CF-1.6) with a software implementation +(cf-python v2.1), Geosci. Model Dev., 10, 4619-4646, +https://doi.org/10.5194/gmd-10-4619-2017

+
+
Rew, R., and Davis, G. (1990). NetCDF: An Interface for Scientific

Data Access. IEEE Computer Graphics and Applications, 10(4), +76–82. https://doi.org/10.1109/38.56302

+
+
Rew, R., Hartnett, E., and Caron, J. (2006). NetCDF-4: Software

Implementing an Enhanced Data Model for the Geosciences. In 22nd +International Conference on Interactive Information Processing +Systems for Meteorology, Oceanography, and Hydrology. AMS. Retrieved +from +https://www.unidata.ucar.edu/software/netcdf/papers/2006-ams.pdf

+
+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.__array__.html b/docs/1.9.0.1/method/cfdm.Array.__array__.html new file mode 100644 index 0000000000..f491f8df4c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.Array.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.__array__

+
+
+Array.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Array.__deepcopy__.html new file mode 100644 index 0000000000..5c7c84a2d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.Array.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.__deepcopy__

+
+
+Array.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.__getitem__.html b/docs/1.9.0.1/method/cfdm.Array.__getitem__.html new file mode 100644 index 0000000000..343f8e7c4f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.__getitem__.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Array.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.__getitem__

+
+
+Array.__getitem__(indices)[source]
+

Return a subspace as an independent numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
+
    +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.__repr__.html b/docs/1.9.0.1/method/cfdm.Array.__repr__.html new file mode 100644 index 0000000000..36d06e3bd9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Array.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.__repr__

+
+
+Array.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.__str__.html b/docs/1.9.0.1/method/cfdm.Array.__str__.html new file mode 100644 index 0000000000..f11d5c5a3e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Array.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.__str__

+
+
+Array.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Array._docstring_method_exclusions.html new file mode 100644 index 0000000000..2c6e1fca1d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Array._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array._docstring_method_exclusions

+
+
+Array._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Array._docstring_package_depth.html new file mode 100644 index 0000000000..0b18bd98c6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Array._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array._docstring_package_depth

+
+
+Array._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Array._docstring_special_substitutions.html new file mode 100644 index 0000000000..5087cf81a1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Array._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array._docstring_special_substitutions

+
+
+classmethod Array._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Array._docstring_substitutions.html new file mode 100644 index 0000000000..b155c95923 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Array._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array._docstring_substitutions

+
+
+Array._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.copy.html b/docs/1.9.0.1/method/cfdm.Array.copy.html new file mode 100644 index 0000000000..1235c70c27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.Array.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.copy

+
+
+Array.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Array

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.get_compression_type.html b/docs/1.9.0.1/method/cfdm.Array.get_compression_type.html new file mode 100644 index 0000000000..75ada67c88 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Array.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.get_compression_type

+
+
+Array.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Array.get_subspace.html b/docs/1.9.0.1/method/cfdm.Array.get_subspace.html new file mode 100644 index 0000000000..1b0826d367 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Array.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Array.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Array.get_subspace

+
+
+classmethod Array.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__deepcopy__.html new file mode 100644 index 0000000000..8a70dbc5ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.AuxiliaryCoordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.__deepcopy__

+
+
+AuxiliaryCoordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.AuxiliaryCoordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__getitem__.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__getitem__.html new file mode 100644 index 0000000000..23fed5b286 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__getitem__.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.__getitem__

+
+
+AuxiliaryCoordinate.__getitem__(indices)[source]
+

Return a subspace of the construct defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

The new subspace contains the same properties and similar +components to the original construct, but the latter are also +subspaced over their corresponding axes.

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran). This is +the same behaviour as indexing on a Variable object of the +netCDF4 package.

  • +
+
+
Returns
+
+
AuxiliaryCoordinate

The subspace of the construct.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__repr__.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__repr__.html new file mode 100644 index 0000000000..d0415ae900 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.AuxiliaryCoordinate.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.__repr__

+
+
+AuxiliaryCoordinate.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__str__.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__str__.html new file mode 100644 index 0000000000..a088b93419 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.AuxiliaryCoordinate.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.__str__

+
+
+AuxiliaryCoordinate.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions.html new file mode 100644 index 0000000000..f7ad8e941c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate._docstring_method_exclusions

+
+
+AuxiliaryCoordinate._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_package_depth.html new file mode 100644 index 0000000000..37d001d068 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.AuxiliaryCoordinate._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate._docstring_package_depth

+
+
+AuxiliaryCoordinate._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions.html new file mode 100644 index 0000000000..5c5c895864 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.AuxiliaryCoordinate._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate._docstring_special_substitutions

+
+
+classmethod AuxiliaryCoordinate._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_substitutions.html new file mode 100644 index 0000000000..4fd68ec6ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.AuxiliaryCoordinate._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate._docstring_substitutions

+
+
+AuxiliaryCoordinate._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.apply_masking.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.apply_masking.html new file mode 100644 index 0000000000..beb1910c56 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.apply_masking.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.AuxiliaryCoordinate.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.apply_masking

+
+
+AuxiliaryCoordinate.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria +that are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the +_FillValue property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of +the valid_max property;

  • +
  • where data elements are within the inclusive range specified +by the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no +masking is applied for that method.

+

The cell bounds, if any, are also masked according to the same +criteria as the parent construct. If, however, any of the +relevant properties are explicitly set on the bounds instance +then their values will be used in preference to those of the +parent construct.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate or None

A new instance with masked values, or None if the +operation was in-place.

+
+
+
+
+

Examples:

+
>>> print(c.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_c = c.apply_masking()
+>>> print(masked_c.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.clear_properties.html new file mode 100644 index 0000000000..b030550760 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.clear_properties

+
+
+AuxiliaryCoordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.copy.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.copy.html new file mode 100644 index 0000000000..b7354bb9a1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.AuxiliaryCoordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.copy

+
+
+AuxiliaryCoordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.creation_commands.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.creation_commands.html new file mode 100644 index 0000000000..9bfce7fdaa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.creation_commands.html @@ -0,0 +1,259 @@ + + + + + + + cfdm.AuxiliaryCoordinate.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.creation_commands

+
+
+AuxiliaryCoordinate.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', bounds_name='b', interior_ring_name='i', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the AuxiliaryCoordinate instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
bounds_name: str, optional

The name of the construct’s Bounds instance created +by the returned commands.

+
+
Parameter example:

name='bounds1'

+
+
+
+
interior_ring_name: str, optional

The name of the construct’s InteriorRing instance +created by the returned commands.

+
+
Parameter example:

name='ir1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.AuxiliaryCoordinate(
+...     properties={'units': 'degrees_east',
+...                 'standard_name': 'longitude'}
+... )
+>>> x.set_data([22.5, 67.5, 112.5])
+>>> b = cfdm.Bounds()
+>>> b.set_data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]])
+>>> x.set_bounds(b)
+>>> print(x.creation_commands(header=False))
+c = cfdm.AuxiliaryCoordinate()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+data = cfdm.Data([22.5, 67.5, 112.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_bounds.html new file mode 100644 index 0000000000..c43c161fe1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_bounds

+
+
+AuxiliaryCoordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_climatology.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_climatology.html new file mode 100644 index 0000000000..529f9839d5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_climatology.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_climatology

+
+
+AuxiliaryCoordinate.del_climatology(default=ValueError())[source]
+

Remove the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed climatology value.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_data.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_data.html new file mode 100644 index 0000000000..67e7f50dd2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_data

+
+
+AuxiliaryCoordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_geometry.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_geometry.html new file mode 100644 index 0000000000..b2f1b16ece --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_geometry

+
+
+AuxiliaryCoordinate.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_interior_ring.html new file mode 100644 index 0000000000..9eadf136d5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_interior_ring

+
+
+AuxiliaryCoordinate.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_node_count.html new file mode 100644 index 0000000000..99ab0127b0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_node_count

+
+
+AuxiliaryCoordinate.del_node_count(default=ValueError())[source]
+

Remove the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The removed node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_part_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_part_node_count.html new file mode 100644 index 0000000000..b6e62fd6a7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_part_node_count

+
+
+AuxiliaryCoordinate.del_part_node_count(default=ValueError())[source]
+

Remove the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The removed part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_property.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_property.html new file mode 100644 index 0000000000..2c651c2be1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.AuxiliaryCoordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.del_property

+
+
+AuxiliaryCoordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.dump.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.dump.html new file mode 100644 index 0000000000..4ae234791f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.AuxiliaryCoordinate.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.dump

+
+
+AuxiliaryCoordinate.dump(display=True, _omit_properties=None, _key=None, _level=0, _title=None, _axes=None, _axis_names=None)[source]
+

A full description of the auxiliary coordinate construct.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.equals.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.equals.html new file mode 100644 index 0000000000..9e364add14 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.equals.html @@ -0,0 +1,270 @@ + + + + + + + cfdm.AuxiliaryCoordinate.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.equals

+
+
+AuxiliaryCoordinate.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+
    +
  • if there are bounds then their descriptive properties (if +any) must be the same and their data arrays must have same +shape and data type, the same missing data mask, and be +element-wise equal (see the ignore_properties and +ignore_data_type parameters).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another AuxiliaryCoordinate +instance, or a subclass of one. If ignore_type is +True then cfdm.AuxiliaryCoordinate(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> p.equals(p)
+True
+>>> p.equals(p.copy())
+True
+>>> p.equals('not a colection of properties')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds.html new file mode 100644 index 0000000000..3767cba05b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_bounds

+
+
+AuxiliaryCoordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> b = cfdm.Bounds(data=cfdm.Data(range(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds_data.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds_data.html new file mode 100644 index 0000000000..8324c26964 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_bounds_data.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_bounds_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_bounds_data

+
+
+AuxiliaryCoordinate.get_bounds_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the bounds data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

bounds, get_bounds, get_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there are +no bounds data.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The bounds data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> x = f.construct('latitude')
+>>> x.get_bounds_data()
+<Data(5, 2): [[-90.0, ..., 90.0]] degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_climatology.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_climatology.html new file mode 100644 index 0000000000..f4c4b05f2b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_climatology.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_climatology

+
+
+AuxiliaryCoordinate.get_climatology(default=ValueError())[source]
+

Return the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

str

+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_data.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_data.html new file mode 100644 index 0000000000..990c3163a1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_data

+
+
+AuxiliaryCoordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_filenames.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_filenames.html new file mode 100644 index 0000000000..203dc3d191 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_filenames.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_filenames

+
+
+AuxiliaryCoordinate.get_filenames()[source]
+

Return the name of the file or files containing the data.

+

The names of the file or files containing the bounds data are also +returned.

+
+
Returns
+
+
set

The file names in normalised, absolute form. If all of +the data are in memory then an empty set is +returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_geometry.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_geometry.html new file mode 100644 index 0000000000..b0cb10918e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_geometry

+
+
+AuxiliaryCoordinate.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_interior_ring.html new file mode 100644 index 0000000000..c56d64cd6a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_interior_ring

+
+
+AuxiliaryCoordinate.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_node_count.html new file mode 100644 index 0000000000..c5514cf6d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_node_count.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_node_count

+
+
+AuxiliaryCoordinate.get_node_count(default=ValueError())[source]
+

Return the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if a node +count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_part_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_part_node_count.html new file mode 100644 index 0000000000..95650842b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_part_node_count

+
+
+AuxiliaryCoordinate.get_part_node_count(default=ValueError())[source]
+

Return the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_property.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_property.html new file mode 100644 index 0000000000..662395170a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.AuxiliaryCoordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.get_property

+
+
+AuxiliaryCoordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_bounds.html new file mode 100644 index 0000000000..de6776b47b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_bounds

+
+
+AuxiliaryCoordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_data.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_data.html new file mode 100644 index 0000000000..c98ea10217 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_data

+
+
+AuxiliaryCoordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_geometry.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_geometry.html new file mode 100644 index 0000000000..14d69bf9b1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_geometry

+
+
+AuxiliaryCoordinate.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_interior_ring.html new file mode 100644 index 0000000000..64b1d3c811 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_interior_ring

+
+
+AuxiliaryCoordinate.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_node_count.html new file mode 100644 index 0000000000..0f09f41d3e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_node_count.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_node_count

+
+
+AuxiliaryCoordinate.has_node_count()[source]
+

Whether geometry bounds have a node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a node count variable, otherwise False.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_part_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_part_node_count.html new file mode 100644 index 0000000000..dd53e08f32 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_part_node_count.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_part_node_count

+
+
+AuxiliaryCoordinate.has_part_node_count()[source]
+

Whether geometry bounds have a part node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a part node count variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_property.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_property.html new file mode 100644 index 0000000000..7f7d00f284 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.has_property

+
+
+AuxiliaryCoordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identities.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identities.html new file mode 100644 index 0000000000..71e3408475 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identities.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.AuxiliaryCoordinate.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.identities

+
+
+AuxiliaryCoordinate.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and a colon, +e.g. 'long_name:Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The identities of the bounds, if any.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identities()
+['axis=Z', 'units=m', 'ncvar%z']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+axis=Z
+units=m
+ncvar%z
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identity.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identity.html new file mode 100644 index 0000000000..f8693f9bf4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.identity.html @@ -0,0 +1,222 @@ + + + + + + + cfdm.AuxiliaryCoordinate.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.identity

+
+
+AuxiliaryCoordinate.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  1. The standard_name property.

  2. +
  3. The cf_role property, preceded by 'cf_role='.

  4. +
  5. The axis property, preceded by 'axis='.

  6. +
  7. The long_name property, preceded by 'long_name='.

  8. +
  9. The netCDF variable name, preceded by 'ncvar%'.

  10. +
  11. The identity of the bounds, if any.

  12. +
  13. The value of the default parameter.

  14. +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identity()
+'axis=Z'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.insert_dimension.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.insert_dimension.html new file mode 100644 index 0000000000..394c1410fb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.insert_dimension.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.AuxiliaryCoordinate.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.insert_dimension

+
+
+AuxiliaryCoordinate.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array. A corresponding +axis is also inserted into the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate or None

The new construct with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(96, 73, 19, 1)
+>>> g = f.insert_dimension(position=-1)
+>>> g.shape
+(19, 73, 1, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(19, 73, 1, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.is_climatology.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.is_climatology.html new file mode 100644 index 0000000000..2cfec6b330 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.is_climatology.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.AuxiliaryCoordinate.is_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.is_climatology

+
+
+AuxiliaryCoordinate.is_climatology()[source]
+

True if the coordinates are climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Returns
+
+
bool

Whether or not the coordinates are climatological.

+
+
+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups.html new file mode 100644 index 0000000000..f91c01d1f5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_clear_variable_groups

+
+
+AuxiliaryCoordinate.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_del_variable.html new file mode 100644 index 0000000000..0b7419ec34 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_del_variable

+
+
+AuxiliaryCoordinate.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_get_variable.html new file mode 100644 index 0000000000..0c42565aa8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_get_variable

+
+
+AuxiliaryCoordinate.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_has_variable.html new file mode 100644 index 0000000000..b2d839674e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_has_variable

+
+
+AuxiliaryCoordinate.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable.html new file mode 100644 index 0000000000..14fb2b3c5a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_set_variable

+
+
+AuxiliaryCoordinate.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups.html new file mode 100644 index 0000000000..2047458e48 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_set_variable_groups

+
+
+AuxiliaryCoordinate.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_variable_groups.html new file mode 100644 index 0000000000..e77475a044 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.AuxiliaryCoordinate.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.nc_variable_groups

+
+
+AuxiliaryCoordinate.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.properties.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.properties.html new file mode 100644 index 0000000000..ef76830640 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.AuxiliaryCoordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.properties

+
+
+AuxiliaryCoordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_bounds.html new file mode 100644 index 0000000000..90ecf85cfe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_bounds

+
+
+AuxiliaryCoordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_climatology.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_climatology.html new file mode 100644 index 0000000000..19b29d4e9e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_climatology.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_climatology

+
+
+AuxiliaryCoordinate.set_climatology(climatology)[source]
+

Set whether or not coordinates are climatological.

+

Only coordinate constructs with units of reference time (or unset +units) can be set as climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
climatology: bool

Whether or not the coordinates are climatological.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_data.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_data.html new file mode 100644 index 0000000000..3822762a31 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_data

+
+
+AuxiliaryCoordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified AuxiliaryCoordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or AuxiliaryCoordinate

If the operation was in-place then None is returned, +otherwise return a new AuxiliaryCoordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_geometry.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_geometry.html new file mode 100644 index 0000000000..a7297a48f7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_geometry

+
+
+AuxiliaryCoordinate.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_interior_ring.html new file mode 100644 index 0000000000..acff7e3bcc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_interior_ring

+
+
+AuxiliaryCoordinate.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.AuxiliaryCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_node_count.html new file mode 100644 index 0000000000..2889179f51 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_node_count.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_node_count

+
+
+AuxiliaryCoordinate.set_node_count(node_count, copy=True)[source]
+

Set the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
node_count: NodeCount

The node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_part_node_count.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_part_node_count.html new file mode 100644 index 0000000000..f85a8a44c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_part_node_count.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_part_node_count

+
+
+AuxiliaryCoordinate.set_part_node_count(part_node_count, copy=True)[source]
+

Set the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
part_node_count: PartNodeCount

The part node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the part node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name':
+...                                           'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_properties.html new file mode 100644 index 0000000000..00c5d0dd63 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_properties

+
+
+AuxiliaryCoordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_property.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_property.html new file mode 100644 index 0000000000..7b13cff853 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.AuxiliaryCoordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.set_property

+
+
+AuxiliaryCoordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.squeeze.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.squeeze.html new file mode 100644 index 0000000000..a227f740d6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.squeeze.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.AuxiliaryCoordinate.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.squeeze

+
+
+AuxiliaryCoordinate.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal. Corresponding axes are +also removed from the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate or None

The new construct with removed data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> g = f.squeeze([-3, 2])
+>>> g.shape
+(73, 96)
+>>> f.bounds.shape
+(1, 73, 1, 96, 4)
+>>> g.shape
+(73, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.transpose.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.transpose.html new file mode 100644 index 0000000000..6476264d14 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.transpose.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.AuxiliaryCoordinate.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.transpose

+
+
+AuxiliaryCoordinate.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+

Corresponding axes of the bounds data array, if present, are +also permuted.

+

Note that if i) the data array is two-dimensional, ii) the two +axes have been permuted, and iii) each cell has four bounds +values; then columns 1 and 3 (counting from 0) of the bounds +axis are swapped to preserve contiguity bounds in adjacent +cells. See section 7.1 “Cell Boundaries” of the CF conventions +for details.

+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate or None

The new construct with permuted data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> g = f.transpose([1, 0, 2])
+>>> g.shape
+(73, 19, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(73, 19, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.uncompress.html b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.uncompress.html new file mode 100644 index 0000000000..5a58452272 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.AuxiliaryCoordinate.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.AuxiliaryCoordinate.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.AuxiliaryCoordinate.uncompress

+
+
+AuxiliaryCoordinate.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +unchanged.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Bounds.__deepcopy__.html new file mode 100644 index 0000000000..1bb1d6928c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Bounds.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.__deepcopy__

+
+
+Bounds.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Bounds()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.__getitem__.html b/docs/1.9.0.1/method/cfdm.Bounds.__getitem__.html new file mode 100644 index 0000000000..722c0729be --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Bounds.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.__getitem__

+
+
+Bounds.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.__repr__.html b/docs/1.9.0.1/method/cfdm.Bounds.__repr__.html new file mode 100644 index 0000000000..09fcb9d361 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Bounds.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.__repr__

+
+
+Bounds.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.__str__.html b/docs/1.9.0.1/method/cfdm.Bounds.__str__.html new file mode 100644 index 0000000000..56ac07bab0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Bounds.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.__str__

+
+
+Bounds.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Bounds._docstring_method_exclusions.html new file mode 100644 index 0000000000..39e5344893 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds._docstring_method_exclusions

+
+
+Bounds._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Bounds._docstring_package_depth.html new file mode 100644 index 0000000000..c22d8602ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Bounds._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds._docstring_package_depth

+
+
+Bounds._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Bounds._docstring_special_substitutions.html new file mode 100644 index 0000000000..7920357e11 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Bounds._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds._docstring_special_substitutions

+
+
+classmethod Bounds._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Bounds._docstring_substitutions.html new file mode 100644 index 0000000000..62acce8c62 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Bounds._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds._docstring_substitutions

+
+
+Bounds._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.apply_masking.html b/docs/1.9.0.1/method/cfdm.Bounds.apply_masking.html new file mode 100644 index 0000000000..99610ff838 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.Bounds.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.apply_masking

+
+
+Bounds.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.clear_properties.html b/docs/1.9.0.1/method/cfdm.Bounds.clear_properties.html new file mode 100644 index 0000000000..6a739cca57 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.clear_properties

+
+
+Bounds.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.copy.html b/docs/1.9.0.1/method/cfdm.Bounds.copy.html new file mode 100644 index 0000000000..930f43d631 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Bounds.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.copy

+
+
+Bounds.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Bounds

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.creation_commands.html b/docs/1.9.0.1/method/cfdm.Bounds.creation_commands.html new file mode 100644 index 0000000000..35e6ddba71 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.Bounds.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.creation_commands

+
+
+Bounds.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the Bounds instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.Bounds(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.Bounds()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.del_data.html b/docs/1.9.0.1/method/cfdm.Bounds.del_data.html new file mode 100644 index 0000000000..be098bda9e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Bounds.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.del_data

+
+
+Bounds.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.del_property.html b/docs/1.9.0.1/method/cfdm.Bounds.del_property.html new file mode 100644 index 0000000000..8767a595e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Bounds.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.del_property

+
+
+Bounds.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.dump.html b/docs/1.9.0.1/method/cfdm.Bounds.dump.html new file mode 100644 index 0000000000..d89b898886 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.Bounds.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.dump

+
+
+Bounds.dump(display=True, _key=None, _title=None, _create_title=True, _prefix='', _level=0, _omit_properties=None, _axes=None, _axis_names=None)[source]
+

A full description of the bounds component.

+

Returns a description of all properties and provides selected +values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.equals.html b/docs/1.9.0.1/method/cfdm.Bounds.equals.html new file mode 100644 index 0000000000..4cc1646d65 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.Bounds.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.equals

+
+
+Bounds.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Bounds +instance, or a subclass of one. If ignore_type is +True then cfdm.Bounds(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.get_data.html b/docs/1.9.0.1/method/cfdm.Bounds.get_data.html new file mode 100644 index 0000000000..1a54279856 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.get_data.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Bounds.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.get_data

+
+
+Bounds.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that the data are returned in a Data object. Use the +array attribute of the Data instance to return the data as an +independent numpy array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field(
+...     properties={'standard_name': 'surface_altitude'})
+>>> d = cfdm.Data(range(10))
+>>> f.set_data(d)
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(10): [0, ..., 9]>
+
+
+
>>> f.del_data()
+<Data(10): [0, ..., 9]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.get_filenames.html b/docs/1.9.0.1/method/cfdm.Bounds.get_filenames.html new file mode 100644 index 0000000000..cf3f8346d0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.Bounds.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.get_filenames

+
+
+Bounds.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.get_property.html b/docs/1.9.0.1/method/cfdm.Bounds.get_property.html new file mode 100644 index 0000000000..19a6da1547 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Bounds.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.get_property

+
+
+Bounds.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.has_bounds.html b/docs/1.9.0.1/method/cfdm.Bounds.has_bounds.html new file mode 100644 index 0000000000..60e7d94257 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Bounds.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.has_bounds

+
+
+Bounds.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.has_data.html b/docs/1.9.0.1/method/cfdm.Bounds.has_data.html new file mode 100644 index 0000000000..cbd3ecde8d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Bounds.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.has_data

+
+
+Bounds.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.has_property.html b/docs/1.9.0.1/method/cfdm.Bounds.has_property.html new file mode 100644 index 0000000000..2331868172 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Bounds.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.has_property

+
+
+Bounds.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.identities.html b/docs/1.9.0.1/method/cfdm.Bounds.identities.html new file mode 100644 index 0000000000..9ac01c2626 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Bounds.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.identities

+
+
+Bounds.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.identity.html b/docs/1.9.0.1/method/cfdm.Bounds.identity.html new file mode 100644 index 0000000000..b182ec278e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.identity.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Bounds.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.identity

+
+
+Bounds.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  1. The standard_name property.

  2. +
  3. The cf_role property, preceded by 'cf_role='.

  4. +
  5. The long_name property, preceded by 'long_name='.

  6. +
  7. The netCDF variable name, preceded by 'ncvar%'.

  8. +
  9. The value of the default parameter.

  10. +
+

Properties include any inherited properties.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.example_field(6)
+>>> d = f.constructs('longitude').value()
+>>> b = d.bounds
+>>> b
+<Bounds: longitude(2, 3, 4) degrees_east>
+>>> b.identity()
+'longitude'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.inherited_properties.html b/docs/1.9.0.1/method/cfdm.Bounds.inherited_properties.html new file mode 100644 index 0000000000..39438661e2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.inherited_properties.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Bounds.inherited_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.inherited_properties

+
+
+Bounds.inherited_properties()[source]
+

Return the properties inherited from a coordinate construct.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

properties

+
+
+
Returns
+
+
dict

The inherited properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(6)
+>>> d = f.constructs('longitude').value()
+>>> b = d.bounds
+>>> b
+<Bounds: longitude(2, 3, 4) degrees_east>
+
+
+
>>> b.inherited_properties()
+{'units': 'degrees_east', 'standard_name': 'longitude'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.insert_dimension.html b/docs/1.9.0.1/method/cfdm.Bounds.insert_dimension.html new file mode 100644 index 0000000000..2744bfd90b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.Bounds.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.insert_dimension

+
+
+Bounds.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Bounds or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_dimension_groups.html new file mode 100644 index 0000000000..56aeca2e51 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Bounds.nc_clear_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_clear_dimension_groups

+
+
+Bounds.nc_clear_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF dimension name, with nc_set_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_variable_groups.html new file mode 100644 index 0000000000..4ea8159cd0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Bounds.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_clear_variable_groups

+
+
+Bounds.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_del_dimension.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_del_dimension.html new file mode 100644 index 0000000000..a9eb5e2ddc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_del_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.nc_del_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_del_dimension

+
+
+Bounds.nc_del_dimension(default=ValueError())[source]
+

Remove the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_del_variable.html new file mode 100644 index 0000000000..17893e5cff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_del_variable

+
+
+Bounds.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_dimension_groups.html new file mode 100644 index 0000000000..09904f2ed9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Bounds.nc_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_dimension_groups

+
+
+Bounds.nc_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_get_dimension.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_get_dimension.html new file mode 100644 index 0000000000..325f650e65 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_get_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.nc_get_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_get_dimension

+
+
+Bounds.nc_get_dimension(default=ValueError())[source]
+

Return the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_get_variable.html new file mode 100644 index 0000000000..86ef8b3214 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Bounds.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_get_variable

+
+
+Bounds.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_has_dimension.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_has_dimension.html new file mode 100644 index 0000000000..77c47a1d70 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_has_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Bounds.nc_has_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_has_dimension

+
+
+Bounds.nc_has_dimension()[source]
+

Whether the netCDF dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_has_variable.html new file mode 100644 index 0000000000..80a7888457 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Bounds.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_has_variable

+
+
+Bounds.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension.html new file mode 100644 index 0000000000..496a20fb8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.nc_set_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_set_dimension

+
+
+Bounds.nc_set_dimension(value)[source]
+

Set the netCDF dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension_groups.html new file mode 100644 index 0000000000..53c638b685 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Bounds.nc_set_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_set_dimension_groups

+
+
+Bounds.nc_set_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF dimension name, with nc_set_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable.html new file mode 100644 index 0000000000..5a4637760f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_set_variable

+
+
+Bounds.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable_groups.html new file mode 100644 index 0000000000..ff6d71224c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Bounds.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_set_variable_groups

+
+
+Bounds.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Bounds.nc_variable_groups.html new file mode 100644 index 0000000000..b674789464 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Bounds.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.nc_variable_groups

+
+
+Bounds.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.properties.html b/docs/1.9.0.1/method/cfdm.Bounds.properties.html new file mode 100644 index 0000000000..d22a4c7c50 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Bounds.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.properties

+
+
+Bounds.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.set_data.html b/docs/1.9.0.1/method/cfdm.Bounds.set_data.html new file mode 100644 index 0000000000..f6b52dc45a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.Bounds.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.set_data

+
+
+Bounds.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Bounds instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Bounds

If the operation was in-place then None is returned, +otherwise return a new Bounds instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.set_properties.html b/docs/1.9.0.1/method/cfdm.Bounds.set_properties.html new file mode 100644 index 0000000000..1bdb18c211 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Bounds.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.set_properties

+
+
+Bounds.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.set_property.html b/docs/1.9.0.1/method/cfdm.Bounds.set_property.html new file mode 100644 index 0000000000..5c90b667ec --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Bounds.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.set_property

+
+
+Bounds.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.squeeze.html b/docs/1.9.0.1/method/cfdm.Bounds.squeeze.html new file mode 100644 index 0000000000..bceed60b57 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Bounds.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.squeeze

+
+
+Bounds.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Bounds or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Bounds()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.transpose.html b/docs/1.9.0.1/method/cfdm.Bounds.transpose.html new file mode 100644 index 0000000000..d490880278 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Bounds.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.transpose

+
+
+Bounds.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Bounds or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Bounds.uncompress.html b/docs/1.9.0.1/method/cfdm.Bounds.uncompress.html new file mode 100644 index 0000000000..92747d881a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Bounds.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Bounds.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Bounds.uncompress

+
+
+Bounds.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Bounds or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.CellMeasure.__deepcopy__.html new file mode 100644 index 0000000000..1701ec7d16 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.CellMeasure.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.__deepcopy__

+
+
+CellMeasure.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.CellMeasure()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.__getitem__.html b/docs/1.9.0.1/method/cfdm.CellMeasure.__getitem__.html new file mode 100644 index 0000000000..109c76023a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.CellMeasure.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.__getitem__

+
+
+CellMeasure.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.__repr__.html b/docs/1.9.0.1/method/cfdm.CellMeasure.__repr__.html new file mode 100644 index 0000000000..0a0c04c816 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CellMeasure.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.__repr__

+
+
+CellMeasure.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.__str__.html b/docs/1.9.0.1/method/cfdm.CellMeasure.__str__.html new file mode 100644 index 0000000000..d1c3081583 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CellMeasure.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.__str__

+
+
+CellMeasure.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_method_exclusions.html new file mode 100644 index 0000000000..060e40483a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure._docstring_method_exclusions

+
+
+CellMeasure._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_package_depth.html new file mode 100644 index 0000000000..a35240959c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.CellMeasure._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure._docstring_package_depth

+
+
+CellMeasure._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_special_substitutions.html new file mode 100644 index 0000000000..eb4be4b667 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CellMeasure._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure._docstring_special_substitutions

+
+
+classmethod CellMeasure._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_substitutions.html new file mode 100644 index 0000000000..03b84f5a84 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CellMeasure._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure._docstring_substitutions

+
+
+CellMeasure._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.apply_masking.html b/docs/1.9.0.1/method/cfdm.CellMeasure.apply_masking.html new file mode 100644 index 0000000000..9c729b367c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.CellMeasure.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.apply_masking

+
+
+CellMeasure.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.clear_properties.html b/docs/1.9.0.1/method/cfdm.CellMeasure.clear_properties.html new file mode 100644 index 0000000000..d47ae80a66 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.clear_properties

+
+
+CellMeasure.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.copy.html b/docs/1.9.0.1/method/cfdm.CellMeasure.copy.html new file mode 100644 index 0000000000..fced6df601 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.CellMeasure.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.copy

+
+
+CellMeasure.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
CellMeasure

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.creation_commands.html b/docs/1.9.0.1/method/cfdm.CellMeasure.creation_commands.html new file mode 100644 index 0000000000..072f24d27c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.creation_commands.html @@ -0,0 +1,239 @@ + + + + + + + cfdm.CellMeasure.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.creation_commands

+
+
+CellMeasure.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Returns the commands to create the cell measure construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the CellMeasure instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.CellMeasure(
+...     measure='area',
+...     properties={'units': 'm2'}
+... )
+>>> x.set_data([100345.5, 123432.3, 101556.8])
+>>> print(x.creation_commands(header=False))
+c = cfdm.CellMeasure()
+c.set_properties({'units': 'm2'})
+data = cfdm.Data([100345.5, 123432.3, 101556.8], units='m2', dtype='f8')
+c.set_data(data)
+c.set_measure('area')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.del_data.html b/docs/1.9.0.1/method/cfdm.CellMeasure.del_data.html new file mode 100644 index 0000000000..e873f31a35 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.CellMeasure.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.del_data

+
+
+CellMeasure.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.del_measure.html b/docs/1.9.0.1/method/cfdm.CellMeasure.del_measure.html new file mode 100644 index 0000000000..ade6a42ef1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.del_measure.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.CellMeasure.del_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.del_measure

+
+
+CellMeasure.del_measure(default=ValueError())[source]
+

Remove the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the measure +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed measure.

+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.del_property.html b/docs/1.9.0.1/method/cfdm.CellMeasure.del_property.html new file mode 100644 index 0000000000..b9305667fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.CellMeasure.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.del_property

+
+
+CellMeasure.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.dump.html b/docs/1.9.0.1/method/cfdm.CellMeasure.dump.html new file mode 100644 index 0000000000..819b66c3c5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.CellMeasure.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.dump

+
+
+CellMeasure.dump(display=True, _omit_properties=None, _key=None, _level=0, _title=None, _axes=None, _axis_names=None)[source]
+

A full description of the cell measure construct.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.equals.html b/docs/1.9.0.1/method/cfdm.CellMeasure.equals.html new file mode 100644 index 0000000000..91994fe5e9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.equals.html @@ -0,0 +1,275 @@ + + + + + + + cfdm.CellMeasure.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.equals

+
+
+CellMeasure.equals(other, rtol=None, atol=None, verbose=None, ignore_data_type=False, ignore_fill_value=False, ignore_properties=(), ignore_compression=True, ignore_type=False)[source]
+

Whether two cell measure constructs are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the same +values and data types, and vector-valued properties must also have +same the size and be element-wise equal (see the ignore_properties +and ignore_data_type parameters), and

  • +
+
    +
  • if there are data arrays then they must have same shape and data +type, the same missing data mask, and be element-wise equal (see the +ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

Any type of object may be tested but, in general, equality is only +possible with another cell measure construct, or a subclass of +one. See the ignore_type parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another CellMeasure +instance, or a subclass of one. If ignore_type is +True then cfdm.CellMeasure(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two cell measure constructs are equal.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.set_properties({'units': 'm2'})
+>>> c.equals(c)
+True
+>>> c.equals(c.copy())
+True
+>>> c.equals('not a cell measure')
+False
+
+
+
>>> m = c.copy()
+>>> m.set_property('units', 'km2')
+>>> c.equals(m)
+False
+>>> c.equals(m, verbose=3)
+False
+>>> # Logs: CellMeasure: Different 'units' property values: 'm2', 'km2'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.get_data.html b/docs/1.9.0.1/method/cfdm.CellMeasure.get_data.html new file mode 100644 index 0000000000..b007b3e502 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.CellMeasure.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.get_data

+
+
+CellMeasure.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.get_filenames.html b/docs/1.9.0.1/method/cfdm.CellMeasure.get_filenames.html new file mode 100644 index 0000000000..11224a9a5b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.CellMeasure.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.get_filenames

+
+
+CellMeasure.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.get_measure.html b/docs/1.9.0.1/method/cfdm.CellMeasure.get_measure.html new file mode 100644 index 0000000000..685969a4f6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.get_measure.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.CellMeasure.get_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.get_measure

+
+
+CellMeasure.get_measure(default=ValueError())[source]
+

Return the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the measure +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the measure.

+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.get_property.html b/docs/1.9.0.1/method/cfdm.CellMeasure.get_property.html new file mode 100644 index 0000000000..2d17825a89 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.CellMeasure.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.get_property

+
+
+CellMeasure.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.has_bounds.html b/docs/1.9.0.1/method/cfdm.CellMeasure.has_bounds.html new file mode 100644 index 0000000000..176a0757aa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.CellMeasure.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.has_bounds

+
+
+CellMeasure.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.has_data.html b/docs/1.9.0.1/method/cfdm.CellMeasure.has_data.html new file mode 100644 index 0000000000..78f9d156d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMeasure.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.has_data

+
+
+CellMeasure.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.has_measure.html b/docs/1.9.0.1/method/cfdm.CellMeasure.has_measure.html new file mode 100644 index 0000000000..b7d6085932 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.has_measure.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.CellMeasure.has_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.has_measure

+
+
+CellMeasure.has_measure()[source]
+

Whether the measure has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the measure has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.has_property.html b/docs/1.9.0.1/method/cfdm.CellMeasure.has_property.html new file mode 100644 index 0000000000..6ab26b62dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.CellMeasure.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.has_property

+
+
+CellMeasure.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.identities.html b/docs/1.9.0.1/method/cfdm.CellMeasure.identities.html new file mode 100644 index 0000000000..099de3c95d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.identities.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.CellMeasure.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.identities

+
+
+CellMeasure.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The measure property, preceded by 'measure:'.

  • +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and a colon, +e.g. 'long_name:Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('cellmeasure0')
+>>> c.get_measure()
+'area'
+
+
+
>>> c.properties()
+{'units': 'km2'}
+>>> c.nc_get_variable()
+'cell_measure'
+>>> c.identities()
+['measure:area', 'units=km2', 'ncvar%cell_measure']
+>>> for i in c.identities(generator=True):
+...     print(i)
+...
+measure:area
+units=km2
+ncvar%cell_measure
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.identity.html b/docs/1.9.0.1/method/cfdm.CellMeasure.identity.html new file mode 100644 index 0000000000..5a57df891a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.CellMeasure.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.identity

+
+
+CellMeasure.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The measure, preceded by 'measure:'.

  • +
  • The standard_name property.

  • +
  • The cf_role property, preceded by ‘cf_role=’.

  • +
  • The long_name property, preceded by ‘long_name=’.

  • +
  • The netCDF variable name, preceded by ‘ncvar%’.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('cellmeasure0')
+>>> c.get_measure()
+'area'
+
+
+
>>> c.properties()
+{'units': 'km2'}
+>>> c.nc_get_variable()
+'cell_measure'
+>>> c.identity(default='no identity')
+'measure:area'
+
+
+
>>> c.del_measure()
+'area'
+>>> c.identity()
+'ncvar%cell_measure'
+>>> c.nc_del_variable()
+'cell_measure'
+>>> c.identity()
+''
+>>> c.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.insert_dimension.html b/docs/1.9.0.1/method/cfdm.CellMeasure.insert_dimension.html new file mode 100644 index 0000000000..b2185172b8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.CellMeasure.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.insert_dimension

+
+
+CellMeasure.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
CellMeasure or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_clear_variable_groups.html new file mode 100644 index 0000000000..8fb790fce9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CellMeasure.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_clear_variable_groups

+
+
+CellMeasure.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_del_variable.html new file mode 100644 index 0000000000..994ce92a03 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CellMeasure.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_del_variable

+
+
+CellMeasure.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_external.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_external.html new file mode 100644 index 0000000000..d92d78b7ee --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_external.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.CellMeasure.nc_get_external — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_get_external

+
+
+CellMeasure.nc_get_external()[source]
+

Whether a construct matches an external netCDF variable.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

nc_set_external

+
+
+
Returns
+
+
bool

The external status.

+
+
+
+
+

Examples:

+
>>> c.nc_get_external()
+False
+>>> c.nc_set_external(True)
+>>> c.nc_get_external()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_variable.html new file mode 100644 index 0000000000..bf1e88c8c1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMeasure.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_get_variable

+
+
+CellMeasure.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_has_variable.html new file mode 100644 index 0000000000..57936f173c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.CellMeasure.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_has_variable

+
+
+CellMeasure.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_external.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_external.html new file mode 100644 index 0000000000..a05984c2e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_external.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.CellMeasure.nc_set_external — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_set_external

+
+
+CellMeasure.nc_set_external(external)[source]
+

Set external status of a netCDF variable.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

nc_get_external

+
+
+
Parameters
+
+
external: bool, optional

Set the external status.

+
+
Parameter example:

external=True

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c.nc_get_external()
+False
+>>> c.nc_set_external(True)
+>>> c.nc_get_external()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable.html new file mode 100644 index 0000000000..c90122a7b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CellMeasure.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_set_variable

+
+
+CellMeasure.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable_groups.html new file mode 100644 index 0000000000..4f209453b9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.CellMeasure.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_set_variable_groups

+
+
+CellMeasure.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_variable_groups.html new file mode 100644 index 0000000000..ab8d1b3e81 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.CellMeasure.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.nc_variable_groups

+
+
+CellMeasure.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.properties.html b/docs/1.9.0.1/method/cfdm.CellMeasure.properties.html new file mode 100644 index 0000000000..bf686cd873 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.CellMeasure.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.properties

+
+
+CellMeasure.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.set_data.html b/docs/1.9.0.1/method/cfdm.CellMeasure.set_data.html new file mode 100644 index 0000000000..1161918954 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.CellMeasure.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.set_data

+
+
+CellMeasure.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified CellMeasure instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or CellMeasure

If the operation was in-place then None is returned, +otherwise return a new CellMeasure instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.set_measure.html b/docs/1.9.0.1/method/cfdm.CellMeasure.set_measure.html new file mode 100644 index 0000000000..b479f96fd5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.set_measure.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.CellMeasure.set_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.set_measure

+
+
+CellMeasure.set_measure(measure)[source]
+

Set the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
measure: str

The value for the measure.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.set_properties.html b/docs/1.9.0.1/method/cfdm.CellMeasure.set_properties.html new file mode 100644 index 0000000000..51bd0fcbaf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CellMeasure.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.set_properties

+
+
+CellMeasure.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.set_property.html b/docs/1.9.0.1/method/cfdm.CellMeasure.set_property.html new file mode 100644 index 0000000000..ccae100a5a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CellMeasure.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.set_property

+
+
+CellMeasure.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.squeeze.html b/docs/1.9.0.1/method/cfdm.CellMeasure.squeeze.html new file mode 100644 index 0000000000..df3c6c93a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.CellMeasure.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.squeeze

+
+
+CellMeasure.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
CellMeasure or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMeasure()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.transpose.html b/docs/1.9.0.1/method/cfdm.CellMeasure.transpose.html new file mode 100644 index 0000000000..935d08d8a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.CellMeasure.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.transpose

+
+
+CellMeasure.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
CellMeasure or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMeasure.uncompress.html b/docs/1.9.0.1/method/cfdm.CellMeasure.uncompress.html new file mode 100644 index 0000000000..708e83555d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMeasure.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.CellMeasure.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMeasure.uncompress

+
+
+CellMeasure.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
CellMeasure or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.CellMethod.__deepcopy__.html new file mode 100644 index 0000000000..5abb234f58 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.CellMethod.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.__deepcopy__

+
+
+CellMethod.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.CellMethod()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.__repr__.html b/docs/1.9.0.1/method/cfdm.CellMethod.__repr__.html new file mode 100644 index 0000000000..e487c852fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CellMethod.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.__repr__

+
+
+CellMethod.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.__str__.html b/docs/1.9.0.1/method/cfdm.CellMethod.__str__.html new file mode 100644 index 0000000000..e0e93b6ae0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.__str__.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.CellMethod.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.__str__

+
+
+CellMethod.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+

Returns a CF-netCDF-like string of the cell method.

+

Note that if the intention is to use this string in a CF-netCDF +cell_methods attribute then, unless they are standard names, the +axes names will need to be modified to be netCDF dimension names.

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_method_exclusions.html new file mode 100644 index 0000000000..ecfc474b46 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CellMethod._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod._docstring_method_exclusions

+
+
+CellMethod._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_package_depth.html new file mode 100644 index 0000000000..34399d0705 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.CellMethod._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod._docstring_package_depth

+
+
+CellMethod._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_special_substitutions.html new file mode 100644 index 0000000000..840c37e504 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CellMethod._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod._docstring_special_substitutions

+
+
+classmethod CellMethod._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_substitutions.html new file mode 100644 index 0000000000..705e2f3753 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CellMethod._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod._docstring_substitutions

+
+
+CellMethod._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.copy.html b/docs/1.9.0.1/method/cfdm.CellMethod.copy.html new file mode 100644 index 0000000000..8ef8a26282 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CellMethod.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.copy

+
+
+CellMethod.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CellMethod

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CellMethod()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.creation_commands.html b/docs/1.9.0.1/method/cfdm.CellMethod.creation_commands.html new file mode 100644 index 0000000000..f1999b20de --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.creation_commands.html @@ -0,0 +1,224 @@ + + + + + + + cfdm.CellMethod.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.creation_commands

+
+
+CellMethod.creation_commands(namespace=None, indent=0, string=True, name='c', header=True)[source]
+

Returns the commands to create the cell method construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the CellMethod instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.CellMethod(
+...     axes=['area'],
+...     qualifiers={'over': 'land'}
+... )
+>>> print(x.creation_commands(header=False))
+c = cfdm.CellMethod()
+c.set_axes(('area',))
+c.set_qualifier('over', 'land')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.del_axes.html b/docs/1.9.0.1/method/cfdm.CellMethod.del_axes.html new file mode 100644 index 0000000000..fb8e71e456 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.del_axes.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMethod.del_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.del_axes

+
+
+CellMethod.del_axes(default=ValueError())[source]
+

Remove the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_axes, has_axes, set_axes

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if axes have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed axes, identified by domain axis construct key +or standard name.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.del_method.html b/docs/1.9.0.1/method/cfdm.CellMethod.del_method.html new file mode 100644 index 0000000000..bde1acb503 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.del_method.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CellMethod.del_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.del_method

+
+
+CellMethod.del_method(default=ValueError())[source]
+

Remove the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the method +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed method.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+('time',)
+>>> c.del_method()
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.del_qualifier.html b/docs/1.9.0.1/method/cfdm.CellMethod.del_qualifier.html new file mode 100644 index 0000000000..1544837892 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.del_qualifier.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMethod.del_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.del_qualifier

+
+
+CellMethod.del_qualifier(qualifier, default=ValueError())[source]
+

Remove a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier:

The name of the qualifier to be removed.

+
+
Parameter example:

qualifier='where'

+
+
+
+
default: optional

Return the value of the default parameter if the +qualifier has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed qualifier.

+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where', 'no qualifier')
+'land'
+>>> c.del_qualifier('where')
+'land'
+>>> c.get_qualifier('where')
+ValueError: 'CellMethod' has no 'where' qualifier
+>>> c.del_qualifier('where', 'no qualifier')
+'no qualifier'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.dump.html b/docs/1.9.0.1/method/cfdm.CellMethod.dump.html new file mode 100644 index 0000000000..6d1fe26841 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.CellMethod.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.dump

+
+
+CellMethod.dump(display=True, _title=None, _level=0)[source]
+

A full description of the cell method construct.

+

Returns a description the method, all qualifiers and the axes +to which it applies.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.equals.html b/docs/1.9.0.1/method/cfdm.CellMethod.equals.html new file mode 100644 index 0000000000..45d4f5f87e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.equals.html @@ -0,0 +1,248 @@ + + + + + + + cfdm.CellMethod.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.equals

+
+
+CellMethod.equals(other, rtol=None, atol=None, verbose=None, ignore_qualifiers=(), ignore_type=False)[source]
+

Whether two cell method constructs are the same.

+

Equality is strict by default. This means that:

+
    +
  • the descriptive qualifiers must be the same (see the +ignore_qualifiers parameter).

  • +
+

The axes of the cell method constructs are not considered, +because they may only be correctly interpreted by the field +constructs that contain the cell method constructs in +question. They are, however, taken into account when two +fields constructs are tested for equality.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another cell method construct, or a +subclass of one. See the ignore_type parameter.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_qualifiers: sequence of str, optional

The names of qualifiers to omit from the comparison.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another CellMethod +instance, or a subclass of one. If ignore_type is +True then cfdm.CellMethod(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two cell method constructs are equal.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.equals(c)
+True
+>>> c.equals(c.copy())
+True
+>>> c.equals('not a cell method')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.get_axes.html b/docs/1.9.0.1/method/cfdm.CellMethod.get_axes.html new file mode 100644 index 0000000000..297ba06bab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.get_axes.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMethod.get_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.get_axes

+
+
+CellMethod.get_axes(default=ValueError())[source]
+

Return the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, has_axes, set_axes

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if axes have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The axes.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.get_method.html b/docs/1.9.0.1/method/cfdm.CellMethod.get_method.html new file mode 100644 index 0000000000..1434f6d6a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.get_method.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMethod.get_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.get_method

+
+
+CellMethod.get_method(default=ValueError())[source]
+

Return the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the method +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The method.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.get_qualifier.html b/docs/1.9.0.1/method/cfdm.CellMethod.get_qualifier.html new file mode 100644 index 0000000000..83cf06db5d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.get_qualifier.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CellMethod.get_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.get_qualifier

+
+
+CellMethod.get_qualifier(qualifier, default=ValueError())[source]
+

Return a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier:

The name of the qualifier to be returned.

+
+
Parameter example:

qualifier='where'

+
+
+
+
default: optional

Return the value of the default parameter if the +qualifier has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the qualifier.

+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where', 'no qualifier')
+'land'
+>>> c.del_qualifier('where')
+'land'
+>>> c.get_qualifier('where')
+ValueError: 'CellMethod' has no 'where' qualifier
+>>> c.get_qualifier('where', 'no qualifier')
+'no qualifier'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.has_axes.html b/docs/1.9.0.1/method/cfdm.CellMethod.has_axes.html new file mode 100644 index 0000000000..24d3354543 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.has_axes.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.CellMethod.has_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.has_axes

+
+
+CellMethod.has_axes()[source]
+

Whether the axes of the cell method have been set.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, get_axes, set_axes

+
+
+
Returns
+
+
bool

True if the axes have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.has_method.html b/docs/1.9.0.1/method/cfdm.CellMethod.has_method.html new file mode 100644 index 0000000000..fc26ddf1ef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.has_method.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.CellMethod.has_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.has_method

+
+
+CellMethod.has_method()[source]
+

Whether the method of the cell method has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the method has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.has_qualifier.html b/docs/1.9.0.1/method/cfdm.CellMethod.has_qualifier.html new file mode 100644 index 0000000000..904e20355f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.has_qualifier.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.CellMethod.has_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.has_qualifier

+
+
+CellMethod.has_qualifier(qualifier)[source]
+

Whether a qualifier of the cell method has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier: str

The name of the qualifier.

+
+
+
+
Returns
+
+
bool

True if the qualifier has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.has_qualifier('where')
+True
+>>> c.del_qualifier('where')
+'land'
+>>> c.has_qualifier('where')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.identities.html b/docs/1.9.0.1/method/cfdm.CellMethod.identities.html new file mode 100644 index 0000000000..c69150f3ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.identities.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.CellMethod.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.identities

+
+
+CellMethod.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The method, preceded by ‘method:’.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('cellmethod1')
+>>> c.get_method()
+'maximum'
+>>> c.identities()
+['method:maximum']
+>>> c.del_method()
+'maximum'
+>>> c.identities()
+[]
+>>> for i in c.identities(generator=True):
+...     print(i)
+...
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.identity.html b/docs/1.9.0.1/method/cfdm.CellMethod.identity.html new file mode 100644 index 0000000000..9cd49bdabb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.identity.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.CellMethod.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.identity

+
+
+CellMethod.identity(default='')[source]
+

Return the canonical identity for the cell method construct.

+

By default the identity is the first found of the following:

+
    +
  1. The method, preceded by ‘method:’

  2. +
  3. The value of the default parameter.

  4. +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('cellmethod1')
+>>> c.get_method()
+'maximum'
+>>> c.identity()
+'method:maximum'
+>>> c.del_method()
+'maximum'
+>>> c.identity()
+''
+>>> c.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.qualifiers.html b/docs/1.9.0.1/method/cfdm.CellMethod.qualifiers.html new file mode 100644 index 0000000000..3aeb542067 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.qualifiers.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CellMethod.qualifiers — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.qualifiers

+
+
+CellMethod.qualifiers()[source]
+

Return all qualifiers of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The qualifiers.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.qualifiers()
+{'where': 'land'}
+>>> c.del_qualifier('where')
+'land'
+>>> c.qualifiers()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.set_axes.html b/docs/1.9.0.1/method/cfdm.CellMethod.set_axes.html new file mode 100644 index 0000000000..f33eedd0fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.set_axes.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.CellMethod.set_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.set_axes

+
+
+CellMethod.set_axes(value)[source]
+

Set the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, get_axes, has_axes

+
+
+
Parameters
+
+
value: (sequence of) str

The axes, specified either by the construct identifiers of +domain axis constructs, standard names, or the special +string 'area'.

+
+
Parameter example:

axes='domainaxis0'

+
+
Parameter example:

axes='time'

+
+
Parameter example:

axes='area'

+
+
Parameter example:

axes=['domainaxis0', 'domainaxis2']

+
+
Parameter example:

axes=['time', 'area']

+
+
Parameter example:

axes=['domainaxis0', 'time']

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
>>> c.set_axes(['domainaxis1', 'domainaxis0'])
+
+
+
>>> c.set_axes(['time', 'domainaxis0'])
+
+
+
>>> c.set_axes('time')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.set_method.html b/docs/1.9.0.1/method/cfdm.CellMethod.set_method.html new file mode 100644 index 0000000000..ae07712886 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.set_method.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.CellMethod.set_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.set_method

+
+
+CellMethod.set_method(value)[source]
+

Set the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the method.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.set_qualifier.html b/docs/1.9.0.1/method/cfdm.CellMethod.set_qualifier.html new file mode 100644 index 0000000000..84675ee4b0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.set_qualifier.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.CellMethod.set_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.set_qualifier

+
+
+CellMethod.set_qualifier(qualifier, value)[source]
+

Set a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier: str

The name of the qualifier to be set.

+
+
value:

The value for the qualifier.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where')
+'land'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CellMethod.sorted.html b/docs/1.9.0.1/method/cfdm.CellMethod.sorted.html new file mode 100644 index 0000000000..980b2ece5e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CellMethod.sorted.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CellMethod.sorted — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CellMethod.sorted

+
+
+CellMethod.sorted(indices=None)[source]
+

Return a new cell method construct with sorted axes.

+

The axes are sorted by domain axis construct identifier or +standard name, and any intervals are sorted accordingly.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
indices: ordered sequence of int, optional

Sort the axes with the given indices. By default the axes +are sorted by domain axis construct identifier or standard +name.

+
+
+
+
Returns
+
+
CellMethod

A new cell method construct with sorted axes.

+
+
+
+
+

Examples:

+
>>> cm = cfdm.CellMethod(axes=['domainaxis1', 'domainaxis0'],
+...                      method='mean',
+...                      qualifiers={'interval': [1, 2]})
+>>> cm
+<CellMethod: domainaxis1: domainaxis0: mean (interval: 1 interval: 2)>
+>>> cm.sorted()
+<CellMethod: domainaxis0: domainaxis1: mean (interval: 2 interval: 1)>
+
+
+
>>> cm = cfdm.CellMethod(axes=['domainaxis0', 'area'],
+...                      method='mean',
+...                      qualifiers={'interval': [1, 2]})
+>>> cm
+<CellMethod: domainaxis0: area: mean (interval: 1 interval: 2)>
+>>> cm.sorted()
+<CellMethod: area: domainaxis0: mean (interval: 2 interval: 1)>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.__array__.html b/docs/1.9.0.1/method/cfdm.CompressedArray.__array__.html new file mode 100644 index 0000000000..dc80b36ae6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.CompressedArray.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.__array__

+
+
+CompressedArray.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.CompressedArray.__deepcopy__.html new file mode 100644 index 0000000000..6dd975bd45 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.CompressedArray.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.__deepcopy__

+
+
+CompressedArray.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.CompressedArray.__getitem__.html new file mode 100644 index 0000000000..14d85b3bd3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.__getitem__.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CompressedArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.__getitem__

+
+
+CompressedArray.__getitem__(indices)[source]
+

Return a subspace as an independent numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
+
    +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.__repr__.html b/docs/1.9.0.1/method/cfdm.CompressedArray.__repr__.html new file mode 100644 index 0000000000..ae8a8b8797 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CompressedArray.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.__repr__

+
+
+CompressedArray.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.__str__.html b/docs/1.9.0.1/method/cfdm.CompressedArray.__str__.html new file mode 100644 index 0000000000..61f804e5ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CompressedArray.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.__str__

+
+
+CompressedArray.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..8cdfd944ca --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CompressedArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray._docstring_method_exclusions

+
+
+CompressedArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_package_depth.html new file mode 100644 index 0000000000..bf6d6d113b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.CompressedArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray._docstring_package_depth

+
+
+CompressedArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..f8c7a64b33 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CompressedArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray._docstring_special_substitutions

+
+
+classmethod CompressedArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_substitutions.html new file mode 100644 index 0000000000..64d67e10b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CompressedArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray._docstring_substitutions

+
+
+CompressedArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.copy.html b/docs/1.9.0.1/method/cfdm.CompressedArray.copy.html new file mode 100644 index 0000000000..32d183d731 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.CompressedArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.copy

+
+
+CompressedArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CompressedArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_axes.html new file mode 100644 index 0000000000..9dc7d86b0a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_axes.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CompressedArray.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.get_compressed_axes

+
+
+CompressedArray.get_compressed_axes()[source]
+

Return axes that are compressed in the underlying array.

+
+
Returns
+
+
list

The compressed axes described by their integer positions.

+
+
+
+
+

Examples:

+
>>> c.ndim
+4
+>>> c.compressed_array.ndim
+3
+>>> c.compressed_axes()
+[1, 2]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_dimension.html new file mode 100644 index 0000000000..26f6f61cb8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compressed_dimension.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.CompressedArray.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.get_compressed_dimension

+
+
+CompressedArray.get_compressed_dimension(*default)[source]
+

Returns the compressed dimension’s position in the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_compressed_axearray, get_compressed_axes, +get_compressed_type

+
+
+
Parameters
+
+
default: optional

Return default if the underlying array is not +compressed.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array. If the underlying is not compressed then default +is returned, if provided.

+
+
+
+
+

Examples:

+
>>> i = d.get_compressed_dimension()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compression_type.html new file mode 100644 index 0000000000..e184dcd00f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CompressedArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.get_compression_type

+
+
+CompressedArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.CompressedArray.get_subspace.html new file mode 100644 index 0000000000..0ce3c7cc93 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.CompressedArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.get_subspace

+
+
+classmethod CompressedArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.source.html b/docs/1.9.0.1/method/cfdm.CompressedArray.source.html new file mode 100644 index 0000000000..35c3c4f954 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.source.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.CompressedArray.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.source

+
+
+CompressedArray.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set. If set to an Exception instance then +it will be raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> array
+<RaggedContiguousArray(2, 4): >
+>>> array.source()
+<Data(5): [280.0, ..., 279.5]>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CompressedArray.to_memory.html b/docs/1.9.0.1/method/cfdm.CompressedArray.to_memory.html new file mode 100644 index 0000000000..2978090578 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CompressedArray.to_memory.html @@ -0,0 +1,169 @@ + + + + + + + cfdm.CompressedArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CompressedArray.to_memory

+
+
+CompressedArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+
Returns
+
+
CompressedArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.__enter__.html b/docs/1.9.0.1/method/cfdm.Configuration.__enter__.html new file mode 100644 index 0000000000..6752360c44 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.__enter__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.__enter__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.__enter__

+
+
+Configuration.__enter__()[source]
+

Enter the runtime context.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.__exit__.html b/docs/1.9.0.1/method/cfdm.Configuration.__exit__.html new file mode 100644 index 0000000000..afd96567f0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.__exit__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.__exit__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.__exit__

+
+
+Configuration.__exit__(exc_type, exc_value, traceback)[source]
+

Exit the runtime context.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.__repr__.html b/docs/1.9.0.1/method/cfdm.Configuration.__repr__.html new file mode 100644 index 0000000000..dc1445893a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.__repr__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.__repr__

+
+
+Configuration.__repr__()[source]
+

Called by the repr built-in function.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.clear.html b/docs/1.9.0.1/method/cfdm.Configuration.clear.html new file mode 100644 index 0000000000..72c04d7580 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.clear.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Configuration.clear — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.clear

+
+
+Configuration.clear() → None. Remove all items from D.
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.copy.html b/docs/1.9.0.1/method/cfdm.Configuration.copy.html new file mode 100644 index 0000000000..29f928f8b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.copy.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.Configuration.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.copy

+
+
+Configuration.copy()[source]
+

Return a deep copy.

+

c.copy() is equivalent to copy.deepcopy(c).

+
+

New in version (cfdm): 1.8.8.0

+
+
+
Returns
+
+
Configuration

The deep copy.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.fromkeys.html b/docs/1.9.0.1/method/cfdm.Configuration.fromkeys.html new file mode 100644 index 0000000000..cd87d2cf35 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.fromkeys.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.fromkeys — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.fromkeys

+
+
+Configuration.fromkeys()
+

Create a new dictionary with keys from iterable and values set to value.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.get.html b/docs/1.9.0.1/method/cfdm.Configuration.get.html new file mode 100644 index 0000000000..a1bf713451 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.get.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.get — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.get

+
+
+Configuration.get()
+

Return the value for key if key is in the dictionary, else default.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.items.html b/docs/1.9.0.1/method/cfdm.Configuration.items.html new file mode 100644 index 0000000000..e320768452 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.items.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Configuration.items — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.items

+
+
+Configuration.items() → a set-like object providing a view on D's items
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.keys.html b/docs/1.9.0.1/method/cfdm.Configuration.keys.html new file mode 100644 index 0000000000..116d7e0553 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.keys.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Configuration.keys — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.keys

+
+
+Configuration.keys() → a set-like object providing a view on D's keys
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.pop.html b/docs/1.9.0.1/method/cfdm.Configuration.pop.html new file mode 100644 index 0000000000..b8e601679a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.pop.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Configuration.pop — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.pop

+
+
+Configuration.pop(k[, d]) → v, remove specified key and return the corresponding value.
+

If key is not found, d is returned if given, otherwise KeyError is raised

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.popitem.html b/docs/1.9.0.1/method/cfdm.Configuration.popitem.html new file mode 100644 index 0000000000..74200cb3b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.popitem.html @@ -0,0 +1,158 @@ + + + + + + + cfdm.Configuration.popitem — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.popitem

+
+
+Configuration.popitem()
+

Remove and return a (key, value) pair as a 2-tuple.

+

Pairs are returned in LIFO (last-in, first-out) order. +Raises KeyError if the dict is empty.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.setdefault.html b/docs/1.9.0.1/method/cfdm.Configuration.setdefault.html new file mode 100644 index 0000000000..4652bbce93 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.setdefault.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Configuration.setdefault — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.setdefault

+
+
+Configuration.setdefault()
+

Insert key with a value of default if key is not in the dictionary.

+

Return the value for key if key is in the dictionary, else default.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.update.html b/docs/1.9.0.1/method/cfdm.Configuration.update.html new file mode 100644 index 0000000000..bd10d202c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.update.html @@ -0,0 +1,158 @@ + + + + + + + cfdm.Configuration.update — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.update

+
+
+Configuration.update([E, ]**F) → None. Update D from dict/iterable E and F.
+

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] +If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v +In either case, this is followed by: for k in F: D[k] = F[k]

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Configuration.values.html b/docs/1.9.0.1/method/cfdm.Configuration.values.html new file mode 100644 index 0000000000..fbc66f65bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Configuration.values.html @@ -0,0 +1,155 @@ + + + + + + + cfdm.Configuration.values — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Configuration.values

+
+
+Configuration.values() → an object providing a view on D's values
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Constant.__deepcopy__.html new file mode 100644 index 0000000000..a98d2aa455 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.__deepcopy__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Constant.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.__deepcopy__

+
+
+Constant.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.__enter__.html b/docs/1.9.0.1/method/cfdm.Constant.__enter__.html new file mode 100644 index 0000000000..0b0731a089 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.__enter__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Constant.__enter__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.__enter__

+
+
+Constant.__enter__()[source]
+

Enter the runtime context.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.__exit__.html b/docs/1.9.0.1/method/cfdm.Constant.__exit__.html new file mode 100644 index 0000000000..34c9516d12 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.__exit__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Constant.__exit__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.__exit__

+
+
+Constant.__exit__(exc_type, exc_value, traceback)[source]
+

Exit the runtime context.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.__repr__.html b/docs/1.9.0.1/method/cfdm.Constant.__repr__.html new file mode 100644 index 0000000000..e732dabf84 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.__repr__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Constant.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.__repr__

+
+
+Constant.__repr__()[source]
+

Called by the repr built-in function.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.__str__.html b/docs/1.9.0.1/method/cfdm.Constant.__str__.html new file mode 100644 index 0000000000..7e2ecfc0f9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.__str__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Constant.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.__str__

+
+
+Constant.__str__()[source]
+

Called by the str built-in function.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constant.copy.html b/docs/1.9.0.1/method/cfdm.Constant.copy.html new file mode 100644 index 0000000000..d6df85638d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constant.copy.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.Constant.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constant.copy

+
+
+Constant.copy()[source]
+

Return a deep copy.

+

c.copy() is equivalent to copy.deepcopy(c).

+
+

New in version (cfdm): 1.8.8.0

+
+
+
Returns
+
+
Constant

The deep copy.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__call__.html b/docs/1.9.0.1/method/cfdm.Constructs.__call__.html new file mode 100644 index 0000000000..adb8154d31 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__call__.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.Constructs.__call__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__call__

+
+
+Constructs.__call__(*identities, **filter_kwargs)[source]
+

Select metadata constructs by identity.

+

Calling a Constructs instance selects metadata constructs by +identity and is an alias for the filter_by_identity +method. For example, to select constructs that have an +identity of ‘air_temperature’: d = c('air_temperature').

+

Note that c(*identities, **filter_kwargs) is equivalent to +c.filter(filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

filter_by_identity, filter

+
+
+
Parameters
+
+
identities: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs

The selected constructs and their construct keys.

+
+
+
+
+

Examples:

+

See filter_by_identity and filter for examples.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__contains__.html b/docs/1.9.0.1/method/cfdm.Constructs.__contains__.html new file mode 100644 index 0000000000..681b7f178f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__contains__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__contains__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__contains__

+
+
+Constructs.__contains__(key)[source]
+

Implements membership test operators for construct keys.

+

x.__contains__(y) <==> y in x

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__copy__.html b/docs/1.9.0.1/method/cfdm.Constructs.__copy__.html new file mode 100644 index 0000000000..ff8d1fd16d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__copy__.html @@ -0,0 +1,159 @@ + + + + + + + cfdm.Constructs.__copy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__copy__

+
+
+Constructs.__copy__()[source]
+

Called by the copy.copy standard library function.

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Constructs.__deepcopy__.html new file mode 100644 index 0000000000..eb742201e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__deepcopy__.html @@ -0,0 +1,159 @@ + + + + + + + cfdm.Constructs.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__deepcopy__

+
+
+Constructs.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy standard library function.

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__getitem__.html b/docs/1.9.0.1/method/cfdm.Constructs.__getitem__.html new file mode 100644 index 0000000000..afb071e161 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__getitem__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__getitem__

+
+
+Constructs.__getitem__(key)[source]
+

Return a construct with the given key.

+

x.__getitem__(y) <==> x[y]

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__iter__.html b/docs/1.9.0.1/method/cfdm.Constructs.__iter__.html new file mode 100644 index 0000000000..2b07baf762 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__iter__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__iter__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__iter__

+
+
+Constructs.__iter__()[source]
+

Called when an iterator is required.

+

x.__iter__() <==> iter(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__len__.html b/docs/1.9.0.1/method/cfdm.Constructs.__len__.html new file mode 100644 index 0000000000..1c1c627200 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__len__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__len__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__len__

+
+
+Constructs.__len__()[source]
+

Return the number of constructs.

+

x.__len__() <==> len(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__repr__.html b/docs/1.9.0.1/method/cfdm.Constructs.__repr__.html new file mode 100644 index 0000000000..332e461154 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__repr__

+
+
+Constructs.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.__str__.html b/docs/1.9.0.1/method/cfdm.Constructs.__str__.html new file mode 100644 index 0000000000..f1ed3f7995 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.__str__

+
+
+Constructs.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Constructs._docstring_method_exclusions.html new file mode 100644 index 0000000000..030bdfe94c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Constructs._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs._docstring_method_exclusions

+
+
+Constructs._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Constructs._docstring_package_depth.html new file mode 100644 index 0000000000..827530e09c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Constructs._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs._docstring_package_depth

+
+
+Constructs._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Constructs._docstring_special_substitutions.html new file mode 100644 index 0000000000..c01ab0c0c8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Constructs._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs._docstring_special_substitutions

+
+
+classmethod Constructs._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Constructs._docstring_substitutions.html new file mode 100644 index 0000000000..ab6598f1dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Constructs._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs._docstring_substitutions

+
+
+Constructs._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.clear_filters_applied.html b/docs/1.9.0.1/method/cfdm.Constructs.clear_filters_applied.html new file mode 100644 index 0000000000..96e9fbd19d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.clear_filters_applied.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Constructs.clear_filters_applied — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.clear_filters_applied

+
+
+Constructs.clear_filters_applied()[source]
+

Remove the history of filters that have been applied.

+

This method does not change the metadata constructs, it just +forgets the history of any filters that have previously been +applied. Use inverse_filter or unfilter retrieve +previously filtered constructs.

+

The removed history is returned in a tuple. The last element +of the tuple describes the last filter applied. Each element +is a single-entry dictionary whose key is the name of the +filter method that was used, with a value that gives the +arguments that were passed to the call of that method. If no +filters have been applied then the tuple is empty.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
tuple

The removed history of filters that have been applied, +ordered from first to last. If no filters have been +applied then the tuple is empty.

+
+
+
+
+

Examples:

+
>>> c.filters_applied()
+({'filter_by_naxes': (3, 1)},
+ {'filter_by_identity': ('grid_longitude',)})
+>>> c.clear_filters_applied()
+({'filter_by_naxes': (3, 1)},
+ {'filter_by_identity': ('grid_longitude',)})
+>>> c.filters_applied()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.construct_type.html b/docs/1.9.0.1/method/cfdm.Constructs.construct_type.html new file mode 100644 index 0000000000..88d66635e3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.construct_type.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Constructs.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.construct_type

+
+
+Constructs.construct_type(key)[source]
+

Return the type of a construct for a given key.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

construct_types

+
+
+
Parameters
+
+
key: str

A construct identifier.

+
+
+
+
Returns
+
+
str or None

The construct type, or None if the key is not +present.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.construct_types.html b/docs/1.9.0.1/method/cfdm.Constructs.construct_types.html new file mode 100644 index 0000000000..5d89faa007 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.construct_types.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Constructs.construct_types — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.construct_types

+
+
+Constructs.construct_types()[source]
+

Return all of the construct types for all keys.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

construct_type

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.copy.html b/docs/1.9.0.1/method/cfdm.Constructs.copy.html new file mode 100644 index 0000000000..37fd02860d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.copy.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Constructs.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.copy

+
+
+Constructs.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data contained in the metadata +constructs. By default such data are copied.

+
+
+
+
Returns
+
+
Constructs

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.data_axes.html b/docs/1.9.0.1/method/cfdm.Constructs.data_axes.html new file mode 100644 index 0000000000..ce200a2b33 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.data_axes.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Constructs.data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.data_axes

+
+
+Constructs.data_axes()[source]
+

Returns the axes spanned by the data.

+

Specifically, returns the domain axis constructs spanned by +metadata construct data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
dict

The keys of the domain axes constructs spanned by +metadata construct data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> c = f.constructs
+>>> print(c)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> c.data_axes()
+{'dimensioncoordinate0': ('domainaxis0',),
+ 'dimensioncoordinate1': ('domainaxis1',),
+ 'dimensioncoordinate2': ('domainaxis2',)}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.domain_axes.html b/docs/1.9.0.1/method/cfdm.Constructs.domain_axes.html new file mode 100644 index 0000000000..88aa902733 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.domain_axes.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Constructs.domain_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.domain_axes

+
+
+Constructs.domain_axes(*identities, **filter_kwargs)[source]
+

Return domain axis constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: tuple, optional

Select domain axis constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

Additionally, if for a given value, +c.filter(filter_by_type=["dimension_coordinate", +"auxiliary_coordinate"], filter_by_naxes=(1,), +filter_by_identity=(value,)) returns 1-d coordinate +constructs that all span the same domain axis +construct then that domain axis construct is +selected. See filter for details.

+

Additionally, if there is an associated Field data +array and a value matches the integer position of an +array dimension, then the corresponding domain axis +construct is selected.

+

If no values are provided then all domain axis +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.domain_axis_identity.html b/docs/1.9.0.1/method/cfdm.Constructs.domain_axis_identity.html new file mode 100644 index 0000000000..689cd19830 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.domain_axis_identity.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Constructs.domain_axis_identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.domain_axis_identity

+
+
+Constructs.domain_axis_identity(key)[source]
+

Return the canonical identity for a domain axis construct.

+

The identity is the first found of the following:

+
    +
  1. The canonical identity of a dimension coordinate construct that +span the domain axis construct.

  2. +
  3. The identity of a one-dimensional auxiliary coordinate +construct that spans the domain axis construct. This will +either be the value of a standard_name, cf_role +(preceded by 'cf_role=') or axis (preceded by +'axis=') property, as appropriate.

  4. +
  5. The netCDF dimension name, preceded by ‘ncdim%’.

  6. +
  7. The domain axis construct key, preceded by ‘key%’.

  8. +
+
+
Parameters
+
+
key: str

The construct key for the domain axis construct.

+
+
Parameter example:

key='domainaxis2'

+
+
+
+
+
+
Returns
+
+
str

The identity.

+
+
+
+
+

Examples:

+
>>> c.domain_axis_identity('domainaxis1')
+'longitude'
+>>> c.domain_axis_identity('domainaxis2')
+'axis=Y'
+>>> c.domain_axis_identity('domainaxis3')
+'cf_role=timeseries_id'
+>>> c.domain_axis_identity('domainaxis4')
+'key%domainaxis4')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.equals.html b/docs/1.9.0.1/method/cfdm.Constructs.equals.html new file mode 100644 index 0000000000..c97490ddd5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.equals.html @@ -0,0 +1,243 @@ + + + + + + + cfdm.Constructs.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.equals

+
+
+Constructs.equals(other, rtol=None, atol=None, verbose=None, ignore_data_type=False, ignore_fill_value=False, ignore_compression=True, _ignore_type=False, _return_axis_map=False)[source]
+

Whether two Constructs instances are the same.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

Any type of object may be tested but equality is only possible +with another Constructs construct, or a subclass of one.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then the _FillValue and missing_value +properties are omitted from the comparison for the +metadata constructs.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter.html b/docs/1.9.0.1/method/cfdm.Constructs.filter.html new file mode 100644 index 0000000000..88ab1008d0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter.html @@ -0,0 +1,312 @@ + + + + + + + cfdm.Constructs.filter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter

+
+
+Constructs.filter(axis_mode='and', property_mode='and', todict=False, cached=None, _identity_config={}, **filters)[source]
+

Select metadata constructs by a chain of filters.

+

This method allows multiple filters defined by the +“filter_by_*” methods to be chained in an alternative manner +to calling the individual methods in sequence.

+

For instance, to select the domain axis constructs with size +73 or 96

+
>>> c2 = c.filter(filter_by_type=['domain_axis'],
+...               filter_by_size=[73, 96])
+
+
+

is equivalent to

+
>>> c2 = c.filter_by_type('domain_axis')
+>>> c2 = c2.filter_by_size(73, 96)
+
+
+

When the results are requested as a dictionary as opposed to a +Constructs object (see the todict parameter), using the +filter method to call two or more filters is faster than +calling the individual methods in sequence. For instance

+
>>> d = c.filter(filter_by_type=['dimension_coordinate'],
+...              filter_by_identity=['time'],
+...              todict=True)
+
+
+

is equivalent to, but faster than

+
>>> c2 = c.filter_by_type('dimension_coordinate')
+>>> d = c2.filter_by_identity('time', todict=True)
+
+
+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
filters: optional

Keyword arguments defining the filters to apply. Each +filter keyword defines a filter method, and its value +provides the arguments for that method.

+

For instance, filter_by_type=['domain_axis'] will +cause the filter_by_type method to be called with +positional arguments *['domain_axis'].

+

The filters are applied in the same order that the +keyword arguments appear.

+

Valid keywords and their values are:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Keyword

Value

filter_by_axis

A sequence as expected by the +axes parameter of +filter_by_axis

filter_by_identity

A sequence as expected by the +identities parameter of +filter_by_identity

filter_by_key

A sequence as expected by the +keys parameter of +filter_by_key

filter_by_measure

A sequence as expected by the +measures parameter of +filter_by_measure

filter_by_method

A sequence as expected by the +methods parameter of +filter_by_method

filter_by_naxes

A sequence as expected by the +naxes parameter of +filter_by_naxes

filter_by_ncdim

A sequence as expected by the +ncdims parameter of +filter_by_ncdim

filter_by_ncvar

A sequence as expected by the +ncvars parameter of +filter_by_ncvar

filter_by_size

A sequence as expected by the +sizes parameter of +filter_by_size

filter_by_type

A sequence as expected by the +types parameter of +filter_by_type

filter_by_property

A dictionary as expected by +the properties parameter of +filter_by_property

filter_by_data

Any value is allowed which +will be ignored, as +filter_by_data does not have +any positional arguments.

+
+
axis_mode: str, optional

Provide a value for the axis_mode parameter of the +filter_by_axis method. By default axis_mode is +'and'.

+
+
property_mode: str, optional

Provide a value for the property_mode parameter of +the filter_by_property method. By default +property_mode is 'and'.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+
_identity_config: optional

Provide a value for the _config parameter of the +filter_by_identity method.

+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_axis.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_axis.html new file mode 100644 index 0000000000..b50f9be90c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_axis.html @@ -0,0 +1,279 @@ + + + + + + + cfdm.Constructs.filter_by_axis — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_axis

+
+
+Constructs.filter_by_axis(*axes, axis_mode='and', todict=False, cached=None)[source]
+

Select metadata constructs by axes spanned by their data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
mode: str

Deprecated at version 1.8.9.0. Use the axis_mode +parameter instead.

+
+
axes: optional

Select constructs that whose data spans the domain +axis constructs specified by the given values. A value +may be:

+
    +
  • A domain axis construct identifier, with or without +the 'key%' prefix.

  • +
  • The unique domain axis construct spanned by all of +the 1-d coordinate constructs returned by, for a +given value, +c.filter(filter_by_type=["dimension_coordinate", +"auxiliary_coordinate"], filter_by_naxes=(1,), +filter_by_identity=(value,)). See filter for +details.

  • +
  • If there is an associated Field data array and a +value matches the integer position of an array +dimension, then the corresponding domain axis +construct is specified.

  • +
  • A unique domain axis construct identity, defined by +its identities methods. In this case a value may +be any object that can match via the == +operator, or a re.Pattern object that matches via +its search method.

  • +
+

If no axes are provided then all constructs that do, +or could have data, spanning any domain axes +constructs, are selected.

+
+
axis_mode: str

Define the relationship between the given domain axes +and the constructs’ data.

+ ++++ + + + + + + + + + + + + + + + + + + + +

axis_mode

Description

'and'

A construct is selected if it spans all +of the given domain axes, and possibly +others.

'or'

A construct is selected if it spans any +of the domain axes, and possibly +others.

exact

A construct is selected if it spans all +of the given domain axes, and no +others.

subset

A construct is selected if it spans a +subset of the given domain axes, and no +others.

+

By default axis_mode is 'and'.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select constructs whose data spans the “domainaxis1” domain +axis construct:

+
>>> d = c.filter_by_axis('domainaxis1')
+
+
+

Select constructs whose data does not span the “domainaxis2” +domain axis construct:

+
>>> d = c.filter_by_axis('domainaxis2').inverse_filter()
+
+
+

Select constructs whose data spans the “domainaxis1”, but not +the “domainaxis2” domain axis constructs:

+
>>> d = c.filter_by_axis('domainaxis1')
+>>> d = d.filter_by_axis('domainaxis2')
+>>> d  = d.inverse_filter(1)
+
+
+

Select constructs whose data spans the “domainaxis1” or the +“domainaxis2” domain axis constructs:

+
>>> d = c.filter_by_axis('domainaxis1', 'domainaxis2', axis_mode="or")
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_data.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_data.html new file mode 100644 index 0000000000..ff30e4a85e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_data.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Constructs.filter_by_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_data

+
+
+Constructs.filter_by_data(todict=False, cached=None)[source]
+

Selects metadata constructs that could contain data.

+

Selection is not based on whether they actually have data, +rather by whether the construct supports the inclusion of +data. For example, constructs selected by this method will all +have a get_data method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select constructs that could contain data:

+
>>> d = c.filter_by_data()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_identity.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_identity.html new file mode 100644 index 0000000000..04fc5af169 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_identity.html @@ -0,0 +1,251 @@ + + + + + + + cfdm.Constructs.filter_by_identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_identity

+
+
+Constructs.filter_by_identity(*identities, todict=False, cached=None, _config={})[source]
+

Select metadata constructs by identity.

+

Calling a Constructs instance is an alias for +filter_by_identity.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identities: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+
+
+
    +
  • A metadata construct identity.

    +
    +
    A construct has a number of string-valued identities

    defined by its identities method, and is selected +if any of them match the identity +parameter. identity may be a string that equals one +of a construct’s identities; or a re.Pattern object +that matches one of a construct’s identities via +re.search.

    +

    Note that in the output of a dump method or print +call, a metadata construct is always described by one +of its identities, and so this description may always +be used as an identity value.

    +
    +
    +
  • +
  • The key of a metadata construct

  • +
+
+
Parameter example:

identity='latitude'

+
+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
_config: optional

Additional parameters for configuring the application +of a construct’s identities method.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select constructs that have a standard_name property of +‘latitude’:

+
>>> d = c.filter_by_identity('latitude')
+
+
+

Select constructs that have a long_name property of +‘Height’:

+
>>> d = c.filter_by_identity('long_name=Height')
+
+
+

Select constructs that have a standard_name property of +‘latitude’ or a “foo” property of ‘bar’:

+
>>> d = c.filter_by_identity('latitude', 'foo=bar')
+
+
+

Select constructs that have a netCDF variable name of ‘time’:

+
>>> d = c.filter_by_identity('ncvar%time')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_key.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_key.html new file mode 100644 index 0000000000..9edd4c01ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_key.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Constructs.filter_by_key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_key

+
+
+Constructs.filter_by_key(*keys, todict=False, cached=None)[source]
+

Select metadata constructs by key.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: optional

Select constructs that have a construct identifier +(e.g. 'dimensioncoordinate1') that matches any of +the given values.

+

If no keys are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select the construct with key ‘domainancillary0’:

+
>>> d = c.filter_by_key('domainancillary0')
+
+
+

Select the constructs with keys ‘dimensioncoordinate1’ or +‘fieldancillary0’:

+
>>> d = c.filter_by_key('dimensioncoordinate1', 'fieldancillary0')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_measure.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_measure.html new file mode 100644 index 0000000000..d3f0e84156 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_measure.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.Constructs.filter_by_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_measure

+
+
+Constructs.filter_by_measure(*measures, todict=False, cached=None)[source]
+

Select cell measure constructs by measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
measures: optional

Select cell measure constructs that have a measure, +defined by their get_measure methods, that matches +any of the given values.

+

If no measures are provided then all cell measure +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
Constructs

The selected cell measure constructs and their +construct keys.

+
+
+
+
+

Examples:

+
>>> print(t.constructs.filter_by_type('measure'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'cellmeasure1': <CellMeasure: measure:volume(3, 9, 10) m3>}
+
+
+

Select cell measure constructs that have a measure of ‘area’:

+
>>> print(c.filter_by_measure('area'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+
+
+

Select cell measure constructs that have a measure of ‘area’ +or ‘volume’:

+
>>> print(c.filter_by_measure('area', 'volume'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'cellmeasure1': <CellMeasure: measure:volume(3, 9, 10) m3>}
+
+
+

Select cell measure constructs that have a measure of start +with the letter “a” or “v”:

+
>>> print(c.filter_by_measure(re.compile('^a|v')))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'cellmeasure1': <CellMeasure: measure:volume(3, 9, 10) m3>}
+
+
+

Select cell measure constructs that have a measure of any +value:

+
>>> print(c.filer_by_measure())
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'cellmeasure1': <CellMeasure: measure:volume(3, 9, 10) m3>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_method.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_method.html new file mode 100644 index 0000000000..8df6959387 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_method.html @@ -0,0 +1,234 @@ + + + + + + + cfdm.Constructs.filter_by_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_method

+
+
+Constructs.filter_by_method(*methods, todict=False, cached=None)[source]
+

Select cell method constructs by method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
methods: optional

Select cell method constructs that have a method, +defined by their get_method methods, that matches +any of the given values.

+

If no methods are provided then all cell method +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+
>>> print(c.constructs.filter_by_type('cell_method'))
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+

Select cell method constructs that have a method of ‘mean’:

+
>>> print(c.filter_by_method('mean'))
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>}
+
+
+

Select cell method constructs that have a method of ‘mean’ or +‘maximum’:

+
>>> print(c.filter_by_method('mean', 'maximum'))
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+

Select cell method constructs that have a method that contain +the letter ‘x’:

+
>>> import re
+>>> print(c.filter_by_method(re.compile('x')))
+Constructs:
+{'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+

Select cell method constructs that have a method of any value:

+
>>> print(c.filter_by_method())
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_naxes.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_naxes.html new file mode 100644 index 0000000000..25776b2ed7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_naxes.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Constructs.filter_by_naxes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_naxes

+
+
+Constructs.filter_by_naxes(*naxes, todict=False, cached=None)[source]
+

Selects constructs by the number of axes their data spans.

+

Specifically, selects metadata constructs by the number of +domain axis constructs spanned by their data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
naxes: optional

Select constructs that have data whose number of +dimensions matches any of the given values.

+

If no values are provided then all constructs that do +or could have data, spanning any domain axes +constructs, are selected.

+

A value may be any object that can match an integer +via ==.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select constructs that contain data that spans two domain axis +constructs:

+
>>> d = c.filter_by_naxes(2)
+
+
+

Select constructs that contain data that spans one or two +domain axis constructs:

+
>>> d = c.filter_by_ncdim(1, 2)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncdim.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncdim.html new file mode 100644 index 0000000000..e4cbba82e9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncdim.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Constructs.filter_by_ncdim — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_ncdim

+
+
+Constructs.filter_by_ncdim(*ncdims, todict=False, cached=None)[source]
+

Select domain axis constructs by netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
ncdims: optional

Select constructs that have a netCDF dimension name, +defined by their nc_get_dimension methods, that +match any of the given values.

+

If no netCDF dimension names are provided then all +constructs that do or could have a netCDF dimension +name are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select the domain axis constructs with netCDF dimension name +‘time’:

+
>>> d = c.filter_by_ncdim('time')
+
+
+

Select the domain axis constructs with netCDF dimension name +‘time’ or ‘lat’:

+
>>> d = c.filter_by_ncdim('time', 'lat')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncvar.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncvar.html new file mode 100644 index 0000000000..c078370993 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_ncvar.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Constructs.filter_by_ncvar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_ncvar

+
+
+Constructs.filter_by_ncvar(*ncvars, todict=False, cached=None)[source]
+

Select domain axis constructs by netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
ncvars: optional

Select constructs that have a netCDF variable name, +defined by their nc_get_variable methods, that +match any of the given values.

+

If no netCDF variable names are provided then all +constructs that do or could have a netCDF variable +name are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select the constructs with netCDF variable name ‘time’:

+
>>> d = c.filter_by_ncvar('time')
+
+
+

Select the constructs with netCDF variable name ‘time’ or +‘lat’:

+
>>> d = c.filter_by_ncvar('time', 'lat')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_property.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_property.html new file mode 100644 index 0000000000..ce68375e35 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_property.html @@ -0,0 +1,249 @@ + + + + + + + cfdm.Constructs.filter_by_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_property

+
+
+Constructs.filter_by_property(*property_mode, **properties)[source]
+

Select metadata constructs by property.

+

Unlike the other “filter_by_” methods, this method has no +todict or cached parameters. To get the results as a +dictionary, use the todict method on the result, or for +faster performance use the filter method. For instance, to +get a dictionary of all constructs with a long_name of +'time' you could do +c.filter_by_property(long_name="time").todict(), or the +faster d = c.filter(filter_by_property={"long_name": +"time"}, todict=True). To return a cached result, you have +to use the filter method: +c.filter(filter_by_property={"long_name": "time"}, +cached=x).

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
property_mode: optional

Define the behaviour when multiple properties are +provided:

+ ++++ + + + + + + + + + + + + + +

property_mode

Description

'and'

A construct is selected if it matches +all of the given properties.

'or'

A construct is selected when at least +one of its properties matches.

+

By default property_mode is 'and'.

+
+
properties: optional

Select constructs that have a CF property, defined by +their properties methods, that matches any of the +given values.

+

A property names and their given values are specified +by keyword argument names and values.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

The special value of None selects any construct that +has that property, regardless of the construct’s +property value.

+

If no properties are provided then all constructs that +do or could have CF properties, with any values, are +selected.

+
+
+
+
Returns
+
+
Constructs

The selected constructs.

+
+
+
+
+

Examples:

+

Select constructs that have a standard_name of ‘latitude’:

+
>>> d = c.filter_by_property(standard_name='latitude')
+
+
+

Select constructs that have a long_name of ‘height’ and +units of ‘m’:

+
>>> d = c.filter_by_property(long_name='height', units='m')
+
+
+

Select constructs that have a long_name of ‘height’ or a +foo of ‘bar’:

+
>>> d = c.filter_by_property('or', long_name='height', foo='bar')
+
+
+

Select constructs that have a standard_name which contains +start with the string ‘air’:

+
>>> import re
+>>> d = c.filter_by_property(standard_name=re.compile('^air'))
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_size.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_size.html new file mode 100644 index 0000000000..96d76aa8c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_size.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Constructs.filter_by_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_size

+
+
+Constructs.filter_by_size(*sizes, todict=False, cached=None)[source]
+

Select domain axis constructs by size.

+
+

New in version (cfdm): 1.7.3

+
+ +
+
Parameters
+
+
sizes: optional

Select domain axis constructs that have sizes, defined +by their get_size methods, that match any of the +given values.

+

If no sizes are provided then all domain axis +constructs are selected.

+

A value may be any object that can match an integer +via ==.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select domain axis constructs that have a size of 1:

+
>>> d = c.filter_by_size(1)
+
+
+

Select domain axis constructs that have a size of 1 or 96:

+
>>> d = c.filter_by_size(1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filter_by_type.html b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_type.html new file mode 100644 index 0000000000..d0cfae04b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filter_by_type.html @@ -0,0 +1,240 @@ + + + + + + + cfdm.Constructs.filter_by_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filter_by_type

+
+
+Constructs.filter_by_type(*types, todict=False, cached=None)[source]
+

Select metadata constructs by type.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
types: optional

Select constructs that have are of any of the given +types.

+

A type is specified by one of the following strings:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

type

Construct selected

'domain_ancillary'

Domain ancillary constructs

'dimension_coordinate'

Dimension coordinate constructs

'domain_axis'

Domain axis constructs

'auxiliary_coordinate'

Auxiliary coordinate constructs

'cell_measure'

Cell measure constructs

'coordinate_reference'

Coordinate reference constructs

'cell_method'

Cell method constructs

'field_ancillary'

Field ancillary constructs

+

If no types are provided then all constructs are selected.

+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
Constructs or dict or cached

The selected constructs, or a cached valued.

+
+
+
+
+

Examples:

+

Select dimension coordinate constructs:

+
>>> d = c.filter_by_type('dimension_coordinate')
+
+
+

Select dimension coordinate and field ancillary constructs:

+
>>> d = c.filter_by_type('dimension_coordinate', 'field_ancillary')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.filters_applied.html b/docs/1.9.0.1/method/cfdm.Constructs.filters_applied.html new file mode 100644 index 0000000000..279171e3cc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.filters_applied.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Constructs.filters_applied — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.filters_applied

+
+
+Constructs.filters_applied()[source]
+

A history of filters that have been applied.

+

The history is returned in a tuple. The last element of the +tuple describes the last filter applied. Each element is a +single-entry dictionary whose key is the name of the filter +method that was used, with a value that gives the arguments +that were passed to the call of that method. If no filters +have been applied then the tuple is empty.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
tuple

The history of filters that have been applied, ordered +from first to last. If no filters have been applied +then the tuple is empty.

+
+
+
+
+

Examples:

+
>>> print(c)
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'coordinatereference1': <CoordinateReference: grid_mapping_name:rotated_latitude_longitude>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'domainaxis1': <DomainAxis: size(10)>,
+ 'domainaxis2': <DomainAxis: size(9)>}
+>>> c.filters_applied()
+()
+>>> c = c.filter_by_type('dimension_coordinate', 'auxiliary_coordinate')
+>>> c.filters_applied()
+({'filter_by_type': ('dimension_coordinate', 'auxiliary_coordinate')},)
+>>> c = c.filter_by_property(units='degrees')
+>>> c.filters_applied()
+({'filter_by_type': ('dimension_coordinate', 'auxiliary_coordinate')},
+ {'filter_by_property': ((), {'units': 'degrees'})})
+>>> c = c.filter_by_property('or', standard_name='grid_latitude', axis='Y')
+>>> c.filters_applied()
+({'filter_by_type': ('dimension_coordinate', 'auxiliary_coordinate')},
+ {'filter_by_property': ((), {'units': 'degrees'})},
+ {'filter_by_property': (('or',), {'axis': 'Y', 'standard_name': 'grid_latitude'})})
+>>> print(c)
+Constructs:
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.get.html b/docs/1.9.0.1/method/cfdm.Constructs.get.html new file mode 100644 index 0000000000..57859325d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.get.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.Constructs.get — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.get

+
+
+Constructs.get(key, default=None)[source]
+

Returns the construct for the key, else default.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

items, keys, values

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.get_data_axes.html b/docs/1.9.0.1/method/cfdm.Constructs.get_data_axes.html new file mode 100644 index 0000000000..65876efff1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.get_data_axes.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Constructs.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.get_data_axes

+
+
+Constructs.get_data_axes(key, default=ValueError())[source]
+

Return the keys of the axes spanned by a construct’s data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the data.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.inverse_filter.html b/docs/1.9.0.1/method/cfdm.Constructs.inverse_filter.html new file mode 100644 index 0000000000..3aeb23040d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.inverse_filter.html @@ -0,0 +1,249 @@ + + + + + + + cfdm.Constructs.inverse_filter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.inverse_filter

+
+
+Constructs.inverse_filter(depth=None)[source]
+

Return the inverse of previous filters.

+

By default, the inverse comprises all of the constructs that +were not selected by all previously applied filters. If no +filters have been applied, then this will result in empty +Constructs instance being returned.

+

If the depth parameter is set to N then the inverse is +relative to the constructs selected by the N-th most +recently applied filter.

+

A history of the filters that have been applied is returned in +a tuple by the filters_applied method. The last element of +the tuple describes the last filter applied. If no filters +have been applied then the tuple is empty.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
depth: int, optional

If set to N then the inverse is relative to the +constructs selected by the N-th most recently +applied filter. By default the inverse is relative to +the constructs selected by all previously applied +filters. N may be larger than the total number of +filters applied, which results in the default +behaviour.

+
+
+
+
Returns
+
+
Constructs

The constructs, and their construct keys, that were +not selected by the last filter applied. If no +filtering has been applied, or the last filter was an +inverse filter, then an empty Constructs instance is +returned.

+
+
+
+
+

Examples:

+
>>> print(c)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> print(c.inverse_filter())
+Constructs:
+{}
+>>> d = c.filter_by_type('dimension_coordinate', 'cell_method')
+>>> print(d)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+>>> print(d.inverse_filter())
+Constructs:
+{'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> e = d.filter_by_method('mean')
+>>> print(e)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>}
+>>> print(e.inverse_filter(1))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+>>> print(e.inverse_filter())
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> print(e.inverse_filter(1).inverse_filter())
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.items.html b/docs/1.9.0.1/method/cfdm.Constructs.items.html new file mode 100644 index 0000000000..3269f0e532 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.items.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Constructs.items — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.items

+
+
+Constructs.items()[source]
+

Return the items as (construct key, construct) pairs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, keys, values

+
+
+
Returns
+
+
dict_items

The construct key and constructs respectively as +key-value pairs in a Python dict_items iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> c = f.constructs
+>>> c_items = c.items()
+>>> print(c_items)
+dict_items([('dimensioncoordinate0', <DimensionCoordinate: latitude(5) degrees_north>),
+            ('dimensioncoordinate1', <DimensionCoordinate: longitude(8) degrees_east>),
+            ('dimensioncoordinate2', <DimensionCoordinate: time(1) days since 2018-12-01 >),
+            ('domainaxis0', <DomainAxis: size(5)>),
+            ('domainaxis1', <DomainAxis: size(8)>),
+            ('domainaxis2', <DomainAxis: size(1)>),
+            ('cellmethod0', <CellMethod: area: mean>)])
+>>> type(c_items)
+<class 'dict_items'>
+>>> dict(c_items)
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'cellmethod0': <CellMethod: area: mean>,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.key.html b/docs/1.9.0.1/method/cfdm.Constructs.key.html new file mode 100644 index 0000000000..42da540aae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.key.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Constructs.key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.key

+
+
+Constructs.key(default=ValueError())[source]
+

Return the construct key of the sole metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, keys, value

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there +is not exactly one construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The construct key.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> c = f.constructs
+>>> d = cfdm.DimensionCoordinate(
+...     properties={
+...         'standard_name': 'latitude', 'units': 'degrees_north'},
+...     data=cfdm.Data(range(5))
+... )
+>>> c._set_construct(d)
+'dimensioncoordinate0'
+>>> print(c)
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>}
+>>> c.key()
+'dimensioncoordinate0'
+>>> c.value()
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.keys.html b/docs/1.9.0.1/method/cfdm.Constructs.keys.html new file mode 100644 index 0000000000..319dae84cb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.keys.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Constructs.keys — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.keys

+
+
+Constructs.keys()[source]
+

Return all of the construct keys, in arbitrary order.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, items, values

+
+
+
Returns
+
+
dict_keys

The construct keys as a Python dict_keys iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> c = f.constructs
+>>> c_keys = c.keys()
+>>> print(c_keys)
+dict_keys(['domainaxis0',
+           'domainaxis1',
+           'domainaxis2',
+           'dimensioncoordinate0',
+           'dimensioncoordinate1',
+           'dimensioncoordinate2',
+           'cellmethod0'])
+>>> type(c_keys)
+<class 'dict_keys'>
+>>> list(c_keys)
+['domainaxis0',
+ 'domainaxis1',
+ 'domainaxis2',
+ 'dimensioncoordinate0',
+ 'dimensioncoordinate1',
+ 'dimensioncoordinate2',
+ 'cellmethod0']
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.new_identifier.html b/docs/1.9.0.1/method/cfdm.Constructs.new_identifier.html new file mode 100644 index 0000000000..0c963384a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.new_identifier.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Constructs.new_identifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.new_identifier

+
+
+Constructs.new_identifier(construct_type)[source]
+

Return a new, unused construct key.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
construct_type: str

The construct type for which the identifier is being +created.

+
+
Parameter example:

construct_type='dimension_coordinate'

+
+
+
+
+
+
Returns
+
+
str

The new construct identifier.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> c = f.constructs
+>>> c.keys()
+['domainaxis0',
+ 'domainaxis1',
+ 'domainaxis2',
+ 'dimensioncoordinate0',
+ 'dimensioncoordinate1',
+ 'dimensioncoordinate2',
+ 'cellmethod0']
+>>> c.new_identifier('domain_axis')
+'domainaxis3'
+>>> c.new_identifier('cell_method')
+'cellmethod1'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.ordered.html b/docs/1.9.0.1/method/cfdm.Constructs.ordered.html new file mode 100644 index 0000000000..81e167519e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.ordered.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Constructs.ordered — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.ordered

+
+
+Constructs.ordered()[source]
+

Return the constructs in their predetermined order.

+

For cell method constructs, the predetermined order is that in +which they where added. There is no predetermined ordering for +all other construct types, and a exception is raised if any +non-cell method constructs are present.

+

Deprecated at version (cfdm) 1.9.0.0, since all metadata +constructs are now stored in the order in which they where +added.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
collections.OrderedDict

The constructs and their construct keys, in their +predetermined order.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> c = f.constructs
+>>> c.ordered()
+{}
+>>> m1 = cfdm.CellMethod(axes=['domainaxis1'], method='mean')
+>>> c._set_construct(m1, key='cell_method_for_axis_1')
+'cell_method_for_axis_1'
+>>> m2 = cfdm.CellMethod(axes=['domainaxis0'], method='minimum')
+>>> c._set_construct(m2, key='cell_method_for_axis_0')
+'cell_method_for_axis_0'
+>>> print(c)
+Constructs:
+{'cell_method_for_axis_0': <CellMethod: domainaxis0: minimum>,
+ 'cell_method_for_axis_1': <CellMethod: domainaxis1: mean>}
+>>> c.ordered()
+OrderedDict([('cell_method_for_axis_1', <CellMethod: domainaxis1: mean>),
+             ('cell_method_for_axis_0', <CellMethod: domainaxis0: minimum>)])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.replace.html b/docs/1.9.0.1/method/cfdm.Constructs.replace.html new file mode 100644 index 0000000000..9b0ca0b661 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.replace.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Constructs.replace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.replace

+
+
+Constructs.replace(key, construct, axes=None, copy=True)[source]
+

Replace one metadata construct with another.

+
+

Note

+

No checks on the axes are done.

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.shallow_copy.html b/docs/1.9.0.1/method/cfdm.Constructs.shallow_copy.html new file mode 100644 index 0000000000..a1f3314410 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.shallow_copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.Constructs.shallow_copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.shallow_copy

+
+
+Constructs.shallow_copy(_ignore=None)[source]
+

Return a shallow copy.

+

f.shallow_copy() is equivalent to copy.copy(f).

+

Any in-place changes to the actual constructs of the copy will +not be seen in the original Constructs object, and vice +versa, but the copy is otherwise independent of its parent.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Constructs

The shallow copy.

+
+
+
+
+

Examples:

+
>>> g = f.shallow_copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.todict.html b/docs/1.9.0.1/method/cfdm.Constructs.todict.html new file mode 100644 index 0000000000..7cef50bf14 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.todict.html @@ -0,0 +1,174 @@ + + + + + + + cfdm.Constructs.todict — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.todict

+
+
+Constructs.todict(copy=False)[source]
+

Return a dictionary of the metadata constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
Parameters
+
+
copy: bool, optional

If True then deep copy the metadata construct values.

+
+
+
+
Returns
+
+
dict

The dictionary representation, keyed by construct +identifiers with metadata construct values.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.unfilter.html b/docs/1.9.0.1/method/cfdm.Constructs.unfilter.html new file mode 100644 index 0000000000..5325aaaa99 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.unfilter.html @@ -0,0 +1,237 @@ + + + + + + + cfdm.Constructs.unfilter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.unfilter

+
+
+Constructs.unfilter(depth=None, copy=True)[source]
+

Return the constructs that existed prior to previous filters.

+

By default, the unfiltered constructs are those that existed +before all previously applied filters.

+

If the depth parameter is set to N then the unfiltered +constructs are those that existed before the N-th most +recently applied filter.

+

A history of the filters that have been applied is returned in +a tuple by the filters_applied method. The last element of +the tuple describes the last filter applied. If no filters +have been applied then the tuple is empty.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
depth: int, optional

If set to N then return the constructs selected by +the N-th most recently applied filter. By default +the constructs from before all previously applied +filters are returned. N may be larger than the +total number of filters applied, which results in the +default behaviour.

+
+
+
+
Returns
+
+
Constructs

The constructs, and their construct keys, that existed +before the last filter was applied. If no filters have +been applied then all of the constructs are returned.

+
+
+
+
+

Examples:

+
>>> print(c)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> d = c.filter_by_type('dimension_coordinate', 'cell_method')
+>>> print(d)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+>>> d.unfilter().equals(c)
+True
+>>> e = d.filter_by_method('mean')
+>>> print(e)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>}
+>>> c.unfilter().equals(c)
+True
+>>> c.unfilter(0).equals(c)
+True
+>>> e.unfilter().equals(c)
+True
+>>> e.unfilter(1).equals(d)
+True
+>>> e.unfilter(2).equals(c)
+True
+
+
+

If no filters have been applied then the unfiltered constructs are +unchanged:

+
>>> c.filters_applied()
+()
+>>> c.unfilter().equals(c)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.value.html b/docs/1.9.0.1/method/cfdm.Constructs.value.html new file mode 100644 index 0000000000..fb5f2c96d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.value.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Constructs.value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.value

+
+
+Constructs.value(default=ValueError())[source]
+

Return the sole metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, key, values

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there +is not exactly one construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> c = f.constructs
+>>> d = cfdm.DimensionCoordinate(
+...     properties={
+...         'standard_name': 'latitude', 'units': 'degrees_north'},
+...     data=cfdm.Data(range(5))
+... )
+>>> c._set_construct(d)
+'dimensioncoordinate0'
+>>> print(c)
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>}
+>>> c.key()
+'dimensioncoordinate0'
+>>> c.value()
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Constructs.values.html b/docs/1.9.0.1/method/cfdm.Constructs.values.html new file mode 100644 index 0000000000..1955e43e85 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Constructs.values.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Constructs.values — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Constructs.values

+
+
+Constructs.values()[source]
+

Return all of the metadata constructs, in arbitrary order.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, items, keys

+
+
+
Returns
+
+
dict_values

The constructs as a Python dict_values iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> c = f.constructs
+>>> c_values = c.values()
+>>> print(c_values)
+dict_values([<DimensionCoordinate: latitude(5) degrees_north>,
+             <DimensionCoordinate: longitude(8) degrees_east>,
+             <DimensionCoordinate: time(1) days since 2018-12-01 >,
+             <DomainAxis: size(5)>,
+             <DomainAxis: size(8)>,
+             <DomainAxis: size(1)>,
+             <CellMethod: area: mean>])
+>>> type(c_values)
+<class 'dict_values'>
+>>> list(c_values)
+[<DimensionCoordinate: latitude(5) degrees_north>,
+ <DimensionCoordinate: longitude(8) degrees_east>,
+ <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ <DomainAxis: size(5)>,
+ <DomainAxis: size(8)>,
+ <DomainAxis: size(1)>,
+ <CellMethod: area: mean>]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.__bool__.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__bool__.html new file mode 100644 index 0000000000..281873cb2b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__bool__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CoordinateConversion.__bool__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.__bool__

+
+
+CoordinateConversion.__bool__()[source]
+

Called by the bool built-in function.

+

x.__bool__() <==> bool(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__deepcopy__.html new file mode 100644 index 0000000000..f1fd9a6bdf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.CoordinateConversion.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.__deepcopy__

+
+
+CoordinateConversion.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.CoordinateConversion()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.__nonzero__.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__nonzero__.html new file mode 100644 index 0000000000..ace0925713 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__nonzero__.html @@ -0,0 +1,150 @@ + + + + + + + cfdm.CoordinateConversion.__nonzero__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.__nonzero__

+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.__repr__.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__repr__.html new file mode 100644 index 0000000000..0cbcafbf6d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CoordinateConversion.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.__repr__

+
+
+CoordinateConversion.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.__str__.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__str__.html new file mode 100644 index 0000000000..71e050a605 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.__str__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.CoordinateConversion.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.__str__

+
+
+CoordinateConversion.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_method_exclusions.html new file mode 100644 index 0000000000..38c7f44f7d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CoordinateConversion._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion._docstring_method_exclusions

+
+
+CoordinateConversion._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_package_depth.html new file mode 100644 index 0000000000..19f20e7004 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.CoordinateConversion._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion._docstring_package_depth

+
+
+CoordinateConversion._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_special_substitutions.html new file mode 100644 index 0000000000..4726339b4d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CoordinateConversion._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion._docstring_special_substitutions

+
+
+classmethod CoordinateConversion._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_substitutions.html new file mode 100644 index 0000000000..7deb0cafb3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateConversion._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion._docstring_substitutions

+
+
+CoordinateConversion._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_domain_ancillaries.html new file mode 100644 index 0000000000..37c2e3cc69 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.CoordinateConversion.clear_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.clear_domain_ancillaries

+
+
+CoordinateConversion.clear_domain_ancillaries()[source]
+

Remove all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_parameters.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_parameters.html new file mode 100644 index 0000000000..0a24e931d7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CoordinateConversion.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.clear_parameters

+
+
+CoordinateConversion.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.copy.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.copy.html new file mode 100644 index 0000000000..8414ad8b6c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CoordinateConversion.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.copy

+
+
+CoordinateConversion.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CoordinateConversion

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_domain_ancillary.html new file mode 100644 index 0000000000..9951a74826 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_domain_ancillary.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateConversion.del_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.del_domain_ancillary

+
+
+CoordinateConversion.del_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Delete a domain ancillary.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the domain ancillary to be deleted.

+
+
Parameter example:

domain_ancillary='orog'

+
+
+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed domain ancillary key.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_parameter.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_parameter.html new file mode 100644 index 0000000000..6357ead9a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CoordinateConversion.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.del_parameter

+
+
+CoordinateConversion.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.domain_ancillaries.html new file mode 100644 index 0000000000..f4d081fbeb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.CoordinateConversion.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.domain_ancillaries

+
+
+CoordinateConversion.domain_ancillaries()[source]
+

Return all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.equals.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.equals.html new file mode 100644 index 0000000000..2229784f2d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.equals.html @@ -0,0 +1,237 @@ + + + + + + + cfdm.CoordinateConversion.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.equals

+
+
+CoordinateConversion.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the named parameters must be the same, with the same values +and data types, and vector-valued parameters must also have +same the size and be element-wise equal (see the +ignore_data_type parameter), and

  • +
+
    +
  • the names of domain ancillary constructs are the same.

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another CoordinateConversion +instance, or a subclass of one. If ignore_type is +True then cfdm.CoordinateConversion(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> c.equals(c)
+True
+>>> c.equals(c.copy())
+True
+>>> c.equals(None)
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_domain_ancillary.html new file mode 100644 index 0000000000..8519abd1db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_domain_ancillary.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CoordinateConversion.get_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.get_domain_ancillary

+
+
+CoordinateConversion.get_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Return a domain ancillary term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_parameter.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_parameter.html new file mode 100644 index 0000000000..61122f52ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.CoordinateConversion.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.get_parameter

+
+
+CoordinateConversion.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_domain_ancillary.html new file mode 100644 index 0000000000..09a4298990 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_domain_ancillary.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.CoordinateConversion.has_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.has_domain_ancillary

+
+
+CoordinateConversion.has_domain_ancillary(domain_ancillary)[source]
+

Whether a domain ancillary has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_parameter.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_parameter.html new file mode 100644 index 0000000000..37f21e12d4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.CoordinateConversion.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.has_parameter

+
+
+CoordinateConversion.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.parameters.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.parameters.html new file mode 100644 index 0000000000..6a410bea91 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.CoordinateConversion.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.parameters

+
+
+CoordinateConversion.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillaries.html new file mode 100644 index 0000000000..cab60483db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillaries.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.CoordinateConversion.set_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.set_domain_ancillaries

+
+
+CoordinateConversion.set_domain_ancillaries(domain_ancillaries, copy=True)[source]
+

Set domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillaries: dict

Store the domain ancillaries from the dictionary supplied.

+
+
Parameter example:

domain_ancillaries={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +domain_ancillaries parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillary.html new file mode 100644 index 0000000000..7930e86a6e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_domain_ancillary.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CoordinateConversion.set_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.set_domain_ancillary

+
+
+CoordinateConversion.set_domain_ancillary(term, value, copy=True)[source]
+

Set an domain ancillary-valued term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
term: str

The name of the term to be set.

+
+
value:

The value for the term.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameter.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameter.html new file mode 100644 index 0000000000..8695d2ea9f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.CoordinateConversion.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.set_parameter

+
+
+CoordinateConversion.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameters.html b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameters.html new file mode 100644 index 0000000000..b01c80e3d6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateConversion.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateConversion.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateConversion.set_parameters

+
+
+CoordinateConversion.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.__deepcopy__.html new file mode 100644 index 0000000000..c6fa7b4407 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.CoordinateReference.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.__deepcopy__

+
+
+CoordinateReference.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.CoordinateReference()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.__repr__.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.__repr__.html new file mode 100644 index 0000000000..7f9f545afd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CoordinateReference.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.__repr__

+
+
+CoordinateReference.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.__str__.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.__str__.html new file mode 100644 index 0000000000..9e2d881c25 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.CoordinateReference.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.__str__

+
+
+CoordinateReference.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_method_exclusions.html new file mode 100644 index 0000000000..2cd8c1d906 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CoordinateReference._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference._docstring_method_exclusions

+
+
+CoordinateReference._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_package_depth.html new file mode 100644 index 0000000000..9e9112c31e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.CoordinateReference._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference._docstring_package_depth

+
+
+CoordinateReference._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_special_substitutions.html new file mode 100644 index 0000000000..2849c203fa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CoordinateReference._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference._docstring_special_substitutions

+
+
+classmethod CoordinateReference._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_substitutions.html new file mode 100644 index 0000000000..f662e2a400 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateReference._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference._docstring_substitutions

+
+
+CoordinateReference._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.clear_coordinates.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.clear_coordinates.html new file mode 100644 index 0000000000..9833550b2a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.clear_coordinates.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.CoordinateReference.clear_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.clear_coordinates

+
+
+CoordinateReference.clear_coordinates()[source]
+

Remove all references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
set

The removed coordinate construct keys.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> sorted(r.coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> sorted(r.clear_coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.coordinates.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.coordinates.html new file mode 100644 index 0000000000..dfbb5c119c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.coordinates.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.CoordinateReference.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.coordinates

+
+
+CoordinateReference.coordinates()[source]
+

Return all references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
set

The coordinate construct keys.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> sorted(r.coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> sorted(r.clear_coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.copy.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.copy.html new file mode 100644 index 0000000000..0156e250c1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.CoordinateReference.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.copy

+
+
+CoordinateReference.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CoordinateReference

The deep copy.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> s = r.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.creation_commands.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.creation_commands.html new file mode 100644 index 0000000000..184261cba6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.creation_commands.html @@ -0,0 +1,239 @@ + + + + + + + cfdm.CoordinateReference.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.creation_commands

+
+
+CoordinateReference.creation_commands(namespace=None, indent=0, string=True, name='c', header=True)[source]
+

Returns the commands to create the coordinate reference.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
name: str, optional

The name of the CoordinateReference instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.CoordinateReference(
+...     coordinates=['dimensioncoordinate0']
+... )
+>>> x.datum.set_parameter('earth_radius', 6371007)
+>>> x.coordinate_conversion.set_parameters(
+...     {'standard_name': 'atmosphere_hybrid_height_coordinate',
+...      'computed_standard_name': 'altitude'}
+... )
+>>> x.coordinate_conversion.set_domain_ancillaries(
+...     {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+... )
+>>> print(x.creation_commands(header=False))
+c = cfdm.CoordinateReference()
+c.set_coordinates({'dimensioncoordinate0'})
+c.datum.set_parameter('earth_radius', 6371007)
+c.coordinate_conversion.set_parameter('standard_name', 'atmosphere_hybrid_height_coordinate')
+c.coordinate_conversion.set_parameter('computed_standard_name', 'altitude')
+c.coordinate_conversion.set_domain_ancillaries({'a': 'domainancillary0', 'b': 'domainancillary1', 'orog': 'domainancillary2'})
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate.html new file mode 100644 index 0000000000..3fd40c2b5a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.CoordinateReference.del_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.del_coordinate

+
+
+CoordinateReference.del_coordinate(key, default=ValueError())[source]
+

Remove a reference to a coordinate construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
default: optional

Return the value of the default parameter if the +coordinate construct has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+

The removed coordinate construct key.

+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.del_coordinate('dimensioncoordinate0')
+'dimensioncoordinate0'
+>>> r.coordinates()
+{'auxiliarycoordinate1'}
+>>> r.del_coordinate('dimensioncoordinate0', 'not set')
+'not set'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate_conversion.html new file mode 100644 index 0000000000..70114b13e4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_coordinate_conversion.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.CoordinateReference.del_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.del_coordinate_conversion

+
+
+CoordinateReference.del_coordinate_conversion()[source]
+

Remove the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
CoordinateConversion

The removed coordinate conversion component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> orog = cfdm.DomainAncillary()
+>>> c = cfdm.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.del_datum.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_datum.html new file mode 100644 index 0000000000..4786d5d7a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.del_datum.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CoordinateReference.del_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.del_datum

+
+
+CoordinateReference.del_datum()[source]
+

Remove the datum component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

datum, get_datum, set_datum

+
+
+
Returns
+
+
Datum

The removed datum component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> d = cfdm.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.dump.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.dump.html new file mode 100644 index 0000000000..61b999beff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.CoordinateReference.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.dump

+
+
+CoordinateReference.dump(display=True, _omit_properties=None, field=None, key='', _level=0, _title=None, _construct_names=None, _auxiliary_coordinates=None, _dimension_coordinates=None)[source]
+

A full description of the coordinate reference construct.

+

Returns a description of all properties, including those of +components.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.equals.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.equals.html new file mode 100644 index 0000000000..41455e88df --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.equals.html @@ -0,0 +1,247 @@ + + + + + + + cfdm.CoordinateReference.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.equals

+
+
+CoordinateReference.equals(other, rtol=None, atol=None, verbose=None, ignore_type=False)[source]
+

Whether two coordinate reference constructs are the same.

+

Equality is strict by default. This means that:

+
    +
  • the datum and coordinate conversion components must have the +same string and numerical parameters.

  • +
+

The dimension coordinate, auxiliary coordinate and domain +ancillary constructs of the coordinate reference constructs are +not considered, because they may only be correctly interpreted +by the field constructs that contain the coordinate reference +constructs in question. They are, however, taken into account when +two fields constructs are tested for equality.

+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is only +possible with another coordinate reference construct, or a +subclass of one. See the ignore_type parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another CoordinateReference +instance, or a subclass of one. If ignore_type is +True then cfdm.CoordinateReference(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two coordinate reference constructs are equal.

+
+
+
+
+

Examples:

+
>>> c = cfdm.CoordinateReference(
+...     coordinates=['dimensioncoordinate0']
+... )
+>>> c.equals(c)
+True
+>>> c.equals(c.copy())
+True
+>>> c.equals('not a coordinate reference')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.get_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.get_coordinate_conversion.html new file mode 100644 index 0000000000..2b59793fab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.get_coordinate_conversion.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.CoordinateReference.get_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.get_coordinate_conversion

+
+
+CoordinateReference.get_coordinate_conversion()[source]
+

Get the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
CoordinateConversion

The coordinate conversion component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> orog = cfdm.DomainAncillary()
+>>> c = cfdm.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.get_datum.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.get_datum.html new file mode 100644 index 0000000000..e111511fac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.get_datum.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.CoordinateReference.get_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.get_datum

+
+
+CoordinateReference.get_datum()[source]
+

Return the datum component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
Datum

The datum component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> d = cfdm.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.has_coordinate.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.has_coordinate.html new file mode 100644 index 0000000000..a9cee13e95 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.has_coordinate.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CoordinateReference.has_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.has_coordinate

+
+
+CoordinateReference.has_coordinate(key)[source]
+

Whether a reference to a coordinate construct has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
+
Returns
+
+
bool

True if the coordinate construct key has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.has_coordinate('dimensioncoordinate0')
+True
+>>> r.has_coordinate('dimensioncoordinate1')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.identities.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.identities.html new file mode 100644 index 0000000000..218667a97c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.identities.html @@ -0,0 +1,219 @@ + + + + + + + cfdm.CoordinateReference.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.identities

+
+
+CoordinateReference.identities(generator=False, **kwargs)[source]
+

Returns all possible identities.

+

The identities comprise:

+
    +
  • The standard_name coordinate conversion parameter, preceded +by 'standard_name:'.

  • +
  • The grid_mapping_name coordinate conversion parameter, +preceded by 'grid_mapping_name:'.

  • +
  • The netCDF variable name (corresponding to a netCDF grid mapping +variable), preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('coordinatereference0')
+>>> c.identities()
+['standard_name:atmosphere_hybrid_height_coordinate']
+
+
+
>>> c = f.get_construct('coordinatereference1')
+>>> c.identities()
+['grid_mapping_name:rotated_latitude_longitude',
+ 'ncvar%rotated_latitude_longitude']
+>>> for i in c.identities(generator=True):
+...     print(i)
+...
+grid_mapping_name:rotated_latitude_longitude
+ncvar%rotated_latitude_longitude
+
+
+
>>> c = cfdm.CoordinateReference()
+>>> c.identities()
+[]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.identity.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.identity.html new file mode 100644 index 0000000000..0d8723920b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.identity.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateReference.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.identity

+
+
+CoordinateReference.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name coordinate conversion parameter, preceded +by 'standard_name:'.

  • +
  • The grid_mapping_name coordinate conversion parameter, +preceded by 'grid_mapping_name:'.

  • +
  • The netCDF variable name (corresponding to a netCDF grid mapping +variable), preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.example_field(1)
+>>> c = f.get_construct('coordinatereference0')
+>>> c.identity()
+'standard_name:atmosphere_hybrid_height_coordinate'
+
+
+
>>> c = f.get_construct('coordinatereference1')
+>>> c.identity()
+'grid_mapping_name:rotated_latitude_longitude'
+
+
+
>>> c = cfdm.CoordinateReference()
+>>> c.identity()
+''
+>>> c.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_clear_variable_groups.html new file mode 100644 index 0000000000..048a650eec --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.CoordinateReference.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_clear_variable_groups

+
+
+CoordinateReference.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_del_variable.html new file mode 100644 index 0000000000..7712fe04ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CoordinateReference.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_del_variable

+
+
+CoordinateReference.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_get_variable.html new file mode 100644 index 0000000000..2a78275454 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CoordinateReference.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_get_variable

+
+
+CoordinateReference.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_has_variable.html new file mode 100644 index 0000000000..266489f5a4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.CoordinateReference.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_has_variable

+
+
+CoordinateReference.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable.html new file mode 100644 index 0000000000..9d4590fde6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.CoordinateReference.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_set_variable

+
+
+CoordinateReference.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable_groups.html new file mode 100644 index 0000000000..a9a756f693 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.CoordinateReference.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_set_variable_groups

+
+
+CoordinateReference.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_variable_groups.html new file mode 100644 index 0000000000..224264fb1d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.CoordinateReference.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.nc_variable_groups

+
+
+CoordinateReference.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate.html new file mode 100644 index 0000000000..cc11cd906d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.CoordinateReference.set_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.set_coordinate

+
+
+CoordinateReference.set_coordinate(key)[source]
+

Set a reference to a coordinate construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinate('dimensioncoordinate0')
+>>> r.coordinates()
+{'dimensioncoordinate0'}
+>>> r.has_coordinate('dimensioncoordinate0')
+True
+>>> r.has_coordinate('auxiliarycoordinate0')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate_conversion.html new file mode 100644 index 0000000000..f659363c5f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinate_conversion.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.CoordinateReference.set_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.set_coordinate_conversion

+
+
+CoordinateReference.set_coordinate_conversion(coordinate_conversion, copy=True)[source]
+

Set the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
coordinate_conversion: CoordinateConversion

The coordinate conversion component to be inserted.

+
+
copy: bool, optional

If False then do not copy the coordinate conversion prior +to insertion. By default the coordinate conversion is +copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> orog = cfdm.DomainAncillary()
+>>> c = cfdm.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinates.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinates.html new file mode 100644 index 0000000000..781f87e279 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_coordinates.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.CoordinateReference.set_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.set_coordinates

+
+
+CoordinateReference.set_coordinates(coordinates)[source]
+

Set references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
coordinates: (sequence of) str

The coordinate construct keys to be set.

+
+
Parameter example:

coordinates=['dimensioncoordinate0']

+
+
Parameter example:

coordinates='dimensioncoordinate0'

+
+
Parameter example:

coordinates=set(['dimensioncoordinate0', 'auxiliarycoordinate1'])

+
+
Parameter example:

coordinates=[]

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.clear_coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.CoordinateReference.set_datum.html b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_datum.html new file mode 100644 index 0000000000..f486c428a9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.CoordinateReference.set_datum.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.CoordinateReference.set_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.CoordinateReference.set_datum

+
+
+CoordinateReference.set_datum(datum, copy=True)[source]
+

Set the datum component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

datum, del_datum, get_datum

+
+
+
Parameters
+
+
datum: Datum

The datum component to be inserted.

+
+
copy: bool, optional

If False then do not copy the datum prior to insertion. By +default the datum is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.CoordinateReference()
+>>> d = cfdm.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Count.__deepcopy__.html new file mode 100644 index 0000000000..6497b202bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Count.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.__deepcopy__

+
+
+Count.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Count()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.__getitem__.html b/docs/1.9.0.1/method/cfdm.Count.__getitem__.html new file mode 100644 index 0000000000..646b381014 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Count.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.__getitem__

+
+
+Count.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.__repr__.html b/docs/1.9.0.1/method/cfdm.Count.__repr__.html new file mode 100644 index 0000000000..0f38bdf4d7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Count.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.__repr__

+
+
+Count.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.__str__.html b/docs/1.9.0.1/method/cfdm.Count.__str__.html new file mode 100644 index 0000000000..347b8afbf9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Count.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.__str__

+
+
+Count.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Count._docstring_method_exclusions.html new file mode 100644 index 0000000000..1df7d60d2a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count._docstring_method_exclusions

+
+
+Count._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Count._docstring_package_depth.html new file mode 100644 index 0000000000..ef90f3ef81 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Count._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count._docstring_package_depth

+
+
+Count._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Count._docstring_special_substitutions.html new file mode 100644 index 0000000000..a89fd8daf1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Count._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count._docstring_special_substitutions

+
+
+classmethod Count._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Count._docstring_substitutions.html new file mode 100644 index 0000000000..e98dc8d41b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Count._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count._docstring_substitutions

+
+
+Count._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.apply_masking.html b/docs/1.9.0.1/method/cfdm.Count.apply_masking.html new file mode 100644 index 0000000000..c9010548b1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.Count.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.apply_masking

+
+
+Count.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.clear_properties.html b/docs/1.9.0.1/method/cfdm.Count.clear_properties.html new file mode 100644 index 0000000000..88cca95607 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.clear_properties

+
+
+Count.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.copy.html b/docs/1.9.0.1/method/cfdm.Count.copy.html new file mode 100644 index 0000000000..d509a2b2d4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Count.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.copy

+
+
+Count.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Count

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.creation_commands.html b/docs/1.9.0.1/method/cfdm.Count.creation_commands.html new file mode 100644 index 0000000000..07097cd03c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.Count.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.creation_commands

+
+
+Count.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the Count instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.Count(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.Count()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.del_data.html b/docs/1.9.0.1/method/cfdm.Count.del_data.html new file mode 100644 index 0000000000..99cfd919e6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Count.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.del_data

+
+
+Count.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.del_property.html b/docs/1.9.0.1/method/cfdm.Count.del_property.html new file mode 100644 index 0000000000..66971a382e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Count.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.del_property

+
+
+Count.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.dump.html b/docs/1.9.0.1/method/cfdm.Count.dump.html new file mode 100644 index 0000000000..ca82418451 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.Count.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.dump

+
+
+Count.dump(display=True, _key=None, _title=None, _create_title=True, _prefix='', _level=0, _omit_properties=None, _axes=None, _axis_names=None)[source]
+

A full description of the count variable.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.equals.html b/docs/1.9.0.1/method/cfdm.Count.equals.html new file mode 100644 index 0000000000..871817ecb9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.Count.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.equals

+
+
+Count.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Count +instance, or a subclass of one. If ignore_type is +True then cfdm.Count(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.get_data.html b/docs/1.9.0.1/method/cfdm.Count.get_data.html new file mode 100644 index 0000000000..a67a27be24 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Count.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.get_data

+
+
+Count.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.get_filenames.html b/docs/1.9.0.1/method/cfdm.Count.get_filenames.html new file mode 100644 index 0000000000..0f839874a5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.Count.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.get_filenames

+
+
+Count.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.get_property.html b/docs/1.9.0.1/method/cfdm.Count.get_property.html new file mode 100644 index 0000000000..8a9beeb51c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Count.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.get_property

+
+
+Count.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.has_bounds.html b/docs/1.9.0.1/method/cfdm.Count.has_bounds.html new file mode 100644 index 0000000000..2aa0c314bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Count.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.has_bounds

+
+
+Count.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.has_data.html b/docs/1.9.0.1/method/cfdm.Count.has_data.html new file mode 100644 index 0000000000..978057bb9d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Count.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.has_data

+
+
+Count.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.has_property.html b/docs/1.9.0.1/method/cfdm.Count.has_property.html new file mode 100644 index 0000000000..e014ffadea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Count.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.has_property

+
+
+Count.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.identities.html b/docs/1.9.0.1/method/cfdm.Count.identities.html new file mode 100644 index 0000000000..0b98f50804 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Count.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.identities

+
+
+Count.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.identity.html b/docs/1.9.0.1/method/cfdm.Count.identity.html new file mode 100644 index 0000000000..e2ee32ad43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Count.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.identity

+
+
+Count.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.insert_dimension.html b/docs/1.9.0.1/method/cfdm.Count.insert_dimension.html new file mode 100644 index 0000000000..05c2141666 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.Count.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.insert_dimension

+
+
+Count.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Count or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_clear_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_clear_dimension_groups.html new file mode 100644 index 0000000000..e94837acff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_clear_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Count.nc_clear_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_clear_dimension_groups

+
+
+Count.nc_clear_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF dimension name, with nc_set_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_clear_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_clear_sample_dimension_groups.html new file mode 100644 index 0000000000..190cca1c2e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_clear_sample_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Count.nc_clear_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_clear_sample_dimension_groups

+
+
+Count.nc_clear_sample_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / characters +then an empty sequence is returned, signifying the root group.

+

An alternative technique for removing the group structure is to +set the netCDF dimension name, with nc_set_sample_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_clear_variable_groups.html new file mode 100644 index 0000000000..ea372c7add --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Count.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_clear_variable_groups

+
+
+Count.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_del_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_del_dimension.html new file mode 100644 index 0000000000..dd14e012bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_del_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_del_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_del_dimension

+
+
+Count.nc_del_dimension(default=ValueError())[source]
+

Remove the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_del_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_del_sample_dimension.html new file mode 100644 index 0000000000..8638d43176 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_del_sample_dimension.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Count.nc_del_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_del_sample_dimension

+
+
+Count.nc_del_sample_dimension(default=ValueError())[source]
+

Remove the netCDF sample dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF sample dimension name has not been set. If set +to an Exception instance then it will be raised +instead.

+
+
+
+
Returns
+
+
str

The removed netCDF sample dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Count.nc_del_variable.html new file mode 100644 index 0000000000..2eae55d722 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_del_variable

+
+
+Count.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_dimension_groups.html new file mode 100644 index 0000000000..db50e78d05 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Count.nc_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_dimension_groups

+
+
+Count.nc_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_get_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_get_dimension.html new file mode 100644 index 0000000000..47dc312a92 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_get_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_get_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_get_dimension

+
+
+Count.nc_get_dimension(default=ValueError())[source]
+

Return the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_get_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_get_sample_dimension.html new file mode 100644 index 0000000000..bdd8c22bba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_get_sample_dimension.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Count.nc_get_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_get_sample_dimension

+
+
+Count.nc_get_sample_dimension(default=ValueError())[source]
+

Return the netCDF sample dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF sample dimension name has not been set. If set +to an Exception instance then it will be raised +instead.

+
+
+
+
Returns
+
+
str

The netCDF sample dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Count.nc_get_variable.html new file mode 100644 index 0000000000..380b2540b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Count.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_get_variable

+
+
+Count.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_has_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_has_dimension.html new file mode 100644 index 0000000000..f51649873c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_has_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Count.nc_has_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_has_dimension

+
+
+Count.nc_has_dimension()[source]
+

Whether the netCDF dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_has_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_has_sample_dimension.html new file mode 100644 index 0000000000..200c8e8565 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_has_sample_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Count.nc_has_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_has_sample_dimension

+
+
+Count.nc_has_sample_dimension()[source]
+

Whether the netCDF sample dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF sample dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Count.nc_has_variable.html new file mode 100644 index 0000000000..46507bea56 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Count.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_has_variable

+
+
+Count.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_sample_dimension_groups.html new file mode 100644 index 0000000000..adc84d5739 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_sample_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Count.nc_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_sample_dimension_groups

+
+
+Count.nc_sample_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension.html new file mode 100644 index 0000000000..e678764301 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_set_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_dimension

+
+
+Count.nc_set_dimension(value)[source]
+

Set the netCDF dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension_groups.html new file mode 100644 index 0000000000..dc9407ecd1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Count.nc_set_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_dimension_groups

+
+
+Count.nc_set_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF dimension name, with nc_set_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension.html new file mode 100644 index 0000000000..3ff8f87147 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_set_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_sample_dimension

+
+
+Count.nc_set_sample_dimension(value)[source]
+

Set the netCDF sample dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF sample dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension_groups.html new file mode 100644 index 0000000000..88fd4c4e42 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_sample_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Count.nc_set_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_sample_dimension_groups

+
+
+Count.nc_set_sample_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / characters +then an empty sequence is returned, signifying the root group.

+

An alternative technique for setting the group structure is to set +the netCDF dimension name, with nc_set_sample_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_variable.html new file mode 100644 index 0000000000..fb5513410c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_variable

+
+
+Count.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_set_variable_groups.html new file mode 100644 index 0000000000..9aa5f1b969 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Count.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_set_variable_groups

+
+
+Count.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Count.nc_variable_groups.html new file mode 100644 index 0000000000..1051099530 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Count.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.nc_variable_groups

+
+
+Count.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.properties.html b/docs/1.9.0.1/method/cfdm.Count.properties.html new file mode 100644 index 0000000000..2d5b81e4fc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Count.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.properties

+
+
+Count.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.set_data.html b/docs/1.9.0.1/method/cfdm.Count.set_data.html new file mode 100644 index 0000000000..7e090dbfeb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.Count.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.set_data

+
+
+Count.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Count instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Count

If the operation was in-place then None is returned, +otherwise return a new Count instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.set_properties.html b/docs/1.9.0.1/method/cfdm.Count.set_properties.html new file mode 100644 index 0000000000..341f6caa08 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Count.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.set_properties

+
+
+Count.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.set_property.html b/docs/1.9.0.1/method/cfdm.Count.set_property.html new file mode 100644 index 0000000000..c05754a447 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Count.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.set_property

+
+
+Count.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.squeeze.html b/docs/1.9.0.1/method/cfdm.Count.squeeze.html new file mode 100644 index 0000000000..dc6f1639f5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Count.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.squeeze

+
+
+Count.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Count or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Count()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.transpose.html b/docs/1.9.0.1/method/cfdm.Count.transpose.html new file mode 100644 index 0000000000..55ae796af2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Count.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.transpose

+
+
+Count.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Count or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Count.uncompress.html b/docs/1.9.0.1/method/cfdm.Count.uncompress.html new file mode 100644 index 0000000000..1b7d3269d9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Count.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Count.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Count.uncompress

+
+
+Count.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Count or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__array__.html b/docs/1.9.0.1/method/cfdm.Data.__array__.html new file mode 100644 index 0000000000..24e81f5c77 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__array__.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Data.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__array__

+
+
+Data.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
dtype: optional

Typecode or data-type to which the array is cast.

+
+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([1, 2, 3])
+>>> a = numpy.array(d)
+>>> print(type(a))
+<class 'numpy.ndarray'>
+>>> a[0] = -99
+>>> d
+<Data(3): [1, 2, 3]>
+>>> b = numpy.array(d, float)
+>>> print(b)
+[1. 2. 3.]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Data.__deepcopy__.html new file mode 100644 index 0000000000..73aa7aeb55 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Data.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__deepcopy__

+
+
+Data.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Data()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__getitem__.html b/docs/1.9.0.1/method/cfdm.Data.__getitem__.html new file mode 100644 index 0000000000..a46a798905 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__getitem__.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Data.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__getitem__

+
+
+Data.__getitem__(indices)[source]
+

Return a subspace of the data defined by indices.

+

d.__getitem__(indices) <==> d[indices]

+

Indexing follows rules that are very similar to the numpy indexing +rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not reduce +the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran). This is +the same behaviour as indexing on a Variable object of the +netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

__setitem__, _parse_indices

+
+
+
Returns
+
+
Data

The subspace of the data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(100, 190).reshape(1, 10, 9))
+>>> d.shape
+(1, 10, 9)
+>>> d[:, :, 1].shape
+(1, 10, 1)
+>>> d[:, 0].shape
+(1, 1, 9)
+>>> d[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> d[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> d[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__int__.html b/docs/1.9.0.1/method/cfdm.Data.__int__.html new file mode 100644 index 0000000000..928a993d40 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__int__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Data.__int__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__int__

+
+
+Data.__int__()[source]
+

Called by the int built-in function.

+

x.__int__() <==> int(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__iter__.html b/docs/1.9.0.1/method/cfdm.Data.__iter__.html new file mode 100644 index 0000000000..bef2229e19 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__iter__.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Data.__iter__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__iter__

+
+
+Data.__iter__()[source]
+

Called when an iterator is required.

+

x.__iter__() <==> iter(x)

+

Examples:

+
>>> d = cfdm.Data([1, 2, 3], 'metres')
+>>> for e in d:
+...    print(repr(e))
+...
+1
+2
+3
+
+
+
>>> d = cfdm.Data([[1, 2], [4, 5]], 'metres')
+>>> for e in d:
+...    print(repr(e))
+...
+<Data(2): [1, 2] metres>
+<Data(2): [4, 5] metres>
+
+
+
>>> d = cfdm.Data(34, 'metres')
+>>> for e in d:
+...     print(repr(e))
+Traceback (most recent call last):
+    ...
+TypeError: Iteration over 0-d Data
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__repr__.html b/docs/1.9.0.1/method/cfdm.Data.__repr__.html new file mode 100644 index 0000000000..fe14810a39 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__repr__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Data.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__repr__

+
+
+Data.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__setitem__.html b/docs/1.9.0.1/method/cfdm.Data.__setitem__.html new file mode 100644 index 0000000000..da7fff7b08 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__setitem__.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Data.__setitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__setitem__

+
+
+Data.__setitem__(indices, value)[source]
+

Assign to data elements defined by indices.

+

d.__setitem__(indices, x) <==> d[indices]=x

+

Indexing follows rules that are very similar to the numpy indexing +rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not reduce +the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran). This is +the same behaviour as indexing on a Variable object of the +netCDF4 package.

  • +
+

Broadcasting

+

The value, or values, being assigned must be broadcastable to the +shape defined by the indices, using the numpy broadcasting rules.

+

Missing data

+

Data array elements may be set to missing values by assigning them +to masked. Missing values may be unmasked by assigning them to +any other value.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

__getitem__, _parse_indices

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(100, 190).reshape(1, 10, 9))
+>>> d.shape
+(1, 10, 9)
+>>> d[:, :, 1] = -10
+>>> d[:, 0] = range(9)
+>>> d[..., 6:3:-1, 3:6] = numpy.arange(-18, -9).reshape(3, 3)
+>>> d[0, [2, 9], [4, 8]] = cfdm.Data([[-2, -3]])
+>>> d[0, :, -2] = cfdm.masked
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.__str__.html b/docs/1.9.0.1/method/cfdm.Data.__str__.html new file mode 100644 index 0000000000..3d2eb6e1a0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.__str__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Data.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.__str__

+
+
+Data.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Data._docstring_method_exclusions.html new file mode 100644 index 0000000000..ec7d96c119 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Data._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data._docstring_method_exclusions

+
+
+Data._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Data._docstring_package_depth.html new file mode 100644 index 0000000000..9289d3507b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Data._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data._docstring_package_depth

+
+
+Data._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Data._docstring_special_substitutions.html new file mode 100644 index 0000000000..7f88a72335 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Data._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data._docstring_special_substitutions

+
+
+classmethod Data._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Data._docstring_substitutions.html new file mode 100644 index 0000000000..40a5908def --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Data._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data._docstring_substitutions

+
+
+Data._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.any.html b/docs/1.9.0.1/method/cfdm.Data.any.html new file mode 100644 index 0000000000..5c916144b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.any.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Data.any — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.any

+
+
+Data.any()[source]
+

Test whether any data array elements evaluate to True.

+

Performs a logical or over the data array and returns the +result. Masked values are considered as False during computation.

+
+
Returns
+
+
bool

True if any data array elements evaluate to True, +otherwise False.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([[0, 0, 0]])
+>>> d.any()
+False
+>>> d[0, 0] = cfdm.masked
+>>> print(d.array)
+[[-- 0 0]]
+>>> d.any()
+False
+>>> d[0, 1] = 3
+>>> print(d.array)
+[[-- 3 0]]
+>>> d.any()
+True
+>>> d[...] = cfdm.masked
+>>> print(d.array)
+[[-- -- --]]
+>>> d.any()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.apply_masking.html b/docs/1.9.0.1/method/cfdm.Data.apply_masking.html new file mode 100644 index 0000000000..0fd507eff5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.apply_masking.html @@ -0,0 +1,270 @@ + + + + + + + cfdm.Data.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.apply_masking

+
+
+Data.apply_masking(fill_values=None, valid_min=None, valid_max=None, valid_range=None, inplace=False)[source]
+

Apply masking.

+

Masking is applied according to the values of the keyword +parameters.

+

Elements that are already masked remain so.

+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

get_fill_value, mask

+
+
+
Parameters
+
+
fill_values: bool or sequence of scalars, optional

Specify values that will be set to missing data. Data +elements exactly equal to any of the values are set to +missing data.

+

If True then the value returned by the get_fill_value +method, if such a value exists, is used.

+

Zero or more values may be provided in a sequence of +scalars.

+
+
Parameter example:

Specify a fill value of 999: fill_values=[999]

+
+
Parameter example:

Specify fill values of 999 and -1.0e30: +fill_values=[999, -1.0e30]

+
+
Parameter example:

Use the fill value already set for the data: +fill_values=True

+
+
Parameter example:

Use no fill values: fill_values=False or +fill_value=[]

+
+
+
+
valid_min: number, optional

A scalar specifying the minimum valid value. Data elements +strictly less than this number will be set to missing +data.

+
+
valid_max: number, optional

A scalar specifying the maximum valid value. Data elements +strictly greater than this number will be set to missing +data.

+
+
valid_range: (number, number), optional

A vector of two numbers specifying the minimum and maximum +valid values, equivalent to specifying values for both +valid_min and valid_max parameters. The valid_range +parameter must not be set if either valid_min or +valid_max is defined.

+
+
Parameter example:

valid_range=[-999, 10000] is equivalent to setting +valid_min=-999, valid_max=10000

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The data with masked values. If the operation was in-place +then None is returned.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(12).reshape(3, 4), 'm')
+>>> d[1, 1] = cfdm.masked
+>>> print(d.array)
+[[0  1  2  3]
+ [4 --  6  7]
+ [8  9 10 11]]
+
+
+
>>> print(d.apply_masking().array)
+[[0  1  2  3]
+ [4 --  6  7]
+ [8  9 10 11]]
+>>> print(d.apply_masking(fill_values=[0]).array)
+[[-- 1 2 3]
+ [4 -- 6 7]
+ [8 9 10 11]]
+>>> print(d.apply_masking(fill_values=[0, 11]).array)
+[[-- 1 2 3]
+ [4 -- 6 7]
+ [8 9 10 --]]
+
+
+
>>> print(d.apply_masking(valid_min=3).array)
+[[-- -- -- 3]
+ [4 -- 6 7]
+ [8 9 10 11]]
+>>> print(d.apply_masking(valid_max=6).array)
+[[0 1 2 3]
+ [4 -- 6 --]
+ [-- -- -- --]]
+>>> print(d.apply_masking(valid_range=[2, 8]).array)
+[[-- -- 2 3]
+ [4 -- 6 7]
+ [8 -- -- --]]
+
+
+
>>> d.set_fill_value(7)
+>>> print(d.apply_masking(fill_values=True).array)
+[[0  1  2  3]
+ [4 --  6 --]
+ [8  9 10 11]]
+>>> print(d.apply_masking(fill_values=True,
+...                       valid_range=[2, 8]).array)
+[[-- -- 2 3]
+ [4 -- 6 --]
+ [8 -- -- --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.copy.html b/docs/1.9.0.1/method/cfdm.Data.copy.html new file mode 100644 index 0000000000..78fc0bbcfb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.copy.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.Data.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.copy

+
+
+Data.copy(array=True)[source]
+

Return a deep copy.

+

d.copy() is equivalent to copy.deepcopy(d).

+
+
Parameters
+
+
array: bool, optional

If False then do not copy the array. By default the array +is copied.

+
+
+
+
Returns
+
+
Data

The deep copy.

+
+
+
+
+

Examples:

+
>>> e = d.copy()
+>>> e = d.copy(array=False)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.creation_commands.html b/docs/1.9.0.1/method/cfdm.Data.creation_commands.html new file mode 100644 index 0000000000..66b56e6723 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.creation_commands.html @@ -0,0 +1,214 @@ + + + + + + + cfdm.Data.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.creation_commands

+
+
+Data.creation_commands(name='data', namespace=None, indent=0, string=True)[source]
+

Return the commands that would create the data object.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
name: str or None, optional

Set the variable name of Data object that the commands +create.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([[0.0, 45.0], [45.0, 90.0]],
+...                           units='degrees_east')
+>>> print(d.creation_commands())
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0]], units='degrees_east', dtype='f8')
+
+
+
>>> d = cfdm.Data(['alpha', 'beta', 'gamma', 'delta'],
+...                           mask = [1, 0, 0, 0])
+>>> d.creation_commands(name='d', namespace='', string=False)
+["d = Data(['', 'beta', 'gamma', 'delta'], dtype='U5', mask=Data([True, False, False, False], dtype='b1'))"]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.del_calendar.html b/docs/1.9.0.1/method/cfdm.Data.del_calendar.html new file mode 100644 index 0000000000..ab51e5d7ba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.del_calendar.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Data.del_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.del_calendar

+
+
+Data.del_calendar(default=ValueError())[source]
+

Delete the calendar.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +calendar has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The value of the deleted calendar.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.del_fill_value.html b/docs/1.9.0.1/method/cfdm.Data.del_fill_value.html new file mode 100644 index 0000000000..633d982466 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.del_fill_value.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Data.del_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.del_fill_value

+
+
+Data.del_fill_value(default=ValueError())[source]
+

Delete the fill value.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the fill +value has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the deleted fill value.

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.del_units.html b/docs/1.9.0.1/method/cfdm.Data.del_units.html new file mode 100644 index 0000000000..cbc8077fe1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.del_units.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Data.del_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.del_units

+
+
+Data.del_units(default=ValueError())[source]
+

Delete the units.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the units +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The value of the deleted units.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.empty.html b/docs/1.9.0.1/method/cfdm.Data.empty.html new file mode 100644 index 0000000000..c2d2895e17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.empty.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Data.empty — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.empty

+
+
+classmethod Data.empty(shape, dtype=None, units=None, calendar=None)[source]
+

Create a new data array without initialising the elements.

+

Note that the mask of the returned empty data is hard.

+
+

See also

+

full, ones, zeros

+
+
+
Parameters
+
+
shape: int or tuple of int

The shape of the new array.

+
+
dtype: numpy.dtype or any object convertible to numpy.dtype

The data-type of the new array. By default the +data-type is float.

+
+
units: str or Units

The units for the empty data array.

+
+
calendar: str, optional

The calendar for reference time units.

+
+
+
+
Returns
+

Data

+
+
+

Examples:

+
>>> d = cfdm.Data.empty((96, 73))
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.equals.html b/docs/1.9.0.1/method/cfdm.Data.equals.html new file mode 100644 index 0000000000..31762f74a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.equals.html @@ -0,0 +1,261 @@ + + + + + + + cfdm.Data.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.equals

+
+
+Data.equals(other, rtol=None, atol=None, verbose=None, ignore_data_type=False, ignore_fill_value=False, ignore_compression=True, ignore_type=False, _check_values=True)[source]
+

Whether two data arrays are the same.

+

Equality is strict by default. This means that for data arrays to +be considered equal:

+
    +
  • the units and calendar must be the same,

  • +
+
    +
  • the fill value must be the same (see the ignore_fill_value +parameter), and

  • +
+
    +
  • the arrays must have same shape and data type, the same missing +data mask, and be element-wise equal (see the ignore_data_type +parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

Any type of object may be tested but, in general, equality is only +possible with another cell measure construct, or a subclass of +one. See the ignore_type parameter.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then the fill value is omitted from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Data +instance, or a subclass of one. If ignore_type is +True then cfdm.Data(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two data arrays are equal.

+
+
+
+
+

Examples:

+
>>> d.equals(d)
+True
+>>> d.equals(d.copy())
+True
+>>> d.equals('not a data array')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.filled.html b/docs/1.9.0.1/method/cfdm.Data.filled.html new file mode 100644 index 0000000000..596aadb4d7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.filled.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Data.filled — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.filled

+
+
+Data.filled(fill_value=None, inplace=False)[source]
+

Replace masked elements with the fill value.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
fill_value: scalar, optional

The fill value. By default the fill returned by +get_fill_value is used, or if this is not set then the +netCDF default fill value for the data type is used (as +defined by netCDF.fillvals).

+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Data or None

The filled data, or None if the operation was in-place.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([[1, 2, 3]])
+>>> print(d.filled().array)
+[[1 2 3]]
+>>> d[0, 0] = cfdm.masked
+>>> print(d.filled().array)
+[[-9223372036854775806                    2                    3]]
+>>> d.set_fill_value(-99)
+>>> print(d.filled().array)
+[[-99   2   3]]
+>>> print(d.filled(1e10).array)
+[[10000000000           2           3]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.first_element.html b/docs/1.9.0.1/method/cfdm.Data.first_element.html new file mode 100644 index 0000000000..471891f458 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.first_element.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Data.first_element — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.first_element

+
+
+Data.first_element()[source]
+

Return the first element of the data as a scalar.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+

The first element of the data.

+
+
+

Examples:

+
>>> d = cfdm.Data(9.0)
+>>> x = d.first_element()
+>>> print(x, type(x))
+9.0 <class 'float'>
+
+
+
>>> d = cfdm.Data([[1, 2], [3, 4]])
+>>> x = d.first_element()
+>>> print(x, type(x))
+1 <class 'int'>
+>>> d[0, 0] = cfdm.masked
+>>> y = d.first_element()
+>>> print(y, type(y))
+-- <class 'numpy.ma.core.MaskedConstant'>
+
+
+
>>> d = cfdm.Data(['foo', 'bar'])
+>>> x = d.first_element()
+>>> print(x, type(x))
+foo <class 'str'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.flatten.html b/docs/1.9.0.1/method/cfdm.Data.flatten.html new file mode 100644 index 0000000000..17e7dfdb4f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.flatten.html @@ -0,0 +1,250 @@ + + + + + + + cfdm.Data.flatten — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.flatten

+
+
+Data.flatten(axes=None, inplace=False)[source]
+

Flatten axes of the data.

+

Any subset of the axes may be flattened.

+

The shape of the data may change, but the size will not.

+

The flattening is executed in row-major (C-style) order. For +example, the array [[1, 2], [3, 4]] would be flattened across +both dimensions to [1 2 3 4].

+
+

New in version (cfdm): 1.7.11

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

Select the axes. By default all axes are flattened. No +axes are flattened if axes is an empty sequence.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The flattened data, or None if the operation was +in-place.

+
+
+
+
+

Examples

+
>>> d = cfdm.Data(numpy.arange(24).reshape(1, 2, 3, 4))
+>>> d
+<Data(1, 2, 3, 4): [[[[0, ..., 23]]]]>
+>>> print(d.array)
+[[[[ 0  1  2  3]
+   [ 4  5  6  7]
+   [ 8  9 10 11]]
+  [[12 13 14 15]
+   [16 17 18 19]
+   [20 21 22 23]]]]
+
+
+
>>> e = d.flatten()
+>>> e
+<Data(24): [0, ..., 23]>
+>>> print(e.array)
+[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23]
+
+
+
>>> e = d.flatten([])
+>>> e
+<Data(1, 2, 3, 4): [[[[0, ..., 23]]]]>
+
+
+
>>> e = d.flatten([1, 3])
+>>> e
+<Data(1, 8, 3): [[[0, ..., 23]]]>
+>>> print(e.array)
+[[[ 0  4  8]
+  [ 1  5  9]
+  [ 2  6 10]
+  [ 3  7 11]
+  [12 16 20]
+  [13 17 21]
+  [14 18 22]
+  [15 19 23]]]
+
+
+
>>> d.flatten([0, -1], inplace=True)
+>>> d
+<Data(4, 2, 3): [[[0, ..., 23]]]>
+>>> print(d.array)
+[[[ 0  4  8]
+  [12 16 20]]
+ [[ 1  5  9]
+  [13 17 21]]
+ [[ 2  6 10]
+  [14 18 22]]
+ [[ 3  7 11]
+  [15 19 23]]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_calendar.html b/docs/1.9.0.1/method/cfdm.Data.get_calendar.html new file mode 100644 index 0000000000..1ac162a859 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_calendar.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.Data.get_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_calendar

+
+
+Data.get_calendar(default=ValueError())[source]
+

Return the calendar.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +calendar has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The calendar.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.Data.get_compressed_axes.html new file mode 100644 index 0000000000..941531b71f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_compressed_axes.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Data.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_compressed_axes

+
+
+Data.get_compressed_axes()[source]
+

Returns the dimensions that are compressed in the array.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
list

The dimensions of the data that are compressed to a single +dimension in the underlying array. If the data are not +compressed then an empty list is returned.

+
+
+
+
+

Examples:

+
>>> d.shape
+(2, 3, 4, 5, 6)
+>>> d.compressed_array.shape
+(2, 14, 6)
+>>> d.get_compressed_axes()
+[1, 2, 3]
+
+
+
>>> d.get_compression_type()
+''
+>>> d.get_compressed_axes()
+[]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.Data.get_compressed_dimension.html new file mode 100644 index 0000000000..2b34d54ff8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_compressed_dimension.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Data.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_compressed_dimension

+
+
+Data.get_compressed_dimension(default=ValueError())[source]
+

Returns the compressed dimension’s array position.

+

That is, returns the position of the compressed dimension +in the compressed array.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter there is no +compressed dimension. If set to an Exception instance +then it will be raised instead.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array.

+
+
+
+
+

Examples:

+
>>> d.get_compressed_dimension()
+2
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_compression_type.html b/docs/1.9.0.1/method/cfdm.Data.get_compression_type.html new file mode 100644 index 0000000000..517367adad --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_compression_type.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Data.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_compression_type

+
+
+Data.get_compression_type()[source]
+

Returns the type of compression applied to the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

compressed_array, compression_axes, +get_compressed_dimension

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> d.get_compression_type()
+''
+
+
+
>>> d.get_compression_type()
+'gathered'
+
+
+
>>> d.get_compression_type()
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_count.html b/docs/1.9.0.1/method/cfdm.Data.get_count.html new file mode 100644 index 0000000000..4f6e8e6e67 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_count.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Data.get_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_count

+
+
+Data.get_count(default=ValueError())[source]
+

Return the count variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_index, get_list

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if a count +variable has not been set. If set to an Exception +instance then it will be raised instead.

+
+
+
+
Returns
+

The count variable.

+
+
+

Examples:

+
>>> c = d.get_count()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_filenames.html b/docs/1.9.0.1/method/cfdm.Data.get_filenames.html new file mode 100644 index 0000000000..a601700fab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_filenames.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.Data.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_filenames

+
+
+Data.get_filenames()[source]
+

Return the name of the file containing the data array.

+
+
Returns
+
+
set

The file name in normalised, absolute form. If the +data is are memory then an empty set is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> cfdm.write(f, 'temp_file.nc')
+>>> g = cfdm.read('temp_file.nc')[0]
+>>> d = g.data
+>>> d.get_filenames()
+{'/data/user/temp_file.nc'}
+>>> d[...] = -99
+>>> d.get_filenames()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_fill_value.html b/docs/1.9.0.1/method/cfdm.Data.get_fill_value.html new file mode 100644 index 0000000000..4c9f9ea147 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_fill_value.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Data.get_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_fill_value

+
+
+Data.get_fill_value(default=ValueError())[source]
+

Return the missing data value.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the fill +value has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The fill value.

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_index.html b/docs/1.9.0.1/method/cfdm.Data.get_index.html new file mode 100644 index 0000000000..65d3541ced --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_index.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.Data.get_index — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_index

+
+
+Data.get_index(default=ValueError())[source]
+

Return the index variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_count, get_list

+
+
+
Parameters
+
+
default: optional

Return default if index variable has not been set.

+
+
default: optional

Return the value of the default parameter if an index +variable has not been set. If set to an Exception +instance then it will be raised instead.

+
+
+
+
Returns
+

The index variable.

+
+
+

Examples:

+
>>> i = d.get_index()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_list.html b/docs/1.9.0.1/method/cfdm.Data.get_list.html new file mode 100644 index 0000000000..8e8c2afaae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_list.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Data.get_list — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_list

+
+
+Data.get_list(default=ValueError())[source]
+

Return the list variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_count, get_index

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if an index +variable has not been set. If set to an Exception +instance then it will be raised instead.

+
+
+
+
Returns
+

The list variable.

+
+
+

Examples:

+
>>> l = d.get_list()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.get_units.html b/docs/1.9.0.1/method/cfdm.Data.get_units.html new file mode 100644 index 0000000000..a35cf8c75b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.get_units.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Data.get_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.get_units

+
+
+Data.get_units(default=ValueError())[source]
+

Return the units.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the units +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The units.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.has_calendar.html b/docs/1.9.0.1/method/cfdm.Data.has_calendar.html new file mode 100644 index 0000000000..6392dac220 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.has_calendar.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Data.has_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.has_calendar

+
+
+Data.has_calendar()[source]
+

Whether a calendar has been set.

+ +
+
Returns
+
+
bool

True if the calendar has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.has_fill_value.html b/docs/1.9.0.1/method/cfdm.Data.has_fill_value.html new file mode 100644 index 0000000000..a7586ed5ed --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.has_fill_value.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Data.has_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.has_fill_value

+
+
+Data.has_fill_value()[source]
+

Whether a fill value has been set.

+ +
+
Returns
+
+
bool

True if a fill value has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.has_units.html b/docs/1.9.0.1/method/cfdm.Data.has_units.html new file mode 100644 index 0000000000..09103aeb2d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.has_units.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.Data.has_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.has_units

+
+
+Data.has_units()[source]
+

Whether units have been set.

+ +
+
Returns
+
+
bool

True if units have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.insert_dimension.html b/docs/1.9.0.1/method/cfdm.Data.insert_dimension.html new file mode 100644 index 0000000000..372834bcf0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.insert_dimension.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Data.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.insert_dimension

+
+
+Data.insert_dimension(position=0, inplace=False)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis, corresponding to a given position in +the data array shape.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

flatten, squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in the +data array. By default the new axis has position 0, the +slowest varying position. Negative integers counting from +the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The data with expanded axes. If the operation was in-place +then None is returned.

+
+
+
+
+

Examples:

+
>>> d.shape
+(19, 73, 96)
+>>> d.insert_dimension('domainaxis3').shape
+(1, 96, 73, 19)
+>>> d.insert_dimension('domainaxis3', position=3).shape
+(19, 73, 96, 1)
+>>> d.insert_dimension('domainaxis3', position=-1, inplace=True)
+>>> d.shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.last_element.html b/docs/1.9.0.1/method/cfdm.Data.last_element.html new file mode 100644 index 0000000000..45b774e5c2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.last_element.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Data.last_element — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.last_element

+
+
+Data.last_element()[source]
+

Return the last element of the data as a scalar.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+

The last element of the data.

+
+
+

Examples:

+
>>> d = cfdm.Data(9.0)
+>>> x = d.last_element()
+>>> print(x, type(x))
+9.0 <class 'float'>
+
+
+
>>> d = cfdm.Data([[1, 2], [3, 4]])
+>>> x = d.last_element()
+>>> print(x, type(x))
+4 <class 'int'>
+>>> d[-1, -1] = cfdm.masked
+>>> y = d.last_element()
+>>> print(y, type(y))
+-- <class 'numpy.ma.core.MaskedConstant'>
+
+
+
>>> d = cfdm.Data(['foo', 'bar'])
+>>> x = d.last_element()
+>>> print(x, type(x))
+bar <class 'str'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.max.html b/docs/1.9.0.1/method/cfdm.Data.max.html new file mode 100644 index 0000000000..c1f93735fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.max.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Data.max — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.max

+
+
+Data.max(axes=None)[source]
+

Alias for maximum.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.maximum.html b/docs/1.9.0.1/method/cfdm.Data.maximum.html new file mode 100644 index 0000000000..aae98df408 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.maximum.html @@ -0,0 +1,220 @@ + + + + + + + cfdm.Data.maximum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.maximum

+
+
+Data.maximum(axes=None)[source]
+

Return the maximum of an array or the maximum along axes.

+

Missing data array elements are omitted from the calculation.

+
+

New in version (cfdm): 1.8.0

+
+
+

See also

+

minimum

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The axes over which to take the maximum. By default the +maximum over all axes is returned.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
+
+
Returns
+
+
Data

Maximum of the data along the specified axes.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(24).reshape(1, 2, 3, 4))
+>>> d
+<Data(1, 2, 3, 4): [[[[0, ..., 23]]]]>
+>>> print(d.array)
+[[[[ 0  1  2  3]
+   [ 4  5  6  7]
+   [ 8  9 10 11]]
+  [[12 13 14 15]
+   [16 17 18 19]
+   [20 21 22 23]]]]
+>>> e = d.max()
+>>> e
+<Data(1, 1, 1, 1): [[[[23]]]]>
+>>> print(e.array)
+[[[[23]]]]
+>>> e = d.max(2)
+>>> e
+<Data(1, 2, 1, 4): [[[[8, ..., 23]]]]>
+>>> print(e.array)
+[[[[ 8  9 10 11]]
+  [[20 21 22 23]]]]
+>>> e = d.max([-2, -1])
+>>> e
+<Data(1, 2, 1, 1): [[[[11, 23]]]]>
+>>> print(e.array)
+[[[[11]]
+  [[23]]]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.min.html b/docs/1.9.0.1/method/cfdm.Data.min.html new file mode 100644 index 0000000000..9275840354 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.min.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.Data.min — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.min

+
+
+Data.min(axes=None)[source]
+

Alias for minimum.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.minimum.html b/docs/1.9.0.1/method/cfdm.Data.minimum.html new file mode 100644 index 0000000000..61a39a9337 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.minimum.html @@ -0,0 +1,220 @@ + + + + + + + cfdm.Data.minimum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.minimum

+
+
+Data.minimum(axes=None)[source]
+

Return the minimum of an array or minimum along axes.

+

Missing data array elements are omitted from the calculation.

+
+

New in version (cfdm): 1.8.0

+
+
+

See also

+

maximum

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The axes over which to take the minimum. By default the +minimum over all axes is returned.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
+
+
Returns
+
+
Data

Minimum of the data along the specified axes.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(24).reshape(1, 2, 3, 4))
+>>> d
+<Data(1, 2, 3, 4): [[[[0, ..., 23]]]]>
+>>> print(d.array)
+[[[[ 0  1  2  3]
+   [ 4  5  6  7]
+   [ 8  9 10 11]]
+  [[12 13 14 15]
+   [16 17 18 19]
+   [20 21 22 23]]]]
+>>> e = d.min()
+>>> e
+<Data(1, 1, 1, 1): [[[[0]]]]>
+>>> print(e.array)
+[[[[0]]]]
+>>> e = d.min(2)
+>>> e
+<Data(1, 2, 1, 4): [[[[0, ..., 15]]]]>
+>>> print(e.array)
+[[[[ 0  1  2  3]]
+  [[12 13 14 15]]]]
+>>> e = d.min([-2, -1])
+>>> e
+<Data(1, 2, 1, 1): [[[[0, 12]]]]>
+>>> print(e.array)
+[[[[ 0]]
+  [[12]]]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.nc_clear_hdf5_chunksizes.html b/docs/1.9.0.1/method/cfdm.Data.nc_clear_hdf5_chunksizes.html new file mode 100644 index 0000000000..96f293ff0a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.nc_clear_hdf5_chunksizes.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Data.nc_clear_hdf5_chunksizes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.nc_clear_hdf5_chunksizes

+
+
+Data.nc_clear_hdf5_chunksizes()[source]
+

Clear the HDF5 chunksizes for the data.

+
+

Note

+

Chunksizes are cleared from the output of methods that +change the data shape.

+
+
+

Note

+

Chunksizes are ignored for netCDF3 files that do not use +HDF5.

+
+
+

New in version (cfdm): 1.7.2

+
+ +
+
Returns
+
+
tuple

The chunksizes defined prior to being cleared.

+
+
+
+
+

Examples:

+
>>> d.shape
+(1, 96, 73)
+>>> d.nc_set_hdf5_chunksizes([1, 48, 73])
+>>> d.nc_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_clear_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_hdf5_chunksizes()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.nc_hdf5_chunksizes.html b/docs/1.9.0.1/method/cfdm.Data.nc_hdf5_chunksizes.html new file mode 100644 index 0000000000..512a466fbc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.nc_hdf5_chunksizes.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Data.nc_hdf5_chunksizes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.nc_hdf5_chunksizes

+
+
+Data.nc_hdf5_chunksizes()[source]
+

Return the HDF5 chunksizes for the data.

+
+

Note

+

Chunksizes are cleared from the output of methods that +change the data shape.

+
+
+

Note

+

Chunksizes are ignored for netCDF3 files that do not use +HDF5.

+
+
+

New in version (cfdm): 1.7.2

+
+ +
+
Returns
+
+
tuple

The current chunksizes.

+
+
+
+
+

Examples:

+
>>> d.shape
+(1, 96, 73)
+>>> d.nc_set_hdf5_chunksizes([1, 48, 73])
+>>> d.nc_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_clear_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_hdf5_chunksizes()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.nc_set_hdf5_chunksizes.html b/docs/1.9.0.1/method/cfdm.Data.nc_set_hdf5_chunksizes.html new file mode 100644 index 0000000000..1bb2cca0d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.nc_set_hdf5_chunksizes.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Data.nc_set_hdf5_chunksizes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.nc_set_hdf5_chunksizes

+
+
+Data.nc_set_hdf5_chunksizes(chunksizes)[source]
+

Set the HDF5 chunksizes for the data.

+
+

Note

+

Chunksizes are cleared from the output of methods that +change the data shape.

+
+
+

Note

+

Chunksizes are ignored for netCDF3 files that do not use +HDF5.

+
+
+

New in version (cfdm): 1.7.2

+
+ +
+
Parameters
+
+
chunksizes: sequence of int

The chunksizes for each dimension. Can be integers from 0 +to the dimension size.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d.shape
+(1, 96, 73)
+>>> d.nc_set_hdf5_chunksizes([1, 48, 73])
+>>> d.nc_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_clear_hdf5_chunksizes()
+(1, 48, 73)
+>>> d.nc_hdf5_chunksizes()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.second_element.html b/docs/1.9.0.1/method/cfdm.Data.second_element.html new file mode 100644 index 0000000000..06dde5c4f3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.second_element.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.Data.second_element — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.second_element

+
+
+Data.second_element()[source]
+

Return the second element of the data as a scalar.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+

The second element of the data.

+
+
+

Examples:

+
>>> d = cfdm.Data([[1, 2], [3, 4]])
+>>> x = d.second_element()
+>>> print(x, type(x))
+2 <class 'int'>
+>>> d[0, 1] = cfdm.masked
+>>> y = d.second_element()
+>>> print(y, type(y))
+-- <class 'numpy.ma.core.MaskedConstant'>
+
+
+
>>> d = cfdm.Data(['foo', 'bar'])
+>>> x = d.second_element()
+>>> print(x, type(x))
+bar <class 'str'>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.set_calendar.html b/docs/1.9.0.1/method/cfdm.Data.set_calendar.html new file mode 100644 index 0000000000..8caba1022d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.set_calendar.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Data.set_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.set_calendar

+
+
+Data.set_calendar(value)[source]
+

Set the calendar.

+ +
+
Parameters
+
+
value: str

The new calendar.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.set_fill_value.html b/docs/1.9.0.1/method/cfdm.Data.set_fill_value.html new file mode 100644 index 0000000000..6a96f6510f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.set_fill_value.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.Data.set_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.set_fill_value

+
+
+Data.set_fill_value(value)[source]
+

Set the missing data value.

+ +
+
Parameters
+
+
value: scalar

The new fill value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.set_units.html b/docs/1.9.0.1/method/cfdm.Data.set_units.html new file mode 100644 index 0000000000..85457d400e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.set_units.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Data.set_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.set_units

+
+
+Data.set_units(value)[source]
+

Set the units.

+ +
+
Parameters
+
+
value: str

The new units.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.source.html b/docs/1.9.0.1/method/cfdm.Data.source.html new file mode 100644 index 0000000000..0fb196af63 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.source.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Data.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.source

+
+
+Data.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> d = f.data
+>>> d.source()
+<NetCDFArray(149, 182): file=file.nc variable=latitude>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.squeeze.html b/docs/1.9.0.1/method/cfdm.Data.squeeze.html new file mode 100644 index 0000000000..e7adecb8be --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.squeeze.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Data.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.squeeze

+
+
+Data.squeeze(axes=None, inplace=False)[source]
+

Remove size 1 axes from the data.

+

By default all size 1 axes are removed, but particular axes may be +selected with the keyword arguments.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The data with removed data axes. If the operation was +in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> d.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> d.squeeze(0).shape
+(73, 1, 96)
+>>> d.squeeze([-3, 2]).shape
+(73, 96)
+>>> d.squeeze(2, inplace=True)
+>>> d.shape
+(1, 73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.sum.html b/docs/1.9.0.1/method/cfdm.Data.sum.html new file mode 100644 index 0000000000..f01bb74b00 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.sum.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Data.sum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.sum

+
+
+Data.sum(axes=None)[source]
+

Return the sum of an array or the sum along axes.

+

Missing data array elements are omitted from the calculation.

+
+

See also

+

max, min

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The axes over which to calculate the sum. By default the +sum over all axes is returned.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
+
+
Returns
+
+
Data

The sum of the data along the specified axes.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(numpy.arange(24).reshape(1, 2, 3, 4))
+>>> d
+<Data(1, 2, 3, 4): [[[[0, ..., 23]]]]>
+>>> print(d.array)
+[[[[ 0  1  2  3]
+   [ 4  5  6  7]
+   [ 8  9 10 11]]
+  [[12 13 14 15]
+   [16 17 18 19]
+   [20 21 22 23]]]]
+>>> e = d.sum()
+>>> e
+<Data(1, 1, 1, 1): [[[[276]]]]>
+>>> print(e.array)
+[[[[276]]]]
+>>> e = d.sum(2)
+>>> e
+<Data(1, 2, 1, 4): [[[[12, ..., 57]]]]>
+>>> print(e.array)
+[[[[12 15 18 21]]
+  [[48 51 54 57]]]]
+>>> e = d.sum([-2, -1])
+>>> e
+<Data(1, 2, 1, 1): [[[[66, 210]]]]>
+>>> print(e.array)
+[[[[ 66]]
+  [[210]]]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.to_memory.html b/docs/1.9.0.1/method/cfdm.Data.to_memory.html new file mode 100644 index 0000000000..6fed3f2da0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.to_memory.html @@ -0,0 +1,169 @@ + + + + + + + cfdm.Data.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.to_memory

+
+
+Data.to_memory()[source]
+

Bring data on disk into memory and retain it there.

+

There is no change to data that is already in memory.

+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.example_field(4)
+>>> f.data
+<Data(3, 26, 4): [[[290.0, ..., --]]] K>
+>>> f.data.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.transpose.html b/docs/1.9.0.1/method/cfdm.Data.transpose.html new file mode 100644 index 0000000000..0540625bf3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.transpose.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Data.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.transpose

+
+
+Data.transpose(axes=None, inplace=False)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The data with permuted data axes. If the operation was +in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> d.shape
+(19, 73, 96)
+>>> d.transpose().shape
+(96, 73, 19)
+>>> d.transpose([1, 0, 2]).shape
+(73, 19, 96)
+>>> d.transpose([-1, 0, 1], inplace=True)
+>>> d.shape
+(96, 19, 73)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.uncompress.html b/docs/1.9.0.1/method/cfdm.Data.uncompress.html new file mode 100644 index 0000000000..2c44dbbc6d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.uncompress.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Data.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.uncompress

+
+
+Data.uncompress(inplace=False)[source]
+

Uncompress the underlying array.

+
+

New in version (cfdm): 1.7.3

+
+
+

See also

+

array, compressed_array, source

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return None.

+
+
+
+
Returns
+
+
Data or None

The uncompressed data, or None if the operation was +in-place.

+
+
+
+
+

Examples:

+
>>> d.get_compression_type()
+'ragged contiguous'
+>>> d.source()
+<RaggedContiguousArray(4, 9): >
+>>> d.uncompress(inpalce=True)
+>>> d.get_compression_type()
+''
+>>> d.source()
+<NumpyArray(4, 9): >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Data.unique.html b/docs/1.9.0.1/method/cfdm.Data.unique.html new file mode 100644 index 0000000000..23e60e653a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Data.unique.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Data.unique — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Data.unique

+
+
+Data.unique()[source]
+

The unique elements of the data.

+

The unique elements are sorted into a one dimensional array. with +no missing values.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Data

The unique elements.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data([[4, 2, 1], [1, 2, 3]], 'metre')
+>>> d.unique()
+<Data(4): [1, ..., 4] metre>
+>>> d[1, -1] = cfdm.masked
+>>> d.unique()
+<Data(3): [1, 2, 4] metre>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.__bool__.html b/docs/1.9.0.1/method/cfdm.Datum.__bool__.html new file mode 100644 index 0000000000..fdd82d40e9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.__bool__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Datum.__bool__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.__bool__

+
+
+Datum.__bool__()[source]
+

Called by the bool built-in function.

+

x.__bool__() <==> bool(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Datum.__deepcopy__.html new file mode 100644 index 0000000000..2c2e3e1dcd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Datum.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.__deepcopy__

+
+
+Datum.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Datum()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.__nonzero__.html b/docs/1.9.0.1/method/cfdm.Datum.__nonzero__.html new file mode 100644 index 0000000000..f6097a17e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.__nonzero__.html @@ -0,0 +1,150 @@ + + + + + + + cfdm.Datum.__nonzero__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.__nonzero__

+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.__repr__.html b/docs/1.9.0.1/method/cfdm.Datum.__repr__.html new file mode 100644 index 0000000000..7402cb9f96 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Datum.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.__repr__

+
+
+Datum.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.__str__.html b/docs/1.9.0.1/method/cfdm.Datum.__str__.html new file mode 100644 index 0000000000..39fa12e083 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Datum.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.__str__

+
+
+Datum.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Datum._docstring_method_exclusions.html new file mode 100644 index 0000000000..6e3394e1e6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Datum._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum._docstring_method_exclusions

+
+
+Datum._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Datum._docstring_package_depth.html new file mode 100644 index 0000000000..6c7b125774 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Datum._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum._docstring_package_depth

+
+
+Datum._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Datum._docstring_special_substitutions.html new file mode 100644 index 0000000000..eb10266497 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Datum._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum._docstring_special_substitutions

+
+
+classmethod Datum._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Datum._docstring_substitutions.html new file mode 100644 index 0000000000..0d2ca90758 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Datum._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum._docstring_substitutions

+
+
+Datum._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.clear_parameters.html b/docs/1.9.0.1/method/cfdm.Datum.clear_parameters.html new file mode 100644 index 0000000000..3e7556810b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Datum.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.clear_parameters

+
+
+Datum.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.copy.html b/docs/1.9.0.1/method/cfdm.Datum.copy.html new file mode 100644 index 0000000000..a787b6b729 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Datum.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.copy

+
+
+Datum.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Datum

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.del_parameter.html b/docs/1.9.0.1/method/cfdm.Datum.del_parameter.html new file mode 100644 index 0000000000..5928f40e53 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Datum.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.del_parameter

+
+
+Datum.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.equals.html b/docs/1.9.0.1/method/cfdm.Datum.equals.html new file mode 100644 index 0000000000..b83b8e6985 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.equals.html @@ -0,0 +1,239 @@ + + + + + + + cfdm.Datum.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.equals

+
+
+Datum.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the named parameters must be the same, with the same values +and data types, and vector-valued parameters must also have +same the size and be element-wise equal (see the +ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Datum +instance, or a subclass of one. If ignore_type is +True then cfdm.Datum(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> d.equals(d)
+True
+>>> d.equals(d.copy())
+True
+>>> d.equals(None)
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.get_parameter.html b/docs/1.9.0.1/method/cfdm.Datum.get_parameter.html new file mode 100644 index 0000000000..a721c30bab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.Datum.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.get_parameter

+
+
+Datum.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.has_parameter.html b/docs/1.9.0.1/method/cfdm.Datum.has_parameter.html new file mode 100644 index 0000000000..c978b41922 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Datum.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.has_parameter

+
+
+Datum.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Datum.nc_clear_variable_groups.html new file mode 100644 index 0000000000..2c4cbc2783 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Datum.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_clear_variable_groups

+
+
+Datum.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Datum.nc_del_variable.html new file mode 100644 index 0000000000..c1b90e32b5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Datum.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_del_variable

+
+
+Datum.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Datum.nc_get_variable.html new file mode 100644 index 0000000000..c0f6b3857c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Datum.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_get_variable

+
+
+Datum.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Datum.nc_has_variable.html new file mode 100644 index 0000000000..7edfc32df7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Datum.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_has_variable

+
+
+Datum.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable.html new file mode 100644 index 0000000000..bca67bc738 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Datum.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_set_variable

+
+
+Datum.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable_groups.html new file mode 100644 index 0000000000..70846ed328 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Datum.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_set_variable_groups

+
+
+Datum.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Datum.nc_variable_groups.html new file mode 100644 index 0000000000..de6c17f7cd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Datum.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.nc_variable_groups

+
+
+Datum.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.parameters.html b/docs/1.9.0.1/method/cfdm.Datum.parameters.html new file mode 100644 index 0000000000..4f2a233be7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Datum.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.parameters

+
+
+Datum.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.set_parameter.html b/docs/1.9.0.1/method/cfdm.Datum.set_parameter.html new file mode 100644 index 0000000000..a052ddc8b3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.Datum.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.set_parameter

+
+
+Datum.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Datum.set_parameters.html b/docs/1.9.0.1/method/cfdm.Datum.set_parameters.html new file mode 100644 index 0000000000..f73c040f78 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Datum.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Datum.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Datum.set_parameters

+
+
+Datum.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__deepcopy__.html new file mode 100644 index 0000000000..9805a3f27e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.DimensionCoordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.__deepcopy__

+
+
+DimensionCoordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.DimensionCoordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__getitem__.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__getitem__.html new file mode 100644 index 0000000000..5eda8fa899 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__getitem__.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.__getitem__

+
+
+DimensionCoordinate.__getitem__(indices)[source]
+

Return a subspace of the construct defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

The new subspace contains the same properties and similar +components to the original construct, but the latter are also +subspaced over their corresponding axes.

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran). This is +the same behaviour as indexing on a Variable object of the +netCDF4 package.

  • +
+
+
Returns
+
+
DimensionCoordinate

The subspace of the construct.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__repr__.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__repr__.html new file mode 100644 index 0000000000..eb1cdddf7c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DimensionCoordinate.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.__repr__

+
+
+DimensionCoordinate.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__str__.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__str__.html new file mode 100644 index 0000000000..8e2a894573 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DimensionCoordinate.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.__str__

+
+
+DimensionCoordinate.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_method_exclusions.html new file mode 100644 index 0000000000..ebcb55c0d5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate._docstring_method_exclusions

+
+
+DimensionCoordinate._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_package_depth.html new file mode 100644 index 0000000000..711beddf0b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DimensionCoordinate._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate._docstring_package_depth

+
+
+DimensionCoordinate._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_special_substitutions.html new file mode 100644 index 0000000000..a663d1222d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.DimensionCoordinate._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate._docstring_special_substitutions

+
+
+classmethod DimensionCoordinate._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_substitutions.html new file mode 100644 index 0000000000..45d1a29c28 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DimensionCoordinate._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate._docstring_substitutions

+
+
+DimensionCoordinate._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.apply_masking.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.apply_masking.html new file mode 100644 index 0000000000..d08645dfe2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.apply_masking.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.DimensionCoordinate.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.apply_masking

+
+
+DimensionCoordinate.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria +that are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the +_FillValue property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of +the valid_max property;

  • +
  • where data elements are within the inclusive range specified +by the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no +masking is applied for that method.

+

The cell bounds, if any, are also masked according to the same +criteria as the parent construct. If, however, any of the +relevant properties are explicitly set on the bounds instance +then their values will be used in preference to those of the +parent construct.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DimensionCoordinate or None

A new instance with masked values, or None if the +operation was in-place.

+
+
+
+
+

Examples:

+
>>> print(c.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_c = c.apply_masking()
+>>> print(masked_c.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.clear_properties.html new file mode 100644 index 0000000000..b3a8fcb658 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.clear_properties

+
+
+DimensionCoordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.copy.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.copy.html new file mode 100644 index 0000000000..ade2f22849 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.DimensionCoordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.copy

+
+
+DimensionCoordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
DimensionCoordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.creation_commands.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.creation_commands.html new file mode 100644 index 0000000000..2752e444b1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.creation_commands.html @@ -0,0 +1,259 @@ + + + + + + + cfdm.DimensionCoordinate.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.creation_commands

+
+
+DimensionCoordinate.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', bounds_name='b', interior_ring_name='i', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the DimensionCoordinate instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
bounds_name: str, optional

The name of the construct’s Bounds instance created +by the returned commands.

+
+
Parameter example:

name='bounds1'

+
+
+
+
interior_ring_name: str, optional

The name of the construct’s InteriorRing instance +created by the returned commands.

+
+
Parameter example:

name='ir1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.DimensionCoordinate(
+...     properties={'units': 'degrees_east',
+...                 'standard_name': 'longitude'}
+... )
+>>> x.set_data([22.5, 67.5, 112.5])
+>>> b = cfdm.Bounds()
+>>> b.set_data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]])
+>>> x.set_bounds(b)
+>>> print(x.creation_commands(header=False))
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+data = cfdm.Data([22.5, 67.5, 112.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_bounds.html new file mode 100644 index 0000000000..a8a712b5d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_bounds

+
+
+DimensionCoordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_climatology.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_climatology.html new file mode 100644 index 0000000000..4423026ee1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_climatology.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.DimensionCoordinate.del_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_climatology

+
+
+DimensionCoordinate.del_climatology(default=ValueError())[source]
+

Remove the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed climatology value.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_data.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_data.html new file mode 100644 index 0000000000..11489f032f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DimensionCoordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_data

+
+
+DimensionCoordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_geometry.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_geometry.html new file mode 100644 index 0000000000..38e4cf27a9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_geometry

+
+
+DimensionCoordinate.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_interior_ring.html new file mode 100644 index 0000000000..fd6761e060 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DimensionCoordinate.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_interior_ring

+
+
+DimensionCoordinate.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_node_count.html new file mode 100644 index 0000000000..4bb7f76802 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.del_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_node_count

+
+
+DimensionCoordinate.del_node_count(default=ValueError())[source]
+

Remove the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The removed node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_part_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_part_node_count.html new file mode 100644 index 0000000000..fb1b8975ed --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.del_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_part_node_count

+
+
+DimensionCoordinate.del_part_node_count(default=ValueError())[source]
+

Remove the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The removed part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_property.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_property.html new file mode 100644 index 0000000000..741a471002 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.DimensionCoordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.del_property

+
+
+DimensionCoordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.dump.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.dump.html new file mode 100644 index 0000000000..aab8f84e8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.DimensionCoordinate.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.dump

+
+
+DimensionCoordinate.dump(display=True, _omit_properties=None, _key=None, _level=0, _title=None, _axes=None, _axis_names=None)[source]
+

A full description of the dimension coordinate construct.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.equals.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.equals.html new file mode 100644 index 0000000000..7f70da80e3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.equals.html @@ -0,0 +1,270 @@ + + + + + + + cfdm.DimensionCoordinate.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.equals

+
+
+DimensionCoordinate.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+
    +
  • if there are bounds then their descriptive properties (if +any) must be the same and their data arrays must have same +shape and data type, the same missing data mask, and be +element-wise equal (see the ignore_properties and +ignore_data_type parameters).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another DimensionCoordinate +instance, or a subclass of one. If ignore_type is +True then cfdm.DimensionCoordinate(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> p.equals(p)
+True
+>>> p.equals(p.copy())
+True
+>>> p.equals('not a colection of properties')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds.html new file mode 100644 index 0000000000..9e4c40a9cd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_bounds

+
+
+DimensionCoordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> b = cfdm.Bounds(data=cfdm.Data(range(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds_data.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds_data.html new file mode 100644 index 0000000000..66861943ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_bounds_data.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DimensionCoordinate.get_bounds_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_bounds_data

+
+
+DimensionCoordinate.get_bounds_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the bounds data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

bounds, get_bounds, get_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there are +no bounds data.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The bounds data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> x = f.construct('latitude')
+>>> x.get_bounds_data()
+<Data(5, 2): [[-90.0, ..., 90.0]] degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_climatology.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_climatology.html new file mode 100644 index 0000000000..16d4f38ecd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_climatology.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.DimensionCoordinate.get_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_climatology

+
+
+DimensionCoordinate.get_climatology(default=ValueError())[source]
+

Return the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

str

+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_data.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_data.html new file mode 100644 index 0000000000..54fa2ea983 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.DimensionCoordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_data

+
+
+DimensionCoordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_filenames.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_filenames.html new file mode 100644 index 0000000000..a79e0a5d9e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_filenames.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.DimensionCoordinate.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_filenames

+
+
+DimensionCoordinate.get_filenames()[source]
+

Return the name of the file or files containing the data.

+

The names of the file or files containing the bounds data are also +returned.

+
+
Returns
+
+
set

The file names in normalised, absolute form. If all of +the data are in memory then an empty set is +returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_geometry.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_geometry.html new file mode 100644 index 0000000000..b1deb115b9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_geometry

+
+
+DimensionCoordinate.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_interior_ring.html new file mode 100644 index 0000000000..399a25781c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.DimensionCoordinate.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_interior_ring

+
+
+DimensionCoordinate.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_node_count.html new file mode 100644 index 0000000000..86b0f44632 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_node_count.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.get_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_node_count

+
+
+DimensionCoordinate.get_node_count(default=ValueError())[source]
+

Return the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if a node +count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_part_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_part_node_count.html new file mode 100644 index 0000000000..6b736b9234 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.get_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_part_node_count

+
+
+DimensionCoordinate.get_part_node_count(default=ValueError())[source]
+

Return the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_property.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_property.html new file mode 100644 index 0000000000..5dee1676b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.DimensionCoordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.get_property

+
+
+DimensionCoordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_bounds.html new file mode 100644 index 0000000000..4ead8c456e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.DimensionCoordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_bounds

+
+
+DimensionCoordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_data.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_data.html new file mode 100644 index 0000000000..062e2ba030 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_data

+
+
+DimensionCoordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_geometry.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_geometry.html new file mode 100644 index 0000000000..cea507140e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.DimensionCoordinate.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_geometry

+
+
+DimensionCoordinate.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_interior_ring.html new file mode 100644 index 0000000000..767a0c1d06 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_interior_ring

+
+
+DimensionCoordinate.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_node_count.html new file mode 100644 index 0000000000..9528648cef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_node_count.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.DimensionCoordinate.has_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_node_count

+
+
+DimensionCoordinate.has_node_count()[source]
+

Whether geometry bounds have a node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a node count variable, otherwise False.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_part_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_part_node_count.html new file mode 100644 index 0000000000..186a304501 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_part_node_count.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.DimensionCoordinate.has_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_part_node_count

+
+
+DimensionCoordinate.has_part_node_count()[source]
+

Whether geometry bounds have a part node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a part node count variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_property.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_property.html new file mode 100644 index 0000000000..cdb240cc9c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.has_property

+
+
+DimensionCoordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identities.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identities.html new file mode 100644 index 0000000000..148cef4177 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identities.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.DimensionCoordinate.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.identities

+
+
+DimensionCoordinate.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and a colon, +e.g. 'long_name:Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The identities of the bounds, if any.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identities()
+['axis=Z', 'units=m', 'ncvar%z']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+axis=Z
+units=m
+ncvar%z
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identity.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identity.html new file mode 100644 index 0000000000..e1c5440b11 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.identity.html @@ -0,0 +1,222 @@ + + + + + + + cfdm.DimensionCoordinate.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.identity

+
+
+DimensionCoordinate.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  1. The standard_name property.

  2. +
  3. The cf_role property, preceded by 'cf_role='.

  4. +
  5. The axis property, preceded by 'axis='.

  6. +
  7. The long_name property, preceded by 'long_name='.

  8. +
  9. The netCDF variable name, preceded by 'ncvar%'.

  10. +
  11. The identity of the bounds, if any.

  12. +
  13. The value of the default parameter.

  14. +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identity()
+'axis=Z'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.insert_dimension.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.insert_dimension.html new file mode 100644 index 0000000000..e55137c361 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.insert_dimension.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.DimensionCoordinate.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.insert_dimension

+
+
+DimensionCoordinate.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array. A corresponding +axis is also inserted into the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DimensionCoordinate or None

The new construct with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(96, 73, 19, 1)
+>>> g = f.insert_dimension(position=-1)
+>>> g.shape
+(19, 73, 1, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(19, 73, 1, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.is_climatology.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.is_climatology.html new file mode 100644 index 0000000000..91d83d315e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.is_climatology.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.DimensionCoordinate.is_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.is_climatology

+
+
+DimensionCoordinate.is_climatology()[source]
+

True if the coordinates are climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Returns
+
+
bool

Whether or not the coordinates are climatological.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_clear_variable_groups.html new file mode 100644 index 0000000000..dd98b8ffff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DimensionCoordinate.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_clear_variable_groups

+
+
+DimensionCoordinate.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_del_variable.html new file mode 100644 index 0000000000..c7320cf938 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DimensionCoordinate.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_del_variable

+
+
+DimensionCoordinate.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_get_variable.html new file mode 100644 index 0000000000..729a55ce40 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.DimensionCoordinate.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_get_variable

+
+
+DimensionCoordinate.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_has_variable.html new file mode 100644 index 0000000000..7d72bf65e9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.DimensionCoordinate.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_has_variable

+
+
+DimensionCoordinate.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable.html new file mode 100644 index 0000000000..6d879109ba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DimensionCoordinate.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_set_variable

+
+
+DimensionCoordinate.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable_groups.html new file mode 100644 index 0000000000..3004770e0b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.DimensionCoordinate.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_set_variable_groups

+
+
+DimensionCoordinate.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_variable_groups.html new file mode 100644 index 0000000000..eb204c6cb0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DimensionCoordinate.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.nc_variable_groups

+
+
+DimensionCoordinate.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.properties.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.properties.html new file mode 100644 index 0000000000..4dea59842e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DimensionCoordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.properties

+
+
+DimensionCoordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_bounds.html new file mode 100644 index 0000000000..2f95c66e70 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.DimensionCoordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_bounds

+
+
+DimensionCoordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_climatology.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_climatology.html new file mode 100644 index 0000000000..e2fa966e8f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_climatology.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.DimensionCoordinate.set_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_climatology

+
+
+DimensionCoordinate.set_climatology(climatology)[source]
+

Set whether or not coordinates are climatological.

+

Only coordinate constructs with units of reference time (or unset +units) can be set as climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
climatology: bool

Whether or not the coordinates are climatological.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_data.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_data.html new file mode 100644 index 0000000000..500281cd4d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_data.html @@ -0,0 +1,214 @@ + + + + + + + cfdm.DimensionCoordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_data

+
+
+DimensionCoordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted. Must be 1-dimensional, +i.e. scalar or multidimensional data is not allowed.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified DimensionCoordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or DimensionCoordinate

If the operation was in-place then None is returned, +otherwise return a new DimensionCoordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Data(range(10))
+>>> f.set_data(d)
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(10): [0, ..., 9]>
+>>> f.del_data()
+<Data(10): [0, ..., 9]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_geometry.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_geometry.html new file mode 100644 index 0000000000..a6bc287c17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DimensionCoordinate.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_geometry

+
+
+DimensionCoordinate.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_interior_ring.html new file mode 100644 index 0000000000..bccd7ba036 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DimensionCoordinate.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_interior_ring

+
+
+DimensionCoordinate.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.DimensionCoordinate()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_node_count.html new file mode 100644 index 0000000000..48a603177e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_node_count.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.DimensionCoordinate.set_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_node_count

+
+
+DimensionCoordinate.set_node_count(node_count, copy=True)[source]
+

Set the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
node_count: NodeCount

The node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_part_node_count.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_part_node_count.html new file mode 100644 index 0000000000..34df99929b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_part_node_count.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.DimensionCoordinate.set_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_part_node_count

+
+
+DimensionCoordinate.set_part_node_count(part_node_count, copy=True)[source]
+

Set the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
part_node_count: PartNodeCount

The part node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the part node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name':
+...                                           'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_properties.html new file mode 100644 index 0000000000..d1934fc3c0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DimensionCoordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_properties

+
+
+DimensionCoordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_property.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_property.html new file mode 100644 index 0000000000..8324055a91 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DimensionCoordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.set_property

+
+
+DimensionCoordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.squeeze.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.squeeze.html new file mode 100644 index 0000000000..5669ceded5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.squeeze.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.DimensionCoordinate.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.squeeze

+
+
+DimensionCoordinate.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal. Corresponding axes are +also removed from the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DimensionCoordinate or None

The new construct with removed data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> g = f.squeeze([-3, 2])
+>>> g.shape
+(73, 96)
+>>> f.bounds.shape
+(1, 73, 1, 96, 4)
+>>> g.shape
+(73, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.transpose.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.transpose.html new file mode 100644 index 0000000000..38fdf7a13c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.transpose.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.DimensionCoordinate.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.transpose

+
+
+DimensionCoordinate.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+

Corresponding axes of the bounds data array, if present, are +also permuted.

+

Note that if i) the data array is two-dimensional, ii) the two +axes have been permuted, and iii) each cell has four bounds +values; then columns 1 and 3 (counting from 0) of the bounds +axis are swapped to preserve contiguity bounds in adjacent +cells. See section 7.1 “Cell Boundaries” of the CF conventions +for details.

+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DimensionCoordinate or None

The new construct with permuted data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> g = f.transpose([1, 0, 2])
+>>> g.shape
+(73, 19, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(73, 19, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DimensionCoordinate.uncompress.html b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.uncompress.html new file mode 100644 index 0000000000..39cc387bf3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DimensionCoordinate.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.DimensionCoordinate.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DimensionCoordinate.uncompress

+
+
+DimensionCoordinate.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +unchanged.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DimensionCoordinate or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Domain.__deepcopy__.html new file mode 100644 index 0000000000..13322bc11b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Domain.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.__deepcopy__

+
+
+Domain.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Domain()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.__repr__.html b/docs/1.9.0.1/method/cfdm.Domain.__repr__.html new file mode 100644 index 0000000000..01ad06849e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.__repr__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Domain.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.__repr__

+
+
+Domain.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.__str__.html b/docs/1.9.0.1/method/cfdm.Domain.__str__.html new file mode 100644 index 0000000000..ec062c0919 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.__str__.html @@ -0,0 +1,157 @@ + + + + + + + cfdm.Domain.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.__str__

+
+
+Domain.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Domain._docstring_method_exclusions.html new file mode 100644 index 0000000000..8b89b6739f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Domain._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain._docstring_method_exclusions

+
+
+Domain._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Domain._docstring_package_depth.html new file mode 100644 index 0000000000..66bdd1cb5a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Domain._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain._docstring_package_depth

+
+
+Domain._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Domain._docstring_special_substitutions.html new file mode 100644 index 0000000000..f4f271e976 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Domain._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain._docstring_special_substitutions

+
+
+classmethod Domain._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Domain._docstring_substitutions.html new file mode 100644 index 0000000000..6275974dd0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Domain._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain._docstring_substitutions

+
+
+Domain._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.apply_masking.html b/docs/1.9.0.1/method/cfdm.Domain.apply_masking.html new file mode 100644 index 0000000000..2cf27b8200 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.apply_masking.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.Domain.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.apply_masking

+
+
+Domain.apply_masking(inplace=False)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied to all metadata constructs with data.

+

Masking is applied according to any of the following criteria +that are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the +_FillValue property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of +the valid_max property;

  • +
  • where data elements are within the inclusive range specified +by the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no +masking is applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Domain or None

A new domain construct with masked values, or None +if the operation was in-place.

+
+
+
+
+

Examples:

+
>>> d = cfdm.example_field(0).domain
+>>> x = d.construct('longitude')
+>>> x.data[[0, -1]] = cfdm.masked
+>>> print(x.data.array)
+[-- 67.5 112.5 157.5 202.5 247.5 292.5 --]
+>>> cfdm.write(d, 'masked.nc')
+>>> no_mask = cfdm.read('masked.nc', domain=True, mask=False)[0]
+>>> no_mask_x = no_mask.construct('longitude')
+>>> print(no_mask_x.data.array)
+[9.96920997e+36 6.75000000e+01 1.12500000e+02 1.57500000e+02
+ 2.02500000e+02 2.47500000e+02 2.92500000e+02 9.96920997e+36]
+>>> masked = no_mask.apply_masking()
+>>> masked_x = masked.construct('longitude')
+>>> print(masked_x.data.array)
+[-- 67.5 112.5 157.5 202.5 247.5
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.auxiliary_coordinates.html b/docs/1.9.0.1/method/cfdm.Domain.auxiliary_coordinates.html new file mode 100644 index 0000000000..bf0f89fd3d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.auxiliary_coordinates.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Domain.auxiliary_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.auxiliary_coordinates

+
+
+Domain.auxiliary_coordinates(*identities, **filter_kwargs)[source]
+

Return auxiliary coordinate constructs.

+

Note that f.auxiliary_coordinates(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["auxiliary_coordinate"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select auxiliary coordinate constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

If no identities are provided then all auxiliary +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.auxiliary_coordinates()
+Constructs:
+{}
+
+
+
>>> f.auxiliary_coordinates()
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:Grid latitude name(10) >}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.cell_measures.html b/docs/1.9.0.1/method/cfdm.Domain.cell_measures.html new file mode 100644 index 0000000000..c4688d8372 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.cell_measures.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Domain.cell_measures — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.cell_measures

+
+
+Domain.cell_measures(*identities, **filter_kwargs)[source]
+

Return cell measure constructs.

+

f.cell_measures(*identities, **filter_kwargs) is +equivalent to +f.constructs.filter(filter_by_type=["cell_measure"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select cell measure constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

If no identities are provided then all cell measure +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.cell_measures()
+Constructs:
+{}
+
+
+
>>> f.cell_measures()
+Constructs:
+{'cellmeasure0': <CellMeasure: measure%area(9, 10) km2>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.clear_properties.html b/docs/1.9.0.1/method/cfdm.Domain.clear_properties.html new file mode 100644 index 0000000000..266de3238f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Domain.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.clear_properties

+
+
+Domain.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.climatological_time_axes.html b/docs/1.9.0.1/method/cfdm.Domain.climatological_time_axes.html new file mode 100644 index 0000000000..155c8762a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.climatological_time_axes.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.Domain.climatological_time_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.climatological_time_axes

+
+
+Domain.climatological_time_axes()[source]
+

Return all axes which are climatological time axes.

+

This is ascertained by inspecting the values returned by each +coordinate construct’s is_climatology method.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
Returns
+
+
set

The keys of the domain axis constructs that are +climatological time axes.

+
+
+
+
+

Examples:

+
>>> d = cfdm.example_field(0)
+>>> d.climatological_time_axes()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.construct.html b/docs/1.9.0.1/method/cfdm.Domain.construct.html new file mode 100644 index 0000000000..d7a97865cc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.construct.html @@ -0,0 +1,226 @@ + + + + + + + cfdm.Domain.construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.construct

+
+
+Domain.construct(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return a metadata construct.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected construct.

+
+
+

Examples:

+
>>> f = cfdm.example_domain(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct('latitude')
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Domain.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.construct_item.html b/docs/1.9.0.1/method/cfdm.Domain.construct_item.html new file mode 100644 index 0000000000..d212e102d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.construct_item.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.Domain.construct_item — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.construct_item

+
+
+Domain.construct_item(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return a metadata construct and its identifier.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
tuple

The selected construct and its construct identifier.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_domain(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct_item('latitude')
+('dimensioncoordinate1', <DimensionCoordinate: latitude(5) degrees_north>)
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Domain.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.construct_key.html b/docs/1.9.0.1/method/cfdm.Domain.construct_key.html new file mode 100644 index 0000000000..9fb16e366e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.construct_key.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.Domain.construct_key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.construct_key

+
+
+Domain.construct_key(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return the identifier of a metadata construct.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
str

The identifier of the selected construct.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_domain(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct_key('latitude')
+'dimensioncoordinate1'
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Domain.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.coordinate_references.html b/docs/1.9.0.1/method/cfdm.Domain.coordinate_references.html new file mode 100644 index 0000000000..4509011a87 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.coordinate_references.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Domain.coordinate_references — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.coordinate_references

+
+
+Domain.coordinate_references(*identities, **filter_kwargs)[source]
+

Return coordinate reference constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select coordinate reference constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no identities are provided then all coordinate +reference constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.coordinate_references()
+Constructs:
+{}
+
+
+
>>> f.coordinate_references()
+Constructs:
+{'coordinatereference0': <CoordinateReference: atmosphere_hybrid_height_coordinate>,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.coordinates.html b/docs/1.9.0.1/method/cfdm.Domain.coordinates.html new file mode 100644 index 0000000000..dec2edc787 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.coordinates.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Domain.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.coordinates

+
+
+Domain.coordinates(*identities, **filter_kwargs)[source]
+

Return dimension and auxiliary coordinate constructs.

+

Note that f.coordinates(*identities, **filter_kwargs) is +equivalent to +f.constructs.filter(filter_by_type=["dimension_coordinate", +"auxiliary_coordinate"], filter_by_identity=identities, +**filter_kwargs).

+

. versionadded:: (cfdm) 1.7.0

+
+
. seealso:: auxiliary_coordinates, constructs,

dimension_coordinates

+
+
+
+
Parameters
+
+
identities: optional

Select dimension and auxiliary coordinate constructs +that have an identity, defined by their identities +methods, that matches any of the given values.

+

If no identities are provided then all dimension and +auxiliary coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:*

+

>> f.coordinates() +Constructs: +}

+

>> f.coordinates() +Constructs: +‘auxiliarycoordinate0’: <AuxiliaryCoordinate: latitude(10, 9) degrees_N>, +‘auxiliarycoordinate1’: <AuxiliaryCoordinate: longitude(9, 10) degrees_E>, +‘auxiliarycoordinate2’: <AuxiliaryCoordinate: long_name=Grid latitude name(10) >, +‘dimensioncoordinate0’: <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >, +‘dimensioncoordinate1’: <DimensionCoordinate: grid_latitude(10) degrees>, +‘dimensioncoordinate2’: <DimensionCoordinate: grid_longitude(9) degrees>, +‘dimensioncoordinate3’: <DimensionCoordinate: time(1) days since 2018-12-01 >}

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.copy.html b/docs/1.9.0.1/method/cfdm.Domain.copy.html new file mode 100644 index 0000000000..68ae06d7a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.copy.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.Domain.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.copy

+
+
+Domain.copy(data=True)[source]
+

Return a deep copy.

+

d.copy() is equivalent to copy.deepcopy(d).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

fromconstructs

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Domain

The deep copy.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Domain()
+>>> e = d.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.creation_commands.html b/docs/1.9.0.1/method/cfdm.Domain.creation_commands.html new file mode 100644 index 0000000000..674ba4a3bc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.creation_commands.html @@ -0,0 +1,322 @@ + + + + + + + cfdm.Domain.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.creation_commands

+
+
+Domain.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='domain', data_name='data', header=True, _domain=True)[source]
+

Return the commands that would create the domain construct.

+

Construct keys

+

The key parameter of the output set_construct commands is +utilised in order minimise the number of commands needed to +implement cross-referencing between constructs (e.g. between a +coordinate reference construct and coordinate +constructs). This is usually not necessary when building +domain constructs, as by default the set_construct method +returns a unique construct key for the construct being set.

+
+

New in version (cfdm): 1.9.0.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> d = f.domain
+>>> print(d.creation_commands())
+#
+# domain:
+domain = cfdm.Domain()
+#
+# domain_axis: ncdim%lat
+c = cfdm.DomainAxis()
+c.set_size(5)
+c.nc_set_dimension('lat')
+domain.set_construct(c, key='domainaxis0', copy=False)
+#
+# domain_axis: ncdim%lon
+c = cfdm.DomainAxis()
+c.set_size(8)
+c.nc_set_dimension('lon')
+domain.set_construct(c, key='domainaxis1', copy=False)
+#
+# domain_axis:
+c = cfdm.DomainAxis()
+c.set_size(1)
+domain.set_construct(c, key='domainaxis2', copy=False)
+#
+# dimension_coordinate: latitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_north', 'standard_name': 'latitude'})
+c.nc_set_variable('lat')
+data = cfdm.Data([-75.0, -45.0, 0.0, 45.0, 75.0], units='degrees_north', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lat_bnds')
+data = cfdm.Data([[-90.0, -60.0], [-60.0, -30.0], [-30.0, 30.0], [30.0, 60.0], [60.0, 90.0]], units='degrees_north', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+domain.set_construct(c, axes=('domainaxis0',), key='dimensioncoordinate0', copy=False)
+#
+# dimension_coordinate: longitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+c.nc_set_variable('lon')
+data = cfdm.Data([22.5, 67.5, 112.5, 157.5, 202.5, 247.5, 292.5, 337.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lon_bnds')
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0], [135.0, 180.0], [180.0, 225.0], [225.0, 270.0], [270.0, 315.0], [315.0, 360.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+domain.set_construct(c, axes=('domainaxis1',), key='dimensioncoordinate1', copy=False)
+#
+# dimension_coordinate: time
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'days since 2018-12-01', 'standard_name': 'time'})
+c.nc_set_variable('time')
+data = cfdm.Data([31.0], units='days since 2018-12-01', dtype='f8')
+c.set_data(data)
+domain.set_construct(c, axes=('domainaxis2',), key='dimensioncoordinate2', copy=False)
+>>> print(d.creation_commands(representative_data=True, namespace='',
+...                           indent=4, header=False))
+    domain = Domain()
+    c = DomainAxis()
+    c.set_size(5)
+    c.nc_set_dimension('lat')
+    domain.set_construct(c, key='domainaxis0', copy=False)
+    c = DomainAxis()
+    c.set_size(8)
+    c.nc_set_dimension('lon')
+    domain.set_construct(c, key='domainaxis1', copy=False)
+    c = DomainAxis()
+    c.set_size(1)
+    domain.set_construct(c, key='domainaxis2', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'degrees_north', 'standard_name': 'latitude'})
+    c.nc_set_variable('lat')
+    data = <Data(5): [-75.0, ..., 75.0] degrees_north>  # Representative data
+    c.set_data(data)
+    b = Bounds()
+    b.nc_set_variable('lat_bnds')
+    data = <Data(5, 2): [[-90.0, ..., 90.0]] degrees_north>  # Representative data
+    b.set_data(data)
+    c.set_bounds(b)
+    domain.set_construct(c, axes=('domainaxis0',), key='dimensioncoordinate0', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+    c.nc_set_variable('lon')
+    data = <Data(8): [22.5, ..., 337.5] degrees_east>  # Representative data
+    c.set_data(data)
+    b = Bounds()
+    b.nc_set_variable('lon_bnds')
+    data = <Data(8, 2): [[0.0, ..., 360.0]] degrees_east>  # Representative data
+    b.set_data(data)
+    c.set_bounds(b)
+    domain.set_construct(c, axes=('domainaxis1',), key='dimensioncoordinate1', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'days since 2018-12-01', 'standard_name': 'time'})
+    c.nc_set_variable('time')
+    data = <Data(1): [2019-01-01 00:00:00]>  # Representative data
+    c.set_data(data)
+    domain.set_construct(c, axes=('domainaxis2',), key='dimensioncoordinate2', copy=False)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.dataset_compliance.html b/docs/1.9.0.1/method/cfdm.Domain.dataset_compliance.html new file mode 100644 index 0000000000..d41614514d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.dataset_compliance.html @@ -0,0 +1,205 @@ + + + + + + + cfdm.Domain.dataset_compliance — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.dataset_compliance

+
+
+Domain.dataset_compliance(display=False)[source]
+

Return the dataset compliance report.

+

A report of problems encountered whilst reading the construct +from a dataset.

+

If the dataset is partially CF-compliant to the extent that it +is not possible to unambiguously map an element of the netCDF +dataset to an element of the CF data model, then a construct +is still returned by the read function, but may be +incomplete.

+

Such “structural” non-compliance would occur, for example, if +the coordinates attribute of a CF-netCDF data variable +refers to another variable that does not exist, or refers to a +variable that spans a netCDF dimension that does not apply to +the data variable.

+

Other types of non-compliance are not checked, such whether or +not controlled vocabularies have been adhered to.

+

When a dictionary is returned, the compliance report may be +updated by changing the dictionary in-place.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

cfdm.read, _set_dataset_compliance

+
+
+
Parameters
+
+
display: bool, optional

If True print the compliance report. By default the report +is returned as a dictionary.

+
+
+
+
Returns
+
+
None or dict

The report. If display is True then the report is +printed and None is returned. Otherwise the report is +returned as a dictionary.

+
+
+
+
+

Examples:

+

If no problems were encountered, an empty dictionary is returned:

+
>>> f = cfdm.example_field(1)
+>>> cfdm.write(f, 'example.nc')
+>>> g = cfdm.read('example.nc')[0]
+>>> g.dataset_compliance()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.del_construct.html b/docs/1.9.0.1/method/cfdm.Domain.del_construct.html new file mode 100644 index 0000000000..bf330f2448 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.del_construct.html @@ -0,0 +1,231 @@ + + + + + + + cfdm.Domain.del_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.del_construct

+
+
+Domain.del_construct(*identity, default=ValueError(), **filter_kwargs)[source]
+

Remove a metadata construct.

+

If a domain axis construct is selected for removal then it +can’t be spanned by any data arrays of the field nor metadata +constructs, nor be referenced by any cell method +constructs. However, a domain ancillary construct may be +removed even if it is referenced by coordinate reference +construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity:

Select the unique construct that has the identity, +defined by its identities method, that matches the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The removed metadata construct.

+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> f.del_construct('time')
+<DimensionCoordinate: time(1) days since 2018-12-01 >
+>>> f.del_construct('time')
+Traceback (most recent call last):
+    ...
+ValueError: Can't remove non-existent construct 'ti
+>>> f.del_construct('time', default='No time')
+'No time'
+>>> f.del_construct('dimensioncoordinate1')
+<DimensionCoordinate: longitude(8) degrees_east>
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), ncdim%lon(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.del_data_axes.html b/docs/1.9.0.1/method/cfdm.Domain.del_data_axes.html new file mode 100644 index 0000000000..bac578958f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.del_data_axes.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Domain.del_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.del_data_axes

+
+
+Domain.del_data_axes(key, default=ValueError())[source]
+

Removes the keys of the axes spanned by the construct data.

+

Specifically, removes the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed keys of the domain axis constructs spanned +by the data.

+
+
+
+
+

Examples:

+
>>> f.del_data_axes(key='dimensioncoordinate2')
+('domainaxis1',)
+
+
+
>>> f.has_data_axes(key='auxiliarycoordinate0')
+False
+>>> f.has_data_axes(key='auxiliarycoordinate0', default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.del_property.html b/docs/1.9.0.1/method/cfdm.Domain.del_property.html new file mode 100644 index 0000000000..07aa5fbdcf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Domain.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.del_property

+
+
+Domain.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.dimension_coordinates.html b/docs/1.9.0.1/method/cfdm.Domain.dimension_coordinates.html new file mode 100644 index 0000000000..80a0e1d858 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.dimension_coordinates.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Domain.dimension_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.dimension_coordinates

+
+
+Domain.dimension_coordinates(*identities, **filter_kwargs)[source]
+

Return dimension coordinate constructs.

+

Note that f.dimension_coordinates(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["dimension_coordinate"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select dimension coordinate constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

If no identities are provided then all dimension +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.dimension_coordinates()
+Constructs:
+{}
+
+
+
>>> f.dimension_coordinates()
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.Domain.domain_ancillaries.html new file mode 100644 index 0000000000..df6e4381b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.domain_ancillaries.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Domain.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.domain_ancillaries

+
+
+Domain.domain_ancillaries(*identities, **filter_kwargs)[source]
+

Return domain ancillary constructs.

+

Note that f.domain_ancillaries(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["domain_ancillary"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select domain ancillary constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.domain_ancillaries()
+Constructs:
+{}
+
+
+
>>> f.domain_ancillaries()
+Constructs:
+{'domainancillary0': <DomainAncillary: ncvar%a(1) m>,
+ 'domainancillary1': <DomainAncillary: ncvar%b(1) >,
+ 'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.domain_axes.html b/docs/1.9.0.1/method/cfdm.Domain.domain_axes.html new file mode 100644 index 0000000000..26a1ec2998 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.domain_axes.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Domain.domain_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.domain_axes

+
+
+Domain.domain_axes(*identities, **filter_kwargs)[source]
+

Return domain axis constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: tuple, optional

Select domain axis constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

Additionally, if for a given value, +f.coordinates(value, filter_by_naxes=(1,)) returns +1-d coordinate constructs that all span the same +domain axis construct then that domain axis construct +is selected. See coordinates for details.

+

Additionally, if there is an associated Field data +array and a value matches the integer position of an +array dimension, then the corresponding domain axis +construct is selected.

+

If no values are provided then all domain axis +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.domain_axis_key.html b/docs/1.9.0.1/method/cfdm.Domain.domain_axis_key.html new file mode 100644 index 0000000000..4c04f0108f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.domain_axis_key.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Domain.domain_axis_key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.domain_axis_key

+
+
+Domain.domain_axis_key(*identity, default=ValueError(), **filter_kwargs)[source]
+

Returns the domain axis key spanned by 1-d coordinates.

+

Specifically, returns the key of the domain axis construct that +is spanned by 1-d coordinate constructs.

+
+
Parameters
+
+
identity: optional

Select the 1-d dimension coordinate constructs that +have an identity, defined by their identities +methods, that matches any of the given values.

+

If no values are provided then all 1-d dimension +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
str

The key of the domain axis construct that is spanned by +the data of the selected 1-d coordinate constructs.

+
+
+
+
+

Examples:

+
>>> print(f.constructs())
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: time(1) days since 1964-01-21 00:00:00 >,
+ 'dimensioncoordinate1': <DimensionCoordinate: pressure(23) mbar>,
+ 'dimensioncoordinate2': <DimensionCoordinate: latitude(160) degrees_north>,
+ 'dimensioncoordinate3': <DimensionCoordinate: longitude(320) degrees_east>,
+ 'domainaxis0': <DomainAxis: size(1)>,
+ 'domainaxis1': <DomainAxis: size(23)>,
+ 'domainaxis2': <DomainAxis: size(160)>,
+ 'domainaxis3': <DomainAxis: size(320)>}
+>>> f.domain.domain_axis_key('time')
+'domainaxis0'
+>>> f.domain.domain_axis_key('longitude')
+'domainaxis3'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.dump.html b/docs/1.9.0.1/method/cfdm.Domain.dump.html new file mode 100644 index 0000000000..c6f673afd8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.dump.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Domain.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.dump

+
+
+Domain.dump(display=True, _omit_properties=(), _prefix='', _title=None, _create_title=True, _level=0)[source]
+

A full description of the domain construct.

+

Returns a description of all properties, including those of +metadata constructs and their components, and provides +selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.equals.html b/docs/1.9.0.1/method/cfdm.Domain.equals.html new file mode 100644 index 0000000000..4de27af7e6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.equals.html @@ -0,0 +1,281 @@ + + + + + + + cfdm.Domain.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.equals

+
+
+Domain.equals(**kwargs)[source]
+

Whether two constructs are the same.

+

Equality is strict by default. This means that for two +constructs to be considered equal they must have corresponding +metadata constructs and for each pair of constructs:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

Any type of object may be tested but, in general, equality is +only possible with another field construct, or a subclass of +one. See the ignore_type parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
ignore_properties: sequence of str, optional

The names of properties of the construct (not the +metadata constructs) to omit from the comparison. Note +that the Conventions property is always omitted.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Domain +instance, or a subclass of one. If ignore_type is +True then cfdm.Domain(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two constructs are equal.

+
+
+
+
+

Examples:

+
>>> f.equals(f)
+True
+>>> f.equals(f.copy())
+True
+>>> f.equals(f[...])
+True
+>>> f.equals('a string, not a construct')
+False
+
+
+
>>> g = f.copy()
+>>> g.set_property('foo', 'bar')
+>>> f.equals(g)
+False
+>>> f.equals(g, verbose=3)
+Domain: Non-common property name: foo
+Domain: Different properties
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.fromconstructs.html b/docs/1.9.0.1/method/cfdm.Domain.fromconstructs.html new file mode 100644 index 0000000000..a36acd8252 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.fromconstructs.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Domain.fromconstructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.fromconstructs

+
+
+classmethod Domain.fromconstructs(constructs, copy=False)[source]
+

Return a new domain containing the given metadata constructs.

+

The new domain acts as a view to the given constructs, +i.e. changes to the domain, such as the addition or removal of +a construct, will also affect the input Constructs instance.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
constructs: Constructs

The constructs from which to create the new +domain. Cell method and field ancillary constructs are +ignored.

+
+
copy: bool, optional

If True then deep copy the metadata constructs prior +to initialization. By default the metadata constructs +are not copied. Note that even when copy is True, +the input Constructs container is not copied.

+
+
+
+
Returns
+
+
Domain

The domain created from a view of the constructs.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> d = cfdm.Domain.fromconstructs(f.constructs)
+>>> d
+<Domain: {1, 5, 8}>
+>>> d = cfdm.Domain.fromconstructs(f.constructs.copy())
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.get_construct.html b/docs/1.9.0.1/method/cfdm.Domain.get_construct.html new file mode 100644 index 0000000000..520efc2096 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.get_construct.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Domain.get_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.get_construct

+
+
+Domain.get_construct(key, default=ValueError())[source]
+

Return a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The key of the metadata construct.

+
+
Parameter example:

key='domainaxis1'

+
+
+
+
default: optional

Return the value of the default parameter if the +construct does not exist.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f.constructs()
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degree_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degreeE>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:greek_letters(10) >,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'domainaxis1': <DomainAxis: 10>,
+ 'domainaxis2': <DomainAxis: 9>}
+>>> f.get_construct('dimensioncoordinate1')
+<DimensionCoordinate: grid_latitude(10) degrees>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.get_data_axes.html b/docs/1.9.0.1/method/cfdm.Domain.get_data_axes.html new file mode 100644 index 0000000000..21fcb04f7a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.get_data_axes.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Domain.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.get_data_axes

+
+
+Domain.get_data_axes(key, default=<class 'ValueError'>)[source]
+

Gets the keys of the axes spanned by a construct’s data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the +data.

+
+
+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(default=None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.get_filenames.html b/docs/1.9.0.1/method/cfdm.Domain.get_filenames.html new file mode 100644 index 0000000000..3619a96e1a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.get_filenames.html @@ -0,0 +1,174 @@ + + + + + + + cfdm.Domain.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.get_filenames

+
+
+Domain.get_filenames()[source]
+

Return the file names containing the metadata construct data.

+
+
Returns
+
+
set

The file names in normalized, absolute form. If all of +the data are in memory then an empty set is +returned.

+
+
+
+
+

Examples:

+
>>> d = cfdm.example_field(0).domain
+>>> cfdm.write(d, 'temp_file.nc')
+>>> e = cfdm.read('temp_file.nc', domain=True)[0]
+>>> e.get_filenames()
+{'temp_file.nc'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.get_property.html b/docs/1.9.0.1/method/cfdm.Domain.get_property.html new file mode 100644 index 0000000000..0e873ff923 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Domain.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.get_property

+
+
+Domain.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_bounds.html b/docs/1.9.0.1/method/cfdm.Domain.has_bounds.html new file mode 100644 index 0000000000..c562edf1a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_bounds.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.Domain.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_bounds

+
+
+Domain.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.9.0.0

+
+
+

See also

+

has_data

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_construct.html b/docs/1.9.0.1/method/cfdm.Domain.has_construct.html new file mode 100644 index 0000000000..ac1a2507f1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Domain.has_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_construct

+
+
+Domain.has_construct(*identity, **filter_kwargs)[source]
+

Whether a unique metadata construct exists.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity:

Select the unique construct that has the identity, +defined by its identities method, that matches the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

Whether or not a unique construct can be identified.

+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> f.has_construct('time')
+True
+>>> f.del_construct('altitude')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_data.html b/docs/1.9.0.1/method/cfdm.Domain.has_data.html new file mode 100644 index 0000000000..1876650617 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_data.html @@ -0,0 +1,171 @@ + + + + + + + cfdm.Domain.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_data

+
+
+Domain.has_data()[source]
+

Whether or not the construct has data.

+

Domain instances never have data.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_data_axes.html b/docs/1.9.0.1/method/cfdm.Domain.has_data_axes.html new file mode 100644 index 0000000000..bd39e96642 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_data_axes.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Domain.has_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_data_axes

+
+
+Domain.has_data_axes(key)[source]
+

Whether the axes spanned by the construct data have been set.

+

Specifically, whether the domain axis constructs spanned by the +data of a metadata construct have been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+
+
bool

True if domain axis constructs that span the data been +set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(default=None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_geometry.html b/docs/1.9.0.1/method/cfdm.Domain.has_geometry.html new file mode 100644 index 0000000000..90fb1c8d9a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_geometry.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Domain.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_geometry

+
+
+Domain.has_geometry()[source]
+

Return whether or not any coordinates have cell geometries.

+
+

New in version (cfdm): 1.8.0

+
+
+
Returns
+
+
bool

True if there are geometries, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.has_geometry()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.has_property.html b/docs/1.9.0.1/method/cfdm.Domain.has_property.html new file mode 100644 index 0000000000..62450619c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Domain.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.has_property

+
+
+Domain.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.identities.html b/docs/1.9.0.1/method/cfdm.Domain.identities.html new file mode 100644 index 0000000000..48b63d0a94 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.identities.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Domain.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.identities

+
+
+Domain.identities()[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • All other properties, preceded by the property name and a +equals e.g. 'foo=bar'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.9.0.0

+
+
+

See also

+

identity

+
+
+
Returns
+
+
list

The identities.

+
+
+
+
+

Examples:

+
>>> d = cfdm.Domain()
+>>> d.set_properties({'foo': 'bar',
+...                   'long_name': 'Domain for model'})
+>>> d.nc_set_variable('dom1')
+>>> d.identities()
+['long_name=Domain for model', 'foo=bar', 'ncvar%dom1']
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.identity.html b/docs/1.9.0.1/method/cfdm.Domain.identity.html new file mode 100644 index 0000000000..5ce91cd4d1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.identity.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Domain.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.identity

+
+
+Domain.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.9.0.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of +the default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> d = cfdm.Domain()
+>>> d.set_properties({'foo': 'bar',
+...                   'long_name': 'Domain for model'})
+>>> d.nc_set_variable('dom1')
+>>> d.identity()
+'long_name=Domain for model'
+>>> d.del_property('long_name')
+'long_name=Domain for model'
+>>> d.identity(default='no identity')
+'ncvar%dom1'
+>>> d.identity()
+'ncvar%dom1'
+>>> d.nc_del_variable()
+'dom1'
+>>> d.identity()
+''
+>>> d.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_dimension_groups.html new file mode 100644 index 0000000000..00b13d0651 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_dimension_groups.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Domain.nc_clear_component_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_component_dimension_groups

+
+
+Domain.nc_clear_component_dimension_groups(component)[source]
+

Remove the netCDF dimension groups of components.

+

Removes the netCDF dimension groups for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_clear_component_dimension_groups('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_sample_dimension_groups.html new file mode 100644 index 0000000000..ec855a6888 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_sample_dimension_groups.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Domain.nc_clear_component_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_component_sample_dimension_groups

+
+
+Domain.nc_clear_component_sample_dimension_groups(component)[source]
+

Remove the netCDF sample dimension groups of components.

+

Removes the netCDF sample dimension groups for all components +of a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_sample_dimension_groups('count')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_variable_groups.html new file mode 100644 index 0000000000..b3cf141912 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_component_variable_groups.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.Domain.nc_clear_component_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_component_variable_groups

+
+
+Domain.nc_clear_component_variable_groups(component)[source]
+

Remove the netCDF variable groups of components.

+

Removes the netCDF variable groups for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_clear_component_variable_groups('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_geometry_variable_groups.html new file mode 100644 index 0000000000..3796b4fc80 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_geometry_variable_groups.html @@ -0,0 +1,205 @@ + + + + + + + cfdm.Domain.nc_clear_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_geometry_variable_groups

+
+
+Domain.nc_clear_geometry_variable_groups()[source]
+

Remove the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with +nc_set_geometry_variable, with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_global_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_global_attributes.html new file mode 100644 index 0000000000..2e75c8f49e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_global_attributes.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Domain.nc_clear_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_global_attributes

+
+
+Domain.nc_clear_global_attributes()[source]
+

Removes properties to write as netCDF global attributes.

+

When multiple field constructs are being written to the same +file, it is only possible to create a netCDF global attribute +from a property that has identical values for each field +construct. If any field construct’s property has a different +value then the property will not be written as a netCDF global +attribute, even if it has been selected as such, but will +appear instead as attributes on the netCDF data variables +corresponding to each field construct.

+

The standard description-of-file-contents properties are +always written as netCDF global attributes, if possible, so +selecting them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The removed selection of properties requested for +writing to netCDF global attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_group_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_group_attributes.html new file mode 100644 index 0000000000..d22ff6806c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_group_attributes.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Domain.nc_clear_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_group_attributes

+
+
+Domain.nc_clear_group_attributes()[source]
+

Removes properties to write as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
dict

The removed selection of properties requested for writing +to netCDF group attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_variable_groups.html new file mode 100644 index 0000000000..599fff81f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Domain.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_clear_variable_groups

+
+
+Domain.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_dimension.html b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_dimension.html new file mode 100644 index 0000000000..39ac678f48 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_dimension.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Domain.nc_del_component_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_del_component_dimension

+
+
+Domain.nc_del_component_dimension(component)[source]
+

Remove the netCDF dimension name of components.

+

Removes the netCDF dimension name for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_dimension('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_sample_dimension.html new file mode 100644 index 0000000000..5de1711ca9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_sample_dimension.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Domain.nc_del_component_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_del_component_sample_dimension

+
+
+Domain.nc_del_component_sample_dimension(component)[source]
+

Remove the netCDF sample dimension name of components.

+

Removes the netCDF sample dimension name for all components of +a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_sample_dimension('count')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_variable.html new file mode 100644 index 0000000000..bfc9f834a1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_del_component_variable.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.Domain.nc_del_component_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_del_component_variable

+
+
+Domain.nc_del_component_variable(component)[source]
+

Remove the netCDF variable name of components.

+

Removes the netCDF variable name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_variable('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_del_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_del_geometry_variable.html new file mode 100644 index 0000000000..830f02a1ce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_del_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Domain.nc_del_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_del_geometry_variable

+
+
+Domain.nc_del_geometry_variable(default=ValueError())[source]
+

Remove the netCDF geometry container variable name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the netCDF +dimension name has not been set. If set to an Exception +instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF geometry container variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_del_variable.html new file mode 100644 index 0000000000..a9fa13f4e4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Domain.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_del_variable

+
+
+Domain.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_geometry_variable_groups.html new file mode 100644 index 0000000000..0ccc53e079 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_geometry_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Domain.nc_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_geometry_variable_groups

+
+
+Domain.nc_geometry_variable_groups()[source]
+

Return the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +

nc_set_geometry_variable_groups

+
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_get_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_get_geometry_variable.html new file mode 100644 index 0000000000..2d20d60a3a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_get_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Domain.nc_get_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_get_geometry_variable

+
+
+Domain.nc_get_geometry_variable(default=ValueError())[source]
+

Return the netCDF geometry container variable name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF geometry container variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_get_variable.html new file mode 100644 index 0000000000..38e5ae51c1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Domain.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_get_variable

+
+
+Domain.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_global_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_global_attributes.html new file mode 100644 index 0000000000..6f14526b8b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_global_attributes.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Domain.nc_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_global_attributes

+
+
+Domain.nc_global_attributes(values=False)[source]
+

Returns properties to write as netCDF global attributes.

+

When multiple field constructs are being written to the same file, +it is only possible to create a netCDF global attribute from a +property that has identical values for each field construct. If +any field construct’s property has a different value then the +property will not be written as a netCDF global attribute, even if +it has been selected as such, but will appear instead as +attributes on the netCDF data variables corresponding to each +field construct.

+

The standard description-of-file-contents properties are always +written as netCDF global attributes, if possible, so selecting +them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
values: bool, optional

Return the value (rather than None) for any global +attribute that has, by definition, the same value as a +construct property.

+
+

New in version (cfdm): 1.8.2

+
+
+
+
+
Returns
+
+
dict

The selection of properties requested for writing to +netCDF global attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes(values=True)
+{'Conventions': 'CF-1.9', 'comment': 'global_comment', 'foo': 'bar'}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_group_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_group_attributes.html new file mode 100644 index 0000000000..7b9dae0f28 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_group_attributes.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Domain.nc_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_group_attributes

+
+
+Domain.nc_group_attributes(values=False)[source]
+

Returns properties to write as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
values: bool, optional

Return the value (rather than None) for any group +attribute that has, by definition, the same value as a +construct property.

+
+
+
+
Returns
+
+
dict

The selection of properties requested for writing to +netCDF group attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_has_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_has_geometry_variable.html new file mode 100644 index 0000000000..645d91cd2f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_has_geometry_variable.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Domain.nc_has_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_has_geometry_variable

+
+
+Domain.nc_has_geometry_variable()[source]
+

Whether a netCDF geometry container variable has a name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if the netCDF geometry container variable name has +been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_has_variable.html new file mode 100644 index 0000000000..fa3e9e575a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Domain.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_has_variable

+
+
+Domain.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension.html new file mode 100644 index 0000000000..68f6e1f209 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension.html @@ -0,0 +1,219 @@ + + + + + + + cfdm.Domain.nc_set_component_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_dimension

+
+
+Domain.nc_set_component_dimension(component, value)[source]
+

Set the netCDF dimension name of components.

+

Sets the netCDF dimension name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
value: str

The netCDF dimension name to be set for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_dimension('interior_ring', 'part')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension_groups.html new file mode 100644 index 0000000000..f395446188 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_dimension_groups.html @@ -0,0 +1,219 @@ + + + + + + + cfdm.Domain.nc_set_component_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_dimension_groups

+
+
+Domain.nc_set_component_dimension_groups(component, groups)[source]
+

Set the netCDF dimension groups of components.

+

Sets the netCDF dimension groups for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_dimension_groups('interior_ring', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension.html new file mode 100644 index 0000000000..b246ff78af --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Domain.nc_set_component_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_sample_dimension

+
+
+Domain.nc_set_component_sample_dimension(component, value)[source]
+

Set the netCDF sample dimension name of components.

+

Sets the netCDF sample dimension name for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
value: str

The netCDF sample_dimension name to be set for each +component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_sample_dimension('count', 'obs')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension_groups.html new file mode 100644 index 0000000000..2199bb43d6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_sample_dimension_groups.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Domain.nc_set_component_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_sample_dimension_groups

+
+
+Domain.nc_set_component_sample_dimension_groups(component, groups)[source]
+

Set the netCDF sample dimension groups of components.

+

Sets the netCDF sample dimension groups for all components of +a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_sample_dimension_groups('count', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable.html new file mode 100644 index 0000000000..ada804a9d4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable.html @@ -0,0 +1,227 @@ + + + + + + + cfdm.Domain.nc_set_component_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_variable

+
+
+Domain.nc_set_component_variable(component, value)[source]
+

Set the netCDF variable name for components.

+

Sets the netCDF variable name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
value: str

The netCDF variable name to be set for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_variable('interior_ring', 'interiorring_1')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable_groups.html new file mode 100644 index 0000000000..b72f744723 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_component_variable_groups.html @@ -0,0 +1,227 @@ + + + + + + + cfdm.Domain.nc_set_component_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_component_variable_groups

+
+
+Domain.nc_set_component_variable_groups(component, groups)[source]
+

Set the netCDF variable groups of components.

+

Sets the netCDF variable groups for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_variable_groups('interior_ring', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable.html new file mode 100644 index 0000000000..fedc41a25b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Domain.nc_set_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_geometry_variable

+
+
+Domain.nc_set_geometry_variable(value)[source]
+

Set the netCDF geometry container variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF geometry container variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable_groups.html new file mode 100644 index 0000000000..58c50a4346 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_geometry_variable_groups.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Domain.nc_set_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_geometry_variable_groups

+
+
+Domain.nc_set_geometry_variable_groups(groups)[source]
+

Set the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_geometry_variable, +with the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry__variablegroups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attribute.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attribute.html new file mode 100644 index 0000000000..d43ccacb4d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attribute.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Domain.nc_set_global_attribute — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_global_attribute

+
+
+Domain.nc_set_global_attribute(prop, value=None)[source]
+

Select a property to be written as a netCDF global attribute.

+

When multiple field constructs are being written to the same file, +it is only possible to create a netCDF global attribute from a +property that has identical values for each field construct. If +any field construct’s property has a different value then the +property will not be written as a netCDF global attribute, even if +it has been selected as such, but will appear instead as +attributes on the netCDF data variables corresponding to each +field construct.

+

The standard description-of-file-contents properties are always +written as netCDF global attributes, if possible, so selecting +them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

Select the property to be written (if possible) as a +netCDF global attribute.

+
+
value: optional

The value of the netCDF global attribute, which will be +created (if possible) in addition to the property as +written to a netCDF data variable. If unset (or None) +then this acts as an instruction to write the property (if +possible) to a netCDF global attribute instead of to a +netCDF data variable.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attributes.html new file mode 100644 index 0000000000..37db5c7b81 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_global_attributes.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.Domain.nc_set_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_global_attributes

+
+
+Domain.nc_set_global_attributes(properties, copy=True)[source]
+

Set properties to be written as netCDF global attributes.

+

When multiple field constructs are being written to the same +file, it is only possible to create a netCDF global attribute +from a property that has identical values for each field +construct. If any field construct’s property has a different +value then the property will not be written as a netCDF global +attribute, even if it has been selected as such, but will +appear instead as attributes on the netCDF data variables +corresponding to each field construct.

+

The standard description-of-file-contents properties are +always written as netCDF global attributes, if possible, so +selecting them is optional.

+
+

New in version (cfdm): 1.7.10

+
+ +
+
Parameters
+
+
properties: dict

Set the properties be written as a netCDF global +attribute from the dictionary supplied. The value of a +netCDF global attribute, which will be created (if +possible) in addition to the property as written to a +netCDF data variable. If a value of None is used +then this acts as an instruction to write the property +(if possible) to a netCDF global attribute instead of +to a netCDF data variable.

+
+
Parameter example:

properties={'Conventions': None, 'project': 'research'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attributes({})
+>>> f.nc_set_global_attributes({'foo': None})
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attributes('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_set_global_attributes('foo', 'bar')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': 'bar'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attribute.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attribute.html new file mode 100644 index 0000000000..415a35f662 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attribute.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Domain.nc_set_group_attribute — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_group_attribute

+
+
+Domain.nc_set_group_attribute(prop, value=None)[source]
+

Select a property to be written as a netCDF group attribute.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
prop: str

Select the property to be written (if possible) as a +netCDF group attribute.

+
+
value: optional

The value of the netCDF group attribute, which will be +created (if possible) in addition to the property as +written to a netCDF data variable. If unset (or +None) then this acts as an instruction to write the +property (if possible) to a netCDF group attribute +instead of to a netCDF data variable.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attributes.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attributes.html new file mode 100644 index 0000000000..c66b726c01 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_group_attributes.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Domain.nc_set_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_group_attributes

+
+
+Domain.nc_set_group_attributes(properties, copy=True)[source]
+

Set properties to be written as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
properties: dict

Set the properties be written as a netCDF group +attribute from the dictionary supplied. The value of a +netCDF group attribute, which will be created (if +possible) in addition to the property as written to a +netCDF data variable. If a value of None is used +then this acts as an instruction to write the property +(if possible) to a netCDF group attribute instead of +to a netCDF data variable.

+
+
Parameter example:

properties={'Conventions': None, 'project': 'research'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable.html new file mode 100644 index 0000000000..49b4dd0f62 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Domain.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_variable

+
+
+Domain.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable_groups.html new file mode 100644 index 0000000000..2c8448ecc0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Domain.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_set_variable_groups

+
+
+Domain.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Domain.nc_variable_groups.html new file mode 100644 index 0000000000..53bf5c1208 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Domain.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.nc_variable_groups

+
+
+Domain.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.properties.html b/docs/1.9.0.1/method/cfdm.Domain.properties.html new file mode 100644 index 0000000000..c63b0e8277 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Domain.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.properties

+
+
+Domain.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.set_construct.html b/docs/1.9.0.1/method/cfdm.Domain.set_construct.html new file mode 100644 index 0000000000..8132467b96 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.set_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Domain.set_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.set_construct

+
+
+Domain.set_construct(construct, key=None, axes=None, copy=True)[source]
+

Set a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
construct:

The metadata construct to be inserted.

+
+
key: str, optional

The construct identifier to be used for the +construct. If not set then a new, unique identifier is +created automatically. If the identifier already +exists then the existing construct will be replaced.

+
+
Parameter example:

key='cellmeasure0'

+
+
+
+
axes: (sequence of) str, optional

The construct identifiers of the domain axis +constructs spanned by the data array. An exception is +raised if used for a metadata construct that can not +have a data array, i.e. domain axis, cell method and +coordinate reference constructs.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
copy: bool, optional

If True then set a copy of the construct. By default +the construct is copied.

+
+
+
+
Returns
+
+
str

The construct identifier for the construct.

+
+
+
+
+

Examples:

+
>>> key = f.set_construct(c)
+>>> key = f.set_construct(c, copy=False)
+>>> key = f.set_construct(c, axes='domainaxis2')
+>>> key = f.set_construct(c, key='cellmeasure0')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.set_data_axes.html b/docs/1.9.0.1/method/cfdm.Domain.set_data_axes.html new file mode 100644 index 0000000000..1c43dac5ce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.set_data_axes.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Domain.set_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.set_data_axes

+
+
+Domain.set_data_axes(axes, key)[source]
+

Sets domain axis constructs spanned by the construct data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data_axes, get_data, get_data_axes, +has_data_axes

+
+
+
Parameters
+
+
axes: sequence of str

The identifiers of the domain axis constructs spanned +by the data of the field or of a metadata construct.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.set_properties.html b/docs/1.9.0.1/method/cfdm.Domain.set_properties.html new file mode 100644 index 0000000000..0a73d8a920 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Domain.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.set_properties

+
+
+Domain.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Domain.set_property.html b/docs/1.9.0.1/method/cfdm.Domain.set_property.html new file mode 100644 index 0000000000..3f1eaa7c8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Domain.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Domain.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Domain.set_property

+
+
+Domain.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.__deepcopy__.html new file mode 100644 index 0000000000..38b8c0e1d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.DomainAncillary.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.__deepcopy__

+
+
+DomainAncillary.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.DomainAncillary()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.__getitem__.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.__getitem__.html new file mode 100644 index 0000000000..120ff5c2b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.__getitem__.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.__getitem__

+
+
+DomainAncillary.__getitem__(indices)[source]
+

Return a subspace of the construct defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

The new subspace contains the same properties and similar +components to the original construct, but the latter are also +subspaced over their corresponding axes.

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran). This is +the same behaviour as indexing on a Variable object of the +netCDF4 package.

  • +
+
+
Returns
+
+
DomainAncillary

The subspace of the construct.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.__repr__.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.__repr__.html new file mode 100644 index 0000000000..2ec67363ac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DomainAncillary.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.__repr__

+
+
+DomainAncillary.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.__str__.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.__str__.html new file mode 100644 index 0000000000..8180d58208 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DomainAncillary.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.__str__

+
+
+DomainAncillary.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_method_exclusions.html new file mode 100644 index 0000000000..5afb108803 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary._docstring_method_exclusions

+
+
+DomainAncillary._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_package_depth.html new file mode 100644 index 0000000000..cdacce597e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DomainAncillary._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary._docstring_package_depth

+
+
+DomainAncillary._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_special_substitutions.html new file mode 100644 index 0000000000..c89f8c545e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.DomainAncillary._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary._docstring_special_substitutions

+
+
+classmethod DomainAncillary._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_substitutions.html new file mode 100644 index 0000000000..a7c5c0ce93 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DomainAncillary._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary._docstring_substitutions

+
+
+DomainAncillary._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.apply_masking.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.apply_masking.html new file mode 100644 index 0000000000..d81c96a91b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.apply_masking.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.DomainAncillary.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.apply_masking

+
+
+DomainAncillary.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria +that are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the +_FillValue property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of +the valid_max property;

  • +
  • where data elements are within the inclusive range specified +by the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no +masking is applied for that method.

+

The cell bounds, if any, are also masked according to the same +criteria as the parent construct. If, however, any of the +relevant properties are explicitly set on the bounds instance +then their values will be used in preference to those of the +parent construct.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DomainAncillary or None

A new instance with masked values, or None if the +operation was in-place.

+
+
+
+
+

Examples:

+
>>> print(c.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_c = c.apply_masking()
+>>> print(masked_c.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.clear_properties.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.clear_properties.html new file mode 100644 index 0000000000..5f7be43e6f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.clear_properties

+
+
+DomainAncillary.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.copy.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.copy.html new file mode 100644 index 0000000000..3e8f26f1fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.DomainAncillary.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.copy

+
+
+DomainAncillary.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
DomainAncillary

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.creation_commands.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.creation_commands.html new file mode 100644 index 0000000000..06f29312a9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.creation_commands.html @@ -0,0 +1,259 @@ + + + + + + + cfdm.DomainAncillary.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.creation_commands

+
+
+DomainAncillary.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', bounds_name='b', interior_ring_name='i', header=True, _coordinate=False)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the DomainAncillary instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
bounds_name: str, optional

The name of the construct’s Bounds instance created +by the returned commands.

+
+
Parameter example:

name='bounds1'

+
+
+
+
interior_ring_name: str, optional

The name of the construct’s InteriorRing instance +created by the returned commands.

+
+
Parameter example:

name='ir1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.DomainAncillary(
+...     properties={'units': 'degrees_east',
+...                 'standard_name': 'longitude'}
+... )
+>>> x.set_data([22.5, 67.5, 112.5])
+>>> b = cfdm.Bounds()
+>>> b.set_data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]])
+>>> x.set_bounds(b)
+>>> print(x.creation_commands(header=False))
+c = cfdm.DomainAncillary()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+data = cfdm.Data([22.5, 67.5, 112.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_bounds.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_bounds.html new file mode 100644 index 0000000000..9df8a4bd43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_bounds

+
+
+DomainAncillary.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_data.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_data.html new file mode 100644 index 0000000000..b95848fcfa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DomainAncillary.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_data

+
+
+DomainAncillary.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_geometry.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_geometry.html new file mode 100644 index 0000000000..d8192c43c0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_geometry

+
+
+DomainAncillary.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_interior_ring.html new file mode 100644 index 0000000000..43aaf281f1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DomainAncillary.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_interior_ring

+
+
+DomainAncillary.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_node_count.html new file mode 100644 index 0000000000..d1e9aed418 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.del_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_node_count

+
+
+DomainAncillary.del_node_count(default=ValueError())[source]
+

Remove the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The removed node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_part_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_part_node_count.html new file mode 100644 index 0000000000..06ec7374c0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.del_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_part_node_count

+
+
+DomainAncillary.del_part_node_count(default=ValueError())[source]
+

Remove the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The removed part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.del_property.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_property.html new file mode 100644 index 0000000000..c9635d4008 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.DomainAncillary.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.del_property

+
+
+DomainAncillary.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.dump.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.dump.html new file mode 100644 index 0000000000..361407036a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.DomainAncillary.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.dump

+
+
+DomainAncillary.dump(display=True, _omit_properties=None, _key=None, _level=0, _title=None, _axes=None, _axis_names=None)[source]
+

A full description of the domain ancillary construct.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.equals.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.equals.html new file mode 100644 index 0000000000..660b2d1613 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.equals.html @@ -0,0 +1,270 @@ + + + + + + + cfdm.DomainAncillary.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.equals

+
+
+DomainAncillary.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+
    +
  • if there are bounds then their descriptive properties (if +any) must be the same and their data arrays must have same +shape and data type, the same missing data mask, and be +element-wise equal (see the ignore_properties and +ignore_data_type parameters).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another DomainAncillary +instance, or a subclass of one. If ignore_type is +True then cfdm.DomainAncillary(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> p.equals(p)
+True
+>>> p.equals(p.copy())
+True
+>>> p.equals('not a colection of properties')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds.html new file mode 100644 index 0000000000..09bee588ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_bounds

+
+
+DomainAncillary.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> b = cfdm.Bounds(data=cfdm.Data(range(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds_data.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds_data.html new file mode 100644 index 0000000000..318bf1413f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_bounds_data.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DomainAncillary.get_bounds_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_bounds_data

+
+
+DomainAncillary.get_bounds_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the bounds data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

bounds, get_bounds, get_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there are +no bounds data.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The bounds data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> x = f.construct('latitude')
+>>> x.get_bounds_data()
+<Data(5, 2): [[-90.0, ..., 90.0]] degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_data.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_data.html new file mode 100644 index 0000000000..cdb5291c52 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.DomainAncillary.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_data

+
+
+DomainAncillary.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_filenames.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_filenames.html new file mode 100644 index 0000000000..af2c2ffac4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_filenames.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.DomainAncillary.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_filenames

+
+
+DomainAncillary.get_filenames()[source]
+

Return the name of the file or files containing the data.

+

The names of the file or files containing the bounds data are also +returned.

+
+
Returns
+
+
set

The file names in normalised, absolute form. If all of +the data are in memory then an empty set is +returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_geometry.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_geometry.html new file mode 100644 index 0000000000..699a1b9e40 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_geometry

+
+
+DomainAncillary.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_interior_ring.html new file mode 100644 index 0000000000..d6259b0ab8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.DomainAncillary.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_interior_ring

+
+
+DomainAncillary.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_node_count.html new file mode 100644 index 0000000000..b1a5b4bbe7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_node_count.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.get_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_node_count

+
+
+DomainAncillary.get_node_count(default=ValueError())[source]
+

Return the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if a node +count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
NodeCount

The node count variable.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_part_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_part_node_count.html new file mode 100644 index 0000000000..d89c298238 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_part_node_count.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.get_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_part_node_count

+
+
+DomainAncillary.get_part_node_count(default=ValueError())[source]
+

Return the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the part +node count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
PartNodeCount

The part node count variable.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.get_property.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_property.html new file mode 100644 index 0000000000..f35d6e63fb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.DomainAncillary.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.get_property

+
+
+DomainAncillary.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_bounds.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_bounds.html new file mode 100644 index 0000000000..90293008eb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.DomainAncillary.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_bounds

+
+
+DomainAncillary.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_data.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_data.html new file mode 100644 index 0000000000..2e2a46f365 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_data

+
+
+DomainAncillary.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_geometry.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_geometry.html new file mode 100644 index 0000000000..40f83eefe5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.DomainAncillary.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_geometry

+
+
+DomainAncillary.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_interior_ring.html new file mode 100644 index 0000000000..c482f9a24d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_interior_ring

+
+
+DomainAncillary.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_node_count.html new file mode 100644 index 0000000000..748be63aa3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_node_count.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.DomainAncillary.has_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_node_count

+
+
+DomainAncillary.has_node_count()[source]
+

Whether geometry bounds have a node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a node count variable, otherwise False.

+
+
+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_part_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_part_node_count.html new file mode 100644 index 0000000000..94c43e5b2e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_part_node_count.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.DomainAncillary.has_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_part_node_count

+
+
+DomainAncillary.has_part_node_count()[source]
+

Whether geometry bounds have a part node count variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is a part node count variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name': 'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.has_property.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_property.html new file mode 100644 index 0000000000..9581d27f49 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.has_property

+
+
+DomainAncillary.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.identities.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.identities.html new file mode 100644 index 0000000000..dead940fdc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.identities.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.DomainAncillary.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.identities

+
+
+DomainAncillary.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and a colon, +e.g. 'long_name:Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The identities of the bounds, if any.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identities()
+['axis=Z', 'units=m', 'ncvar%z']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+axis=Z
+units=m
+ncvar%z
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.identity.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.identity.html new file mode 100644 index 0000000000..19f2dad3ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.identity.html @@ -0,0 +1,222 @@ + + + + + + + cfdm.DomainAncillary.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.identity

+
+
+DomainAncillary.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  1. The standard_name property.

  2. +
  3. The cf_role property, preceded by 'cf_role='.

  4. +
  5. The axis property, preceded by 'axis='.

  6. +
  7. The long_name property, preceded by 'long_name='.

  8. +
  9. The netCDF variable name, preceded by 'ncvar%'.

  10. +
  11. The identity of the bounds, if any.

  12. +
  13. The value of the default parameter.

  14. +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
>>> f.properties()
+{}
+>>> f.bounds.properties()
+{'axis': 'Z',
+ 'units': 'm'}
+>>> f.identity()
+'axis=Z'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.insert_dimension.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.insert_dimension.html new file mode 100644 index 0000000000..8565bffbb5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.insert_dimension.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.DomainAncillary.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.insert_dimension

+
+
+DomainAncillary.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array. A corresponding +axis is also inserted into the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DomainAncillary or None

The new construct with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(96, 73, 19, 1)
+>>> g = f.insert_dimension(position=-1)
+>>> g.shape
+(19, 73, 1, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(19, 73, 1, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_clear_variable_groups.html new file mode 100644 index 0000000000..4a33082557 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DomainAncillary.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_clear_variable_groups

+
+
+DomainAncillary.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_del_variable.html new file mode 100644 index 0000000000..eb3d0280eb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAncillary.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_del_variable

+
+
+DomainAncillary.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_get_variable.html new file mode 100644 index 0000000000..c3c5179c35 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.DomainAncillary.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_get_variable

+
+
+DomainAncillary.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_has_variable.html new file mode 100644 index 0000000000..2bad7df3e4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.DomainAncillary.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_has_variable

+
+
+DomainAncillary.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable.html new file mode 100644 index 0000000000..666fe25792 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAncillary.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_set_variable

+
+
+DomainAncillary.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable_groups.html new file mode 100644 index 0000000000..07c8545c5f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.DomainAncillary.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_set_variable_groups

+
+
+DomainAncillary.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_variable_groups.html new file mode 100644 index 0000000000..bae549267f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DomainAncillary.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.nc_variable_groups

+
+
+DomainAncillary.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.properties.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.properties.html new file mode 100644 index 0000000000..49ab5525a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.DomainAncillary.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.properties

+
+
+DomainAncillary.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_bounds.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_bounds.html new file mode 100644 index 0000000000..01589b3749 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.DomainAncillary.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_bounds

+
+
+DomainAncillary.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> b = cfdm.Bounds(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_data.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_data.html new file mode 100644 index 0000000000..da5353b406 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.DomainAncillary.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_data

+
+
+DomainAncillary.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified DomainAncillary instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or DomainAncillary

If the operation was in-place then None is returned, +otherwise return a new DomainAncillary instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_geometry.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_geometry.html new file mode 100644 index 0000000000..d09c0b4444 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAncillary.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_geometry

+
+
+DomainAncillary.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_interior_ring.html new file mode 100644 index 0000000000..eb3928a56a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.DomainAncillary.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_interior_ring

+
+
+DomainAncillary.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.DomainAncillary()
+>>> i = cfdm.InteriorRing(data=cfdm.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_node_count.html new file mode 100644 index 0000000000..6d7f7846d1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_node_count.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.DomainAncillary.set_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_node_count

+
+
+DomainAncillary.set_node_count(node_count, copy=True)[source]
+

Set the node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
node_count: NodeCount

The node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> n = cfdm.NodeCount(properties={'long_name': 'node counts'})
+>>> c.set_node_count(n)
+>>> c.has_node_count()
+True
+>>> c.get_node_count()
+<NodeCount: long_name=node counts>
+>>> c.del_node_count()
+<NodeCount: long_name=node counts>
+>>> c.has_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_part_node_count.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_part_node_count.html new file mode 100644 index 0000000000..233905a171 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_part_node_count.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.DomainAncillary.set_part_node_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_part_node_count

+
+
+DomainAncillary.set_part_node_count(part_node_count, copy=True)[source]
+

Set the part node count variable for geometry bounds.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
part_node_count: PartNodeCount

The part node count variable to be inserted.

+
+
copy: bool, optional

If False then do not copy the part node count variable +prior to insertion. By default it is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> p = cfdm.PartNodeCount(properties={'long_name':
+...                                           'part node counts'})
+>>> c.set_part_node_count(p)
+>>> c.has_part_node_count()
+True
+>>> c.get_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.del_part_node_count()
+<PartNodeCount: long_name=part node counts>
+>>> c.has_part_node_count()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_properties.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_properties.html new file mode 100644 index 0000000000..19d97d7415 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DomainAncillary.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_properties

+
+
+DomainAncillary.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.set_property.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_property.html new file mode 100644 index 0000000000..0678b06a88 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAncillary.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.set_property

+
+
+DomainAncillary.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.squeeze.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.squeeze.html new file mode 100644 index 0000000000..9b50e4cd0d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.squeeze.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.DomainAncillary.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.squeeze

+
+
+DomainAncillary.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal. Corresponding axes are +also removed from the bounds data array, if present.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DomainAncillary or None

The new construct with removed data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> g = f.squeeze([-3, 2])
+>>> g.shape
+(73, 96)
+>>> f.bounds.shape
+(1, 73, 1, 96, 4)
+>>> g.shape
+(73, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.transpose.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.transpose.html new file mode 100644 index 0000000000..f0d131770a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.transpose.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.DomainAncillary.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.transpose

+
+
+DomainAncillary.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+

Corresponding axes of the bounds data array, if present, are +also permuted.

+

Note that if i) the data array is two-dimensional, ii) the two +axes have been permuted, and iii) each cell has four bounds +values; then columns 1 and 3 (counting from 0) of the bounds +axis are swapped to preserve contiguity bounds in adjacent +cells. See section 7.1 “Cell Boundaries” of the CF conventions +for details.

+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DomainAncillary or None

The new construct with permuted data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> g = f.transpose([1, 0, 2])
+>>> g.shape
+(73, 19, 96)
+>>> f.bounds.shape
+(19, 73, 96, 4)
+>>> g.bounds.shape
+(73, 19, 96, 4)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAncillary.uncompress.html b/docs/1.9.0.1/method/cfdm.DomainAncillary.uncompress.html new file mode 100644 index 0000000000..d3bb81b5f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAncillary.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.DomainAncillary.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAncillary.uncompress

+
+
+DomainAncillary.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +unchanged.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
DomainAncillary or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.DomainAxis.__deepcopy__.html new file mode 100644 index 0000000000..ea52195830 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.DomainAxis.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.__deepcopy__

+
+
+DomainAxis.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.DomainAxis()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.__repr__.html b/docs/1.9.0.1/method/cfdm.DomainAxis.__repr__.html new file mode 100644 index 0000000000..ca76ac389a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DomainAxis.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.__repr__

+
+
+DomainAxis.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.__str__.html b/docs/1.9.0.1/method/cfdm.DomainAxis.__str__.html new file mode 100644 index 0000000000..30606af2ac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.DomainAxis.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.__str__

+
+
+DomainAxis.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_method_exclusions.html new file mode 100644 index 0000000000..00e4c3ef23 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAxis._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis._docstring_method_exclusions

+
+
+DomainAxis._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_package_depth.html new file mode 100644 index 0000000000..04d85b35a4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DomainAxis._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis._docstring_package_depth

+
+
+DomainAxis._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_special_substitutions.html new file mode 100644 index 0000000000..1712da1bdd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.DomainAxis._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis._docstring_special_substitutions

+
+
+classmethod DomainAxis._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_substitutions.html new file mode 100644 index 0000000000..764da091fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DomainAxis._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis._docstring_substitutions

+
+
+DomainAxis._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.copy.html b/docs/1.9.0.1/method/cfdm.DomainAxis.copy.html new file mode 100644 index 0000000000..0a7081f3d9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.DomainAxis.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.copy

+
+
+DomainAxis.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
DomainAxis

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.DomainAxis()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.creation_commands.html b/docs/1.9.0.1/method/cfdm.DomainAxis.creation_commands.html new file mode 100644 index 0000000000..69b9b54f7b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.creation_commands.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.DomainAxis.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.creation_commands

+
+
+DomainAxis.creation_commands(namespace=None, indent=0, string=True, name='c', header=True)[source]
+

Returns the commands to create the domain axis construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the DomainAxis instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.DomainAxis(size=12)
+>>> x.nc_set_dimension('time')
+>>> print(x.creation_commands(header=False))
+c = cfdm.DomainAxis()
+c.set_size(12)
+c.nc_set_dimension('time')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.del_size.html b/docs/1.9.0.1/method/cfdm.DomainAxis.del_size.html new file mode 100644 index 0000000000..4c5647ceb8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.del_size.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAxis.del_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.del_size

+
+
+DomainAxis.del_size(default=ValueError())[source]
+

Remove the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_size, has_size, set_size

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +size has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed size.

+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.equals.html b/docs/1.9.0.1/method/cfdm.DomainAxis.equals.html new file mode 100644 index 0000000000..891cafb9ab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.equals.html @@ -0,0 +1,231 @@ + + + + + + + cfdm.DomainAxis.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.equals

+
+
+DomainAxis.equals(other, verbose=None, ignore_type=False)[source]
+

Whether two domain axis constructs are the same.

+

Equality is strict by default. This means that:

+
    +
  • the axis sizes must be the same.

  • +
+

Any type of object may be tested but, in general, equality is +only possible with another domain axis construct, or a +subclass of one. See the ignore_type parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another DomainAxis +instance, or a subclass of one. If ignore_type is +True then cfdm.DomainAxis(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two domain axis constructs are equal.

+
+
+
+
+

Examples:

+
>>> d.equals(d)
+True
+>>> d.equals(d.copy())
+True
+>>> d.equals('not a domain axis')
+False
+
+
+
>>> d = cfdm.DomainAxis(1)
+>>> e = cfdm.DomainAxis(99)
+>>> d.equals(e, verbose=3)
+DomainAxis: Different axis sizes: 1 != 99
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.get_size.html b/docs/1.9.0.1/method/cfdm.DomainAxis.get_size.html new file mode 100644 index 0000000000..3b9e7b89cc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.get_size.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAxis.get_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.get_size

+
+
+DomainAxis.get_size(default=ValueError())[source]
+

Return the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, has_size, set_size

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +size has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The size.

+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.has_size.html b/docs/1.9.0.1/method/cfdm.DomainAxis.has_size.html new file mode 100644 index 0000000000..387062eebc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.has_size.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.DomainAxis.has_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.has_size

+
+
+DomainAxis.has_size()[source]
+

Whether the size has been set.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, get_size, set_size

+
+
+
Returns
+
+
bool

True if the size has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.identities.html b/docs/1.9.0.1/method/cfdm.DomainAxis.identities.html new file mode 100644 index 0000000000..2ef363ac8e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.identities.html @@ -0,0 +1,205 @@ + + + + + + + cfdm.DomainAxis.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.identities

+
+
+DomainAxis.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The netCDF dimension name, preceded by ‘ncdim%’.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=9)
+>>> d.nc_set_dimension('time')
+>>> d.identities()
+['ncdim%time']
+>>> d.nc_del_dimension()
+'time'
+>>> d.identities()
+[]
+>>> for i in d.identities(generator=True):
+...     print(i)
+...
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.identity.html b/docs/1.9.0.1/method/cfdm.DomainAxis.identity.html new file mode 100644 index 0000000000..124d736b27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.identity.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.DomainAxis.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.identity

+
+
+DomainAxis.identity(default='')[source]
+

Return the canonical identity.

+

The identity is the first found of the following:

+
    +
  1. The netCDF dimension name, preceded by ‘ncdim%’.

  2. +
  3. The value of the default parameter.

  4. +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of +the default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=9)
+>>> d.nc_set_dimension('time')
+>>> d.identity()
+'ncdim%time'
+>>> d.identity(default='no identity')
+'ncdim%time'
+>>> d.nc_del_dimension()
+'time'
+>>> d.identity()
+''
+>>> d.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_clear_dimension_groups.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_clear_dimension_groups.html new file mode 100644 index 0000000000..78023464da --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_clear_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.DomainAxis.nc_clear_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_clear_dimension_groups

+
+
+DomainAxis.nc_clear_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF dimension name, with nc_set_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_del_dimension.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_del_dimension.html new file mode 100644 index 0000000000..acda49898c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_del_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAxis.nc_del_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_del_dimension

+
+
+DomainAxis.nc_del_dimension(default=ValueError())[source]
+

Remove the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_dimension_groups.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_dimension_groups.html new file mode 100644 index 0000000000..a18190b9ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.DomainAxis.nc_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_dimension_groups

+
+
+DomainAxis.nc_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_get_dimension.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_get_dimension.html new file mode 100644 index 0000000000..d82ee70eba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_get_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAxis.nc_get_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_get_dimension

+
+
+DomainAxis.nc_get_dimension(default=ValueError())[source]
+

Return the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_has_dimension.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_has_dimension.html new file mode 100644 index 0000000000..527ebd412a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_has_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.DomainAxis.nc_has_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_has_dimension

+
+
+DomainAxis.nc_has_dimension()[source]
+

Whether the netCDF dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_is_unlimited.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_is_unlimited.html new file mode 100644 index 0000000000..3641f828ef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_is_unlimited.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.DomainAxis.nc_is_unlimited — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_is_unlimited

+
+
+DomainAxis.nc_is_unlimited()[source]
+

Inspect the unlimited status of the a netCDF dimension.

+

By default output netCDF dimensions are not unlimited. The +status is used by the write function.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

nc_set_unlimited

+
+
+
Returns
+
+
bool

The existing unlimited status. True and False signify +“unlimited” and “not unlimited” respectively.

+
+
+
+
+

Examples:

+
>>> da = f.domain_axis('domainaxis1')
+>>> da.nc_is_unlimited()
+False
+>>> da.nc_set_unlimited(True)
+>>> da.nc_is_unlimited()
+True
+>>> da.nc_set_unlimited(False)
+False
+>>> da.nc_is_unlimited()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension.html new file mode 100644 index 0000000000..deea2b2d6c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.DomainAxis.nc_set_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_set_dimension

+
+
+DomainAxis.nc_set_dimension(value)[source]
+

Set the netCDF dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension_groups.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension_groups.html new file mode 100644 index 0000000000..ee1c8294b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.DomainAxis.nc_set_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_set_dimension_groups

+
+
+DomainAxis.nc_set_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF dimension name, with nc_set_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_unlimited.html b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_unlimited.html new file mode 100644 index 0000000000..3483156f04 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.nc_set_unlimited.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.DomainAxis.nc_set_unlimited — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.nc_set_unlimited

+
+
+DomainAxis.nc_set_unlimited(value)[source]
+

Set the unlimited status of the a netCDF dimension.

+

By default output netCDF dimensions are not unlimited. The +status is used by the write function.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

nc_is_unlimited

+
+
+
Parameters
+
+
value: bool

The new unlimited status. True and False signify +“unlimited” and “not unlimited” respectively.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> da = f.domain_axis('domainaxis1')
+>>> da.nc_is_unlimited()
+False
+>>> da.nc_set_unlimited(True)
+>>> da.nc_is_unlimited()
+True
+>>> da.nc_set_unlimited(False)
+False
+>>> da.nc_is_unlimited()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.DomainAxis.set_size.html b/docs/1.9.0.1/method/cfdm.DomainAxis.set_size.html new file mode 100644 index 0000000000..c9e19bf042 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.DomainAxis.set_size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.DomainAxis.set_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.DomainAxis.set_size

+
+
+DomainAxis.set_size(size)[source]
+

Set the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, get_size, has_size

+
+
+
Parameters
+
+
value: int

The size.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d = cfdm.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Field.__deepcopy__.html new file mode 100644 index 0000000000..73305e4797 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Field.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.__deepcopy__

+
+
+Field.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Field()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.__getitem__.html b/docs/1.9.0.1/method/cfdm.Field.__getitem__.html new file mode 100644 index 0000000000..b55f386deb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.__getitem__.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Field.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.__getitem__

+
+
+Field.__getitem__(indices)[source]
+

Return a subspace of the field defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

The new subspace contains the same properties and similar +metadata constructs to the original field, but the latter are +also subspaced when they span domain axis constructs that have +been changed.

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Field

The subspace of the field construct.

+
+
+
+
+

Examples:

+
>>> f.data.shape
+(1, 10, 9)
+>>> f[:, :, 1].data.shape
+(1, 10, 1)
+>>> f[:, 0].data.shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].data.shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].data.shape
+(1, 2, 2)
+>>> f[0, :, -2].data.shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.__repr__.html b/docs/1.9.0.1/method/cfdm.Field.__repr__.html new file mode 100644 index 0000000000..08b1a8a9cb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Field.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.__repr__

+
+
+Field.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.__str__.html b/docs/1.9.0.1/method/cfdm.Field.__str__.html new file mode 100644 index 0000000000..9d63a3658f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Field.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.__str__

+
+
+Field.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Field._docstring_method_exclusions.html new file mode 100644 index 0000000000..f7fddbb879 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field._docstring_method_exclusions

+
+
+Field._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Field._docstring_package_depth.html new file mode 100644 index 0000000000..f62ae04592 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Field._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field._docstring_package_depth

+
+
+Field._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Field._docstring_special_substitutions.html new file mode 100644 index 0000000000..d95ab8dc26 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Field._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field._docstring_special_substitutions

+
+
+classmethod Field._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Field._docstring_substitutions.html new file mode 100644 index 0000000000..dc47ad90a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Field._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field._docstring_substitutions

+
+
+Field._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.apply_masking.html b/docs/1.9.0.1/method/cfdm.Field.apply_masking.html new file mode 100644 index 0000000000..2f3e233661 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.apply_masking.html @@ -0,0 +1,236 @@ + + + + + + + cfdm.Field.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.apply_masking

+
+
+Field.apply_masking(inplace=False)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied to the field construct data as well as +metadata constructs’ data.

+

Masking is applied according to any of the following criteria +that are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the +_FillValue property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of +the valid_max property;

  • +
  • where data elements are within the inclusive range specified +by the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no +masking is applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.3

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

A new field construct with masked values, or None if +the operation was in-place.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> f.data[[0, -1]] = numpy.ma.masked
+>>> print(f.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+>>> cfdm.write(f, 'masked.nc')
+>>> no_mask = cfdm.read('masked.nc', mask=False)[0]
+>>> print(no_mask.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked = no_mask.apply_masking()
+>>> print(masked.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.auxiliary_coordinates.html b/docs/1.9.0.1/method/cfdm.Field.auxiliary_coordinates.html new file mode 100644 index 0000000000..f5f8e988f9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.auxiliary_coordinates.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Field.auxiliary_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.auxiliary_coordinates

+
+
+Field.auxiliary_coordinates(*identities, **filter_kwargs)[source]
+

Return auxiliary coordinate constructs.

+

Note that f.auxiliary_coordinates(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["auxiliary_coordinate"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select auxiliary coordinate constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

If no identities are provided then all auxiliary +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.auxiliary_coordinates()
+Constructs:
+{}
+
+
+
>>> f.auxiliary_coordinates()
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:Grid latitude name(10) >}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.cell_measures.html b/docs/1.9.0.1/method/cfdm.Field.cell_measures.html new file mode 100644 index 0000000000..7e25d9561e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.cell_measures.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.cell_measures — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.cell_measures

+
+
+Field.cell_measures(*identities, **filter_kwargs)[source]
+

Return cell measure constructs.

+

f.cell_measures(*identities, **filter_kwargs) is +equivalent to +f.constructs.filter(filter_by_type=["cell_measure"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select cell measure constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

If no identities are provided then all cell measure +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.cell_measures()
+Constructs:
+{}
+
+
+
>>> f.cell_measures()
+Constructs:
+{'cellmeasure0': <CellMeasure: measure%area(9, 10) km2>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.cell_methods.html b/docs/1.9.0.1/method/cfdm.Field.cell_methods.html new file mode 100644 index 0000000000..a164edfe07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.cell_methods.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.cell_methods — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.cell_methods

+
+
+Field.cell_methods(*identities, **filter_kwargs)[source]
+

Return cell method constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional
+

Select cell method constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

Additionally, the values are matched against +construct identifiers, with or without the 'key%' +prefix.

+

Additionally, if for a given value, +f.domain_axes(value) returns a unique domain axis +construct then any cell method constructs that span +exactly that axis are selected. See domain_axes for +details.

+

If no values are provided then all cell method +constructs are selected.

+

A value may be any object that can match via the

+
+

== operator, or a re.Pattern object that matches +via its search method.

+
+

Note that in the output of a dump method or print

+
+

call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.clear_properties.html b/docs/1.9.0.1/method/cfdm.Field.clear_properties.html new file mode 100644 index 0000000000..23055bd522 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.clear_properties

+
+
+Field.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.climatological_time_axes.html b/docs/1.9.0.1/method/cfdm.Field.climatological_time_axes.html new file mode 100644 index 0000000000..54a99fb390 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.climatological_time_axes.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.Field.climatological_time_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.climatological_time_axes

+
+
+Field.climatological_time_axes()[source]
+

Return all axes which are climatological time axes.

+

This is ascertained by inspecting the axes of any cell methods +constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
set

The axes on the field which are climatological time +axes. If there are none, this will be an empty set.

+
+
+
+
+

Examples:

+
>>> f
+<Field: air_temperature(time(12), latitude(145), longitude(192)) K>
+>>> print(f.cell_methods())
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis0: minimum within days>,
+ 'cellmethod1': <CellMethod: domainaxis0: mean over days>}
+>>> f.climatological_time_axes()
+{'domainaxis0'}
+>>> g
+<Field: air_potential_temperature(time(120), latitude(5), longitude(8)) K>
+>>> print(g.cell_methods())
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>}
+>>> g.climatological_time_axes()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.compress.html b/docs/1.9.0.1/method/cfdm.Field.compress.html new file mode 100644 index 0000000000..8902d625ff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.compress.html @@ -0,0 +1,305 @@ + + + + + + + cfdm.Field.compress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.compress

+
+
+Field.compress(method, axes=None, count_properties=None, index_properties=None, list_properties=None, inplace=False)[source]
+

Compress the field construct.

+

Compression can save space by identifying and removing +unwanted missing data. Such compression techniques store the +data more efficiently and result in no precision loss.

+

The field construct data is compressed, along with any +applicable metadata constructs.

+

Whether or not the field construct is compressed does not +alter its functionality nor external appearance.

+

A field that is already compressed will be returned compressed +by the chosen method.

+

When writing a compressed field construct to a dataset, +compressed netCDF variables are written, along with the +supplementary netCDF variables and attributes that are +required for the encoding.

+

The following type of compression are available (see the +method parameter):

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+

See also

+

uncompress

+
+
+
Parameters
+
+
method: str

The compression method. One of:

+
    +
  • 'contiguous'

    +

    Contiguous ragged array representation for DSG +“point”, “timeSeries”, “trajectory” or “profile” +features.

    +

    The field construct data must have exactly 2 +dimensions for which the first (leftmost) dimension +indexes each feature and the second (rightmost) +dimension contains the elements for the +features. Trailing missing data values in the second +dimension are removed to created the compressed +data.

    +
  • +
  • 'indexed'

    +

    Indexed ragged array representation for DSG “point”, +“timeSeries”, “trajectory”, or “profile” features.

    +

    The field construct data must have exactly 2 +dimensions for which the first (leftmost) dimension +indexes each feature and the second (rightmost) +dimension contains the elements for the +features. Trailing missing data values in the second +dimension are removed to created the compressed +data.

    +
  • +
  • 'indexed_contiguous'

    +

    Indexed contiguous ragged array representation for +DSG “timeSeriesProfile”, or “trajectoryProfile” +features.

    +

    The field construct data must have exactly 3 +dimensions for which the first (leftmost) dimension +indexes each feature; the second (middle) dimension +indexes each timeseries or trajectory; and the third +(rightmost) dimension contains the elements for the +timeseries or trajectories. Trailing missing data +values in the third dimension are removed to created +the compressed data.

    +
  • +
  • 'gathered'

    +

    Compression by gathering over any subset of the +field construct data dimensions.

    +

    Not yet available.

    +
  • +
+
+
count_properties: dict, optional

Provide properties to the count variable for +contiguous ragged array representation or indexed +contiguous ragged array representation.

+
+
Parameter example:

count_properties={'long_name': 'number of timeseries'}

+
+
+
+
index_properties: dict, optional

Provide properties to the index variable for indexed +ragged array representation or indexed contiguous +ragged array representation.

+
+
Parameter example:

index_properties={'long_name': 'station of profile'}

+
+
+
+
list_properties: dict, optional

Provide properties to the list variable for +compression by gathering.

+
+
Parameter example:

list_properties={'long_name': 'uncompression indices'}

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

The compressed field construct, or None if the +operation was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+''
+>>> print(f.array)
+[[3.98  0.0  0.0  --    --   --   --  --  --]
+ [ 0.0  0.0  0.0  3.4  0.0  0.0 4.61  --  --]
+ [0.86  0.8 0.75  0.0 4.56   --   --  --  --]
+ [ 0.0 0.09  0.0 0.91 2.96 1.14 3.86 0.0 0.0]]
+>>> g = f.compress('contiguous')
+>>> g.equals(f)
+True
+
+
+
>>> cfdm.write(g, 'compressed_file_contiguous.nc')
+>>> h = cfdm.read( 'compressed_file_contiguous.nc')[0]
+>>> h.equals(f)
+True
+
+
+
>>> g.data.get_compression_type()
+'ragged contiguous'
+>>> g.data.get_count()
+<Count: (4) >
+>>> print(g.data.get_count().array)
+[3 7 5 9]
+>>> g.compress('indexed', inplace=True)
+>>> g.data.get_index()
+<Index: (24) >
+>>> print(g.data.get_index().array)
+[0 0 0 1 1 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 3 3 3 3]
+>>> cfdm.write(g, 'compressed_file_indexed.nc')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.construct.html b/docs/1.9.0.1/method/cfdm.Field.construct.html new file mode 100644 index 0000000000..65ee1bd466 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.construct.html @@ -0,0 +1,226 @@ + + + + + + + cfdm.Field.construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.construct

+
+
+Field.construct(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return a metadata construct.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected construct.

+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct('latitude')
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Field.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.construct_item.html b/docs/1.9.0.1/method/cfdm.Field.construct_item.html new file mode 100644 index 0000000000..faf9c3e8ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.construct_item.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.Field.construct_item — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.construct_item

+
+
+Field.construct_item(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return a metadata construct and its identifier.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
tuple

The selected construct and its construct identifier.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct_item('latitude')
+('dimensioncoordinate1', <DimensionCoordinate: latitude(5) degrees_north>)
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Field.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.construct_key.html b/docs/1.9.0.1/method/cfdm.Field.construct_key.html new file mode 100644 index 0000000000..dc38ef6fde --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.construct_key.html @@ -0,0 +1,229 @@ + + + + + + + cfdm.Field.construct_key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.construct_key

+
+
+Field.construct_key(*identity, default=ValueError(), **filter_kwargs)[source]
+

Return the identifier of a metadata construct.

+

If zero or two or more constructs are selected then an +exception is raised, or the default parameter is returned.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity: optional

Select constructs that have an identity, defined by +their identities methods, that matches any of the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no values are provided then all constructs are +selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
str

The identifier of the selected construct.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+
+
+

Select the construct that has the “standard_name” property of +‘latitude’:

+
>>> print(f.constructs.filter_by_property(standard_name=None))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: long_name=time(1) days since 2018-12-01 >}
+>>> f.construct_key('latitude')
+'dimensioncoordinate1'
+
+
+

Attempt to select a unique construct whose “standard_name” +start with the letter ‘l’:

+
>>> import re
+>>> f.construct(re.compile('^l'))
+Traceback
+    ...
+ValueError: Field.construct() can't return 2 constructs
+>>> f.construct(re.compile('^l'), default='no unique construct')
+'no unique construct'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.convert.html b/docs/1.9.0.1/method/cfdm.Field.convert.html new file mode 100644 index 0000000000..a7e22bece6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.convert.html @@ -0,0 +1,249 @@ + + + + + + + cfdm.Field.convert — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.convert

+
+
+Field.convert(*identity, full_domain=True, **filter_kwargs)[source]
+

Convert a metadata construct into a new field construct.

+

The new field construct has the properties and data of the +metadata construct, and domain axis constructs corresponding +to the data. By default it also contains other metadata +constructs (such as dimension coordinate and coordinate +reference constructs) that define its domain.

+

Only metadata constructs that can have data may be converted +and they can be converted even if they do not actually have +any data. Constructs such as cell methods which cannot have +data cannot be converted.

+

The cfdm.read function allows a field construct to be +derived directly from a netCDF variable that corresponds to a +metadata construct. In this case, the new field construct will +have a domain limited to that which can be inferred from the +corresponding netCDF variable - typically only domain axis and +dimension coordinate constructs. This will usually result in a +different field construct to that created with the convert +method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

cfdm.read

+
+
+
Parameters
+
+
identity: str, optional

Convert the metadata construct with the given +construct key.

+
+
full_domain: bool, optional

If False then only create domain axis constructs for +the domain of the new field construct. By default as +much of the domain as possible is copied to the new +field construct.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
+
Returns
+
+
Field

The new field construct.

+
+
+
+
+

Examples:

+
>>> f = cfdm.read('file.nc')[0]
+>>> print(f)
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Data            : air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K
+Cell methods    : grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees) time(1): maximum
+Field ancils    : air_temperature standard_error(grid_latitude(10), grid_longitude(9)) = [[0.76, ..., 0.32]] K
+Dimension coords: atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+                : time(1) = [2019-01-01 00:00:00]
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name:Grid latitude name(grid_latitude(10)) = [--, ..., kappa]
+Cell measures   : measure%area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: atmosphere_hybrid_height_coordinate
+                : rotated_latitude_longitude
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+>>> x = f.convert('domainancillary2')
+>>> print(x)
+Field: surface_altitude (ncvar%surface_altitude)
+------------------------------------------------
+Data            : surface_altitude(grid_latitude(10), grid_longitude(9)) m
+Dimension coords: grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name:Grid latitude name(grid_latitude(10)) = [--, ..., kappa]
+Cell measures   : measure%area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: rotated_latitude_longitude
+>>> y = f.convert('domainancillary2', full_domain=False)
+>>> print(y)
+Field: surface_altitude (ncvar%surface_altitude)
+------------------------------------------------
+Data            : surface_altitude(grid_latitude(10), grid_longitude(9)) m
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.coordinate_references.html b/docs/1.9.0.1/method/cfdm.Field.coordinate_references.html new file mode 100644 index 0000000000..6695ab298a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.coordinate_references.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Field.coordinate_references — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.coordinate_references

+
+
+Field.coordinate_references(*identities, **filter_kwargs)[source]
+

Return coordinate reference constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select coordinate reference constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

If no identities are provided then all coordinate +reference constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.coordinate_references()
+Constructs:
+{}
+
+
+
>>> f.coordinate_references()
+Constructs:
+{'coordinatereference0': <CoordinateReference: atmosphere_hybrid_height_coordinate>,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.coordinates.html b/docs/1.9.0.1/method/cfdm.Field.coordinates.html new file mode 100644 index 0000000000..dc65352a09 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.coordinates.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Field.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.coordinates

+
+
+Field.coordinates(*identities, **filter_kwargs)[source]
+

Return dimension and auxiliary coordinate constructs.

+

Note that f.coordinates(*identities, **filter_kwargs) is +equivalent to +f.constructs.filter(filter_by_type=["dimension_coordinate", +"auxiliary_coordinate"], filter_by_identity=identities, +**filter_kwargs).

+

. versionadded:: (cfdm) 1.7.0

+
+
. seealso:: auxiliary_coordinates, constructs,

dimension_coordinates

+
+
+
+
Parameters
+
+
identities: optional

Select dimension and auxiliary coordinate constructs +that have an identity, defined by their identities +methods, that matches any of the given values.

+

If no identities are provided then all dimension and +auxiliary coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:*

+

>> f.coordinates() +Constructs: +}

+

>> f.coordinates() +Constructs: +‘auxiliarycoordinate0’: <AuxiliaryCoordinate: latitude(10, 9) degrees_N>, +‘auxiliarycoordinate1’: <AuxiliaryCoordinate: longitude(9, 10) degrees_E>, +‘auxiliarycoordinate2’: <AuxiliaryCoordinate: long_name=Grid latitude name(10) >, +‘dimensioncoordinate0’: <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >, +‘dimensioncoordinate1’: <DimensionCoordinate: grid_latitude(10) degrees>, +‘dimensioncoordinate2’: <DimensionCoordinate: grid_longitude(9) degrees>, +‘dimensioncoordinate3’: <DimensionCoordinate: time(1) days since 2018-12-01 >}

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.copy.html b/docs/1.9.0.1/method/cfdm.Field.copy.html new file mode 100644 index 0000000000..bf7f8bfcaa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Field.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.copy

+
+
+Field.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Field

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.creation_commands.html b/docs/1.9.0.1/method/cfdm.Field.creation_commands.html new file mode 100644 index 0000000000..d48f690919 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.creation_commands.html @@ -0,0 +1,366 @@ + + + + + + + cfdm.Field.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.creation_commands

+
+
+Field.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='field', data_name='data', header=True)[source]
+

Return the commands that would create the field construct.

+

Construct keys

+

The key parameter of the output set_construct commands is +utilised in order minimise the number of commands needed to +implement cross-referencing between constructs (e.g. between a +coordinate reference construct and coordinate +constructs). This is usually not necessary when building field +constructs, as by default the set_construct method returns a +unique construct key for the construct being set.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the Field instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> q = cfdm.example_field(0)
+>>> print(q)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> print(q.creation_commands())
+#
+# field: specific_humidity
+field = cfdm.Field()
+field.set_properties({'Conventions': 'CF-1.9', 'project': 'research', 'standard_name': 'specific_humidity', 'units': '1'})
+field.nc_set_variable('q')
+data = cfdm.Data([[0.007, 0.034, 0.003, 0.014, 0.018, 0.037, 0.024, 0.029], [0.023, 0.036, 0.045, 0.062, 0.046, 0.073, 0.006, 0.066], [0.11, 0.131, 0.124, 0.146, 0.087, 0.103, 0.057, 0.011], [0.029, 0.059, 0.039, 0.07, 0.058, 0.072, 0.009, 0.017], [0.006, 0.036, 0.019, 0.035, 0.018, 0.037, 0.034, 0.013]], units='1', dtype='f8')
+field.set_data(data)
+#
+# domain_axis: ncdim%lat
+c = cfdm.DomainAxis()
+c.set_size(5)
+c.nc_set_dimension('lat')
+field.set_construct(c, key='domainaxis0', copy=False)
+#
+# domain_axis: ncdim%lon
+c = cfdm.DomainAxis()
+c.set_size(8)
+c.nc_set_dimension('lon')
+field.set_construct(c, key='domainaxis1', copy=False)
+#
+# domain_axis:
+c = cfdm.DomainAxis()
+c.set_size(1)
+field.set_construct(c, key='domainaxis2', copy=False)
+#
+# dimension_coordinate: latitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_north', 'standard_name': 'latitude'})
+c.nc_set_variable('lat')
+data = cfdm.Data([-75.0, -45.0, 0.0, 45.0, 75.0], units='degrees_north', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lat_bnds')
+data = cfdm.Data([[-90.0, -60.0], [-60.0, -30.0], [-30.0, 30.0], [30.0, 60.0], [60.0, 90.0]], units='degrees_north', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+field.set_construct(c, axes=('domainaxis0',), key='dimensioncoordinate0', copy=False)
+#
+# dimension_coordinate: longitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+c.nc_set_variable('lon')
+data = cfdm.Data([22.5, 67.5, 112.5, 157.5, 202.5, 247.5, 292.5, 337.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lon_bnds')
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0], [135.0, 180.0], [180.0, 225.0], [225.0, 270.0], [270.0, 315.0], [315.0, 360.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+field.set_construct(c, axes=('domainaxis1',), key='dimensioncoordinate1', copy=False)
+#
+# dimension_coordinate: time
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'days since 2018-12-01', 'standard_name': 'time'})
+c.nc_set_variable('time')
+data = cfdm.Data([31.0], units='days since 2018-12-01', dtype='f8')
+c.set_data(data)
+field.set_construct(c, axes=('domainaxis2',), key='dimensioncoordinate2', copy=False)
+#
+# cell_method: mean
+c = cfdm.CellMethod()
+c.set_method('mean')
+c.set_axes(('area',))
+field.set_construct(c)
+#
+# field data axes
+field.set_data_axes(('domainaxis0', 'domainaxis1'))
+>>> print(q.creation_commands(representative_data=True, namespace='',
+...                           indent=4, header=False))
+    field = Field()
+    field.set_properties({'Conventions': 'CF-1.9', 'project': 'research', 'standard_name': 'specific_humidity', 'units': '1'})
+    field.nc_set_variable('q')
+    data = <Data(5, 8): [[0.007, ..., 0.013]] 1>  # Representative data
+    field.set_data(data)
+    c = DomainAxis()
+    c.set_size(5)
+    c.nc_set_dimension('lat')
+    field.set_construct(c, key='domainaxis0', copy=False)
+    c = DomainAxis()
+    c.set_size(8)
+    c.nc_set_dimension('lon')
+    field.set_construct(c, key='domainaxis1', copy=False)
+    c = DomainAxis()
+    c.set_size(1)
+    field.set_construct(c, key='domainaxis2', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'degrees_north', 'standard_name': 'latitude'})
+    c.nc_set_variable('lat')
+    data = <Data(5): [-75.0, ..., 75.0] degrees_north>  # Representative data
+    c.set_data(data)
+    b = Bounds()
+    b.nc_set_variable('lat_bnds')
+    data = <Data(5, 2): [[-90.0, ..., 90.0]] degrees_north>  # Representative data
+    b.set_data(data)
+    c.set_bounds(b)
+    field.set_construct(c, axes=('domainaxis0',), key='dimensioncoordinate0', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+    c.nc_set_variable('lon')
+    data = <Data(8): [22.5, ..., 337.5] degrees_east>  # Representative data
+    c.set_data(data)
+    b = Bounds()
+    b.nc_set_variable('lon_bnds')
+    data = <Data(8, 2): [[0.0, ..., 360.0]] degrees_east>  # Representative data
+    b.set_data(data)
+    c.set_bounds(b)
+    field.set_construct(c, axes=('domainaxis1',), key='dimensioncoordinate1', copy=False)
+    c = DimensionCoordinate()
+    c.set_properties({'units': 'days since 2018-12-01', 'standard_name': 'time'})
+    c.nc_set_variable('time')
+    data = <Data(1): [2019-01-01 00:00:00]>  # Representative data
+    c.set_data(data)
+    field.set_construct(c, axes=('domainaxis2',), key='dimensioncoordinate2', copy=False)
+    c = CellMethod()
+    c.set_method('mean')
+    c.set_axes(('area',))
+    field.set_construct(c)
+    field.set_data_axes(('domainaxis0', 'domainaxis1'))
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.dataset_compliance.html b/docs/1.9.0.1/method/cfdm.Field.dataset_compliance.html new file mode 100644 index 0000000000..cbcc0cebdc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.dataset_compliance.html @@ -0,0 +1,205 @@ + + + + + + + cfdm.Field.dataset_compliance — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.dataset_compliance

+
+
+Field.dataset_compliance(display=False)[source]
+

Return the dataset compliance report.

+

A report of problems encountered whilst reading the construct +from a dataset.

+

If the dataset is partially CF-compliant to the extent that it +is not possible to unambiguously map an element of the netCDF +dataset to an element of the CF data model, then a construct +is still returned by the read function, but may be +incomplete.

+

Such “structural” non-compliance would occur, for example, if +the coordinates attribute of a CF-netCDF data variable +refers to another variable that does not exist, or refers to a +variable that spans a netCDF dimension that does not apply to +the data variable.

+

Other types of non-compliance are not checked, such whether or +not controlled vocabularies have been adhered to.

+

When a dictionary is returned, the compliance report may be +updated by changing the dictionary in-place.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

cfdm.read, _set_dataset_compliance

+
+
+
Parameters
+
+
display: bool, optional

If True print the compliance report. By default the report +is returned as a dictionary.

+
+
+
+
Returns
+
+
None or dict

The report. If display is True then the report is +printed and None is returned. Otherwise the report is +returned as a dictionary.

+
+
+
+
+

Examples:

+

If no problems were encountered, an empty dictionary is returned:

+
>>> f = cfdm.example_field(1)
+>>> cfdm.write(f, 'example.nc')
+>>> g = cfdm.read('example.nc')[0]
+>>> g.dataset_compliance()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.del_construct.html b/docs/1.9.0.1/method/cfdm.Field.del_construct.html new file mode 100644 index 0000000000..fecc345b8c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.del_construct.html @@ -0,0 +1,231 @@ + + + + + + + cfdm.Field.del_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.del_construct

+
+
+Field.del_construct(*identity, default=ValueError(), **filter_kwargs)[source]
+

Remove a metadata construct.

+

If a domain axis construct is selected for removal then it +can’t be spanned by any data arrays of the field nor metadata +constructs, nor be referenced by any cell method +constructs. However, a domain ancillary construct may be +removed even if it is referenced by coordinate reference +construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity:

Select the unique construct that has the identity, +defined by its identities method, that matches the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The removed metadata construct.

+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> f.del_construct('time')
+<DimensionCoordinate: time(1) days since 2018-12-01 >
+>>> f.del_construct('time')
+Traceback (most recent call last):
+    ...
+ValueError: Can't remove non-existent construct 'ti
+>>> f.del_construct('time', default='No time')
+'No time'
+>>> f.del_construct('dimensioncoordinate1')
+<DimensionCoordinate: longitude(8) degrees_east>
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), ncdim%lon(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.del_data.html b/docs/1.9.0.1/method/cfdm.Field.del_data.html new file mode 100644 index 0000000000..ff3a0733ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Field.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.del_data

+
+
+Field.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.del_data_axes.html b/docs/1.9.0.1/method/cfdm.Field.del_data_axes.html new file mode 100644 index 0000000000..3a7e0def6d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.del_data_axes.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Field.del_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.del_data_axes

+
+
+Field.del_data_axes(key=None, default=ValueError())[source]
+

Removes the keys of the axes spanned by the construct data.

+

Specifically, removes the keys of the domain axis constructs +spanned by the data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed keys of the domain axis constructs spanned by +the data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes(key='dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+
+
+
>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.del_property.html b/docs/1.9.0.1/method/cfdm.Field.del_property.html new file mode 100644 index 0000000000..107911a6d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Field.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.del_property

+
+
+Field.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.dimension_coordinates.html b/docs/1.9.0.1/method/cfdm.Field.dimension_coordinates.html new file mode 100644 index 0000000000..90e702fb05 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.dimension_coordinates.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Field.dimension_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.dimension_coordinates

+
+
+Field.dimension_coordinates(*identities, **filter_kwargs)[source]
+

Return dimension coordinate constructs.

+

Note that f.dimension_coordinates(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["dimension_coordinate"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select dimension coordinate constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

If no identities are provided then all dimension +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.dimension_coordinates()
+Constructs:
+{}
+
+
+
>>> f.dimension_coordinates()
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.Field.domain_ancillaries.html new file mode 100644 index 0000000000..3f60810edc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.domain_ancillaries.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain_ancillaries

+
+
+Field.domain_ancillaries(*identities, **filter_kwargs)[source]
+

Return domain ancillary constructs.

+

Note that f.domain_ancillaries(*identities, +**filter_kwargs) is equivalent to +f.constructs.filter(filter_by_type=["domain_ancillary"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select domain ancillary constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> f.domain_ancillaries()
+Constructs:
+{}
+
+
+
>>> f.domain_ancillaries()
+Constructs:
+{'domainancillary0': <DomainAncillary: ncvar%a(1) m>,
+ 'domainancillary1': <DomainAncillary: ncvar%b(1) >,
+ 'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.domain_axes.html b/docs/1.9.0.1/method/cfdm.Field.domain_axes.html new file mode 100644 index 0000000000..4c186d436b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.domain_axes.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Field.domain_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain_axes

+
+
+Field.domain_axes(*identities, **filter_kwargs)[source]
+

Return domain axis constructs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: tuple, optional

Select domain axis constructs that have an identity, +defined by their identities methods, that matches +any of the given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

Additionally, if for a given value, +f.coordinates(value, filter_by_naxes=(1,)) returns +1-d coordinate constructs that all span the same +domain axis construct then that domain axis construct +is selected. See coordinates for details.

+

Additionally, if there is an associated Field data +array and a value matches the integer position of an +array dimension, then the corresponding domain axis +construct is selected.

+

If no values are provided then all domain axis +constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.domain_axis_key.html b/docs/1.9.0.1/method/cfdm.Field.domain_axis_key.html new file mode 100644 index 0000000000..e8f05e3311 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.domain_axis_key.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Field.domain_axis_key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.domain_axis_key

+
+
+Field.domain_axis_key(*identity, default=ValueError(), **filter_kwargs)[source]
+

Returns the domain axis key spanned by 1-d coordinates.

+

Specifically, returns the key of the domain axis construct that +is spanned by 1-d coordinate constructs.

+
+
Parameters
+
+
identity: optional

Select the 1-d dimension coordinate constructs that +have an identity, defined by their identities +methods, that matches any of the given values.

+

If no values are provided then all 1-d dimension +coordinate constructs are selected.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
default: optional

Return the value of the default parameter if there +is no unique construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
str

The key of the domain axis construct that is spanned by +the data of the selected 1-d coordinate constructs.

+
+
+
+
+

Examples:

+
>>> print(f.constructs())
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: time(1) days since 1964-01-21 00:00:00 >,
+ 'dimensioncoordinate1': <DimensionCoordinate: pressure(23) mbar>,
+ 'dimensioncoordinate2': <DimensionCoordinate: latitude(160) degrees_north>,
+ 'dimensioncoordinate3': <DimensionCoordinate: longitude(320) degrees_east>,
+ 'domainaxis0': <DomainAxis: size(1)>,
+ 'domainaxis1': <DomainAxis: size(23)>,
+ 'domainaxis2': <DomainAxis: size(160)>,
+ 'domainaxis3': <DomainAxis: size(320)>}
+>>> f.domain.domain_axis_key('time')
+'domainaxis0'
+>>> f.domain.domain_axis_key('longitude')
+'domainaxis3'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.dump.html b/docs/1.9.0.1/method/cfdm.Field.dump.html new file mode 100644 index 0000000000..530b36e0da --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.dump.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.Field.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.dump

+
+
+Field.dump(display=True, _level=0, _title=None)[source]
+

A full description of the field construct.

+

Returns a description of all properties, including those of +metadata constructs and their components, and provides +selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.equals.html b/docs/1.9.0.1/method/cfdm.Field.equals.html new file mode 100644 index 0000000000..3a87176978 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.equals.html @@ -0,0 +1,281 @@ + + + + + + + cfdm.Field.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.equals

+
+
+Field.equals(**kwargs)[source]
+

Whether two constructs are the same.

+

Equality is strict by default. This means that for two +constructs to be considered equal they must have corresponding +metadata constructs and for each pair of constructs:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

Any type of object may be tested but, in general, equality is +only possible with another field construct, or a subclass of +one. See the ignore_type parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
ignore_properties: sequence of str, optional

The names of properties of the construct (not the +metadata constructs) to omit from the comparison. Note +that the Conventions property is always omitted.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Field +instance, or a subclass of one. If ignore_type is +True then cfdm.Field(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
+
+
Returns
+
+
bool

Whether the two constructs are equal.

+
+
+
+
+

Examples:

+
>>> f.equals(f)
+True
+>>> f.equals(f.copy())
+True
+>>> f.equals(f[...])
+True
+>>> f.equals('a string, not a construct')
+False
+
+
+
>>> g = f.copy()
+>>> g.set_property('foo', 'bar')
+>>> f.equals(g)
+False
+>>> f.equals(g, verbose=3)
+Field: Non-common property name: foo
+Field: Different properties
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.field_ancillaries.html b/docs/1.9.0.1/method/cfdm.Field.field_ancillaries.html new file mode 100644 index 0000000000..04e0ef71d4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.field_ancillaries.html @@ -0,0 +1,213 @@ + + + + + + + cfdm.Field.field_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.field_ancillaries

+
+
+Field.field_ancillaries(*identities, **filter_kwargs)[source]
+

Return field ancillary constructs.

+

f.field_ancillaries(*identities, **filter_kwargs) is +equivalent to +f.constructs.filter(filter_by_type=["field_ancillary"], +filter_by_identity=identities, **filter_kwargs).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

constructs

+
+
+
Parameters
+
+
identities: optional

Select field ancillary constructs that have an +identity, defined by their identities methods, that +matches any of the given values.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria. Also to configure the returned value.

+
+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
+
Returns
+

The selected constructs in a new Constructs object, +unless modified by any filter_kwargs parameters.

+
+
+

Examples:

+
>>> print(f.field_ancillaries())
+Constructs:
+{}
+
+
+
>>> print(f.field_ancillaries())
+Constructs:
+{'cellmethod1': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod0': <CellMethod: domainaxis3: maximum>}
+
+
+
>>> f.cell_methods.ordered()
+OrderedDict([('cellmethod0', <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>),
+             ('cellmethod1', <CellMethod: domainaxis3: maximum>)])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_construct.html b/docs/1.9.0.1/method/cfdm.Field.get_construct.html new file mode 100644 index 0000000000..db58267a38 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_construct.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Field.get_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_construct

+
+
+Field.get_construct(key, default=ValueError())[source]
+

Return a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The key of the metadata construct.

+
+
Parameter example:

key='domainaxis1'

+
+
+
+
default: optional

Return the value of the default parameter if the +construct does not exist.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f.constructs()
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degree_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degreeE>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:greek_letters(10) >,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'domainaxis1': <DomainAxis: 10>,
+ 'domainaxis2': <DomainAxis: 9>}
+>>> f.get_construct('dimensioncoordinate1')
+<DimensionCoordinate: grid_latitude(10) degrees>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_data.html b/docs/1.9.0.1/method/cfdm.Field.get_data.html new file mode 100644 index 0000000000..a5bc100357 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_data

+
+
+Field.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_data_axes.html b/docs/1.9.0.1/method/cfdm.Field.get_data_axes.html new file mode 100644 index 0000000000..122db5c3c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_data_axes.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.Field.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_data_axes

+
+
+Field.get_data_axes(key=None, default=ValueError())[source]
+

Gets the keys of the axes spanned by the construct data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the +data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes(key='dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_domain.html b/docs/1.9.0.1/method/cfdm.Field.get_domain.html new file mode 100644 index 0000000000..ab8715bfc2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_domain.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.Field.get_domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_domain

+
+
+Field.get_domain()[source]
+

Return the domain.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

domain

+
+
+
Returns
+
+
Domain

The domain.

+
+
+
+
+

Examples:

+
>>> d = f.get_domain()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_filenames.html b/docs/1.9.0.1/method/cfdm.Field.get_filenames.html new file mode 100644 index 0000000000..1d2a1477b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_filenames.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.Field.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_filenames

+
+
+Field.get_filenames()[source]
+

Return the names of the files containing the data.

+

The names of the files containing the data of the field +constructs and of any metadata constructs are returned.

+
+
Returns
+
+
set

The file names in normalised, absolute form. If all of +the data are in memory then an empty set is +returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> cfdm.write(f, 'temp_file.nc')
+>>> g = cfdm.read('temp_file.nc')[0]
+>>> g.get_filenames()
+{'temp_file.nc'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.get_property.html b/docs/1.9.0.1/method/cfdm.Field.get_property.html new file mode 100644 index 0000000000..ebc1bb77bc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Field.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.get_property

+
+
+Field.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_bounds.html b/docs/1.9.0.1/method/cfdm.Field.has_bounds.html new file mode 100644 index 0000000000..92741a09d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Field.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_bounds

+
+
+Field.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_construct.html b/docs/1.9.0.1/method/cfdm.Field.has_construct.html new file mode 100644 index 0000000000..a63e40adb2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Field.has_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_construct

+
+
+Field.has_construct(*identity, **filter_kwargs)[source]
+

Whether a unique metadata construct exists.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
identity:

Select the unique construct that has the identity, +defined by its identities method, that matches the +given values.

+

Additionally, the values are matched against construct +identifiers, with or without the 'key%' prefix.

+

A value may be any object that can match via the +== operator, or a re.Pattern object that matches +via its search method.

+

Note that in the output of a dump method or print +call, a construct is always described by an identity +that will select it.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
filter_kwargs: optional

Keyword arguments as accepted by Constructs.filter +that define additional construct selection +criteria.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+

Whether or not a unique construct can be identified.

+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> f.has_construct('time')
+True
+>>> f.del_construct('altitude')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_data.html b/docs/1.9.0.1/method/cfdm.Field.has_data.html new file mode 100644 index 0000000000..b55ed9ac34 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Field.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_data

+
+
+Field.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_data_axes.html b/docs/1.9.0.1/method/cfdm.Field.has_data_axes.html new file mode 100644 index 0000000000..9889743ed0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_data_axes.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Field.has_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_data_axes

+
+
+Field.has_data_axes(key=None)[source]
+

Whether the axes spanned by the construct data have been set.

+

Specifically, whether the domain axis constructs spanned by the +data of the field or of a metadata construct have been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+
+
bool

True if domain axis constructs that span the data been +set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes('dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+
+
+
>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_geometry.html b/docs/1.9.0.1/method/cfdm.Field.has_geometry.html new file mode 100644 index 0000000000..eb37869ed0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_geometry.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.Field.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_geometry

+
+
+Field.has_geometry()[source]
+

Return whether or not any coordinates have cell geometries.

+
+

New in version (cfdm): 1.8.0

+
+
+
Returns
+
+
bool

True if there are geometries, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.has_geometry()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.has_property.html b/docs/1.9.0.1/method/cfdm.Field.has_property.html new file mode 100644 index 0000000000..05a8bde5ef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Field.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.has_property

+
+
+Field.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.identities.html b/docs/1.9.0.1/method/cfdm.Field.identities.html new file mode 100644 index 0000000000..2318237100 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Field.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.identities

+
+
+Field.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.identity.html b/docs/1.9.0.1/method/cfdm.Field.identity.html new file mode 100644 index 0000000000..21c70cb8fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Field.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.identity

+
+
+Field.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.insert_dimension.html b/docs/1.9.0.1/method/cfdm.Field.insert_dimension.html new file mode 100644 index 0000000000..5c1266b46d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.insert_dimension.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Field.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.insert_dimension

+
+
+Field.insert_dimension(axis, position=0, inplace=False)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis, corresponding to an existing domain +axis construct, into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
axis: str

The identifier of the domain axis construct +corresponding to the inserted axis.

+
+
Parameter example:

axis='domainaxis2'

+
+
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

The new field construct with expanded data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.data.shape
+(19, 73, 96)
+>>> f.insert_dimension('domainaxis3').data.shape
+(1, 96, 73, 19)
+>>> f.insert_dimension('domainaxis3', position=3).data.shape
+(19, 73, 96, 1)
+>>> f.insert_dimension('domainaxis3', position=-1, inplace=True)
+(19, 73, 1, 96)
+>>> f.data.shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_dimension_groups.html new file mode 100644 index 0000000000..69f859960f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_dimension_groups.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Field.nc_clear_component_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_component_dimension_groups

+
+
+Field.nc_clear_component_dimension_groups(component)[source]
+

Remove the netCDF dimension groups of components.

+

Removes the netCDF dimension groups for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_clear_component_dimension_groups('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_sample_dimension_groups.html new file mode 100644 index 0000000000..57e81b57e5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_sample_dimension_groups.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Field.nc_clear_component_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_component_sample_dimension_groups

+
+
+Field.nc_clear_component_sample_dimension_groups(component)[source]
+

Remove the netCDF sample dimension groups of components.

+

Removes the netCDF sample dimension groups for all components +of a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_sample_dimension_groups('count')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_variable_groups.html new file mode 100644 index 0000000000..3f7c57e569 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_component_variable_groups.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.Field.nc_clear_component_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_component_variable_groups

+
+
+Field.nc_clear_component_variable_groups(component)[source]
+

Remove the netCDF variable groups of components.

+

Removes the netCDF variable groups for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_clear_component_variable_groups('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_geometry_variable_groups.html new file mode 100644 index 0000000000..49f407b443 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_geometry_variable_groups.html @@ -0,0 +1,205 @@ + + + + + + + cfdm.Field.nc_clear_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_geometry_variable_groups

+
+
+Field.nc_clear_geometry_variable_groups()[source]
+

Remove the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with +nc_set_geometry_variable, with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_global_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_global_attributes.html new file mode 100644 index 0000000000..e0feffc1b8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_global_attributes.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Field.nc_clear_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_global_attributes

+
+
+Field.nc_clear_global_attributes()[source]
+

Removes properties to write as netCDF global attributes.

+

When multiple field constructs are being written to the same +file, it is only possible to create a netCDF global attribute +from a property that has identical values for each field +construct. If any field construct’s property has a different +value then the property will not be written as a netCDF global +attribute, even if it has been selected as such, but will +appear instead as attributes on the netCDF data variables +corresponding to each field construct.

+

The standard description-of-file-contents properties are +always written as netCDF global attributes, if possible, so +selecting them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The removed selection of properties requested for +writing to netCDF global attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_group_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_group_attributes.html new file mode 100644 index 0000000000..5494360fdc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_group_attributes.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Field.nc_clear_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_group_attributes

+
+
+Field.nc_clear_group_attributes()[source]
+

Removes properties to write as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
dict

The removed selection of properties requested for writing +to netCDF group attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_clear_variable_groups.html new file mode 100644 index 0000000000..f5f9910ca5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Field.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_clear_variable_groups

+
+
+Field.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_del_component_dimension.html b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_dimension.html new file mode 100644 index 0000000000..6f8675c4f3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_dimension.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Field.nc_del_component_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_del_component_dimension

+
+
+Field.nc_del_component_dimension(component)[source]
+

Remove the netCDF dimension name of components.

+

Removes the netCDF dimension name for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_dimension('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_del_component_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_sample_dimension.html new file mode 100644 index 0000000000..26ff142cc3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_sample_dimension.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Field.nc_del_component_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_del_component_sample_dimension

+
+
+Field.nc_del_component_sample_dimension(component)[source]
+

Remove the netCDF sample dimension name of components.

+

Removes the netCDF sample dimension name for all components of +a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_sample_dimension('count')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_del_component_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_variable.html new file mode 100644 index 0000000000..abd5c5ae73 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_del_component_variable.html @@ -0,0 +1,225 @@ + + + + + + + cfdm.Field.nc_del_component_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_del_component_variable

+
+
+Field.nc_del_component_variable(component)[source]
+

Remove the netCDF variable name of components.

+

Removes the netCDF variable name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_del_component_variable('interior_ring')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_del_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_del_geometry_variable.html new file mode 100644 index 0000000000..fc2b199853 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_del_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Field.nc_del_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_del_geometry_variable

+
+
+Field.nc_del_geometry_variable(default=ValueError())[source]
+

Remove the netCDF geometry container variable name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the netCDF +dimension name has not been set. If set to an Exception +instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF geometry container variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_del_variable.html new file mode 100644 index 0000000000..8dda2c30ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Field.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_del_variable

+
+
+Field.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_geometry_variable_groups.html new file mode 100644 index 0000000000..1035f9d5c5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_geometry_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Field.nc_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_geometry_variable_groups

+
+
+Field.nc_geometry_variable_groups()[source]
+

Return the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +

nc_set_geometry_variable_groups

+
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_get_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_get_geometry_variable.html new file mode 100644 index 0000000000..2889383656 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_get_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Field.nc_get_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_get_geometry_variable

+
+
+Field.nc_get_geometry_variable(default=ValueError())[source]
+

Return the netCDF geometry container variable name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF geometry container variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_get_variable.html new file mode 100644 index 0000000000..8aa090d411 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Field.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_get_variable

+
+
+Field.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_global_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_global_attributes.html new file mode 100644 index 0000000000..1c3d38bd29 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_global_attributes.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Field.nc_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_global_attributes

+
+
+Field.nc_global_attributes(values=False)[source]
+

Returns properties to write as netCDF global attributes.

+

When multiple field constructs are being written to the same file, +it is only possible to create a netCDF global attribute from a +property that has identical values for each field construct. If +any field construct’s property has a different value then the +property will not be written as a netCDF global attribute, even if +it has been selected as such, but will appear instead as +attributes on the netCDF data variables corresponding to each +field construct.

+

The standard description-of-file-contents properties are always +written as netCDF global attributes, if possible, so selecting +them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
values: bool, optional

Return the value (rather than None) for any global +attribute that has, by definition, the same value as a +construct property.

+
+

New in version (cfdm): 1.8.2

+
+
+
+
+
Returns
+
+
dict

The selection of properties requested for writing to +netCDF global attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes(values=True)
+{'Conventions': 'CF-1.9', 'comment': 'global_comment', 'foo': 'bar'}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_group_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_group_attributes.html new file mode 100644 index 0000000000..89e3ae805e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_group_attributes.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Field.nc_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_group_attributes

+
+
+Field.nc_group_attributes(values=False)[source]
+

Returns properties to write as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
values: bool, optional

Return the value (rather than None) for any group +attribute that has, by definition, the same value as a +construct property.

+
+
+
+
Returns
+
+
dict

The selection of properties requested for writing to +netCDF group attributes.

+
+
+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_has_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_has_geometry_variable.html new file mode 100644 index 0000000000..49bcf5a075 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_has_geometry_variable.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.Field.nc_has_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_has_geometry_variable

+
+
+Field.nc_has_geometry_variable()[source]
+

Whether a netCDF geometry container variable has a name.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if the netCDF geometry container variable name has +been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_has_variable.html new file mode 100644 index 0000000000..6c3e9cc4c5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Field.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_has_variable

+
+
+Field.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension.html new file mode 100644 index 0000000000..29cb302be2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension.html @@ -0,0 +1,219 @@ + + + + + + + cfdm.Field.nc_set_component_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_dimension

+
+
+Field.nc_set_component_dimension(component, value)[source]
+

Set the netCDF dimension name of components.

+

Sets the netCDF dimension name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
value: str

The netCDF dimension name to be set for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_dimension('interior_ring', 'part')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension_groups.html new file mode 100644 index 0000000000..269211e89b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_dimension_groups.html @@ -0,0 +1,219 @@ + + + + + + + cfdm.Field.nc_set_component_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_dimension_groups

+
+
+Field.nc_set_component_dimension_groups(component, groups)[source]
+

Set the netCDF dimension groups of components.

+

Sets the netCDF dimension groups for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_dimension_groups('interior_ring', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension.html new file mode 100644 index 0000000000..8a54ff7279 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension.html @@ -0,0 +1,212 @@ + + + + + + + cfdm.Field.nc_set_component_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_sample_dimension

+
+
+Field.nc_set_component_sample_dimension(component, value)[source]
+

Set the netCDF sample dimension name of components.

+

Sets the netCDF sample dimension name for all components of a +given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
value: str

The netCDF sample_dimension name to be set for each +component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_sample_dimension('count', 'obs')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension_groups.html new file mode 100644 index 0000000000..5bbd62886d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_sample_dimension_groups.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Field.nc_set_component_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_sample_dimension_groups

+
+
+Field.nc_set_component_sample_dimension_groups(component, groups)[source]
+

Set the netCDF sample dimension groups of components.

+

Sets the netCDF sample dimension groups for all components of +a given type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + +

component

Description

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_sample_dimension_groups('count', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable.html new file mode 100644 index 0000000000..5f55a91458 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable.html @@ -0,0 +1,227 @@ + + + + + + + cfdm.Field.nc_set_component_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_variable

+
+
+Field.nc_set_component_variable(component, value)[source]
+

Set the netCDF variable name for components.

+

Sets the netCDF variable name for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
value: str

The netCDF variable name to be set for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_variable('interior_ring', 'interiorring_1')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable_groups.html new file mode 100644 index 0000000000..ffbf2f1208 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_component_variable_groups.html @@ -0,0 +1,227 @@ + + + + + + + cfdm.Field.nc_set_component_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_component_variable_groups

+
+
+Field.nc_set_component_variable_groups(component, groups)[source]
+

Set the netCDF variable groups of components.

+

Sets the netCDF variable groups for all components of a given +type.

+

Some components exist within multiple constructs, but when +written to a netCDF dataset the netCDF names associated with +such components will be arbitrarily taken from one of +them. The netCDF names can be set on all such occurrences +individually, or preferably by using this method to ensure +consistency across all such components.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
component: str

Specify the component type. One of:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + +

component

Description

'interior_ring'

Interior ring variables for +geometry coordinates

'node_count'

Node count variables for +geometry coordinates

'part_node_count'

Part node count variables for +geometry coordinates

'count'

Count variables for contiguous +ragged arrays

'index'

Index variables for indexed +ragged arrays

'list'

List variables for compression +by gathering

+
+
groups: sequence of str

The new group structure for each component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_component_variable_groups('interior_ring', ['forecast'])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable.html new file mode 100644 index 0000000000..98b1dffe5c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Field.nc_set_geometry_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_geometry_variable

+
+
+Field.nc_set_geometry_variable(value)[source]
+

Set the netCDF geometry container variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF geometry container variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry')
+>>> f.nc_has_geometry_variable()
+True
+>>> f.nc_get_geometry_variable()
+'geometry'
+>>> f.nc_del_geometry_variable()
+'geometry'
+>>> f.nc_has_geometry_variable()
+False
+>>> print(f.nc_get_geometry_variable(None))
+None
+>>> print(f.nc_del_geometry_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable_groups.html new file mode 100644 index 0000000000..d814480bbc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_geometry_variable_groups.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Field.nc_set_geometry_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_geometry_variable_groups

+
+
+Field.nc_set_geometry_variable_groups(groups)[source]
+

Set the netCDF geometry variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_geometry_variable, +with the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_geometry_variable('geometry1')
+>>> f.nc_geometry_variable_groups()
+()
+>>> f.nc_set_geometry_variable_groups(['forecast', 'model'])
+>>> f.nc_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'/forecast/model/geometry1'
+>>> f.nc_clear_geometry_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_geometry_variable()
+'geometry1'
+
+
+
>>> f.nc_set_geometry_variable('/forecast/model/geometry1')
+>>> f.nc_geometry__variablegroups()
+('forecast', 'model')
+>>> f.nc_del_geometry_variable('/forecast/model/geometry1')
+'/forecast/model/geometry1'
+>>> f.nc_geometry_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attribute.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attribute.html new file mode 100644 index 0000000000..9e51ecc3e8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attribute.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Field.nc_set_global_attribute — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_global_attribute

+
+
+Field.nc_set_global_attribute(prop, value=None)[source]
+

Select a property to be written as a netCDF global attribute.

+

When multiple field constructs are being written to the same file, +it is only possible to create a netCDF global attribute from a +property that has identical values for each field construct. If +any field construct’s property has a different value then the +property will not be written as a netCDF global attribute, even if +it has been selected as such, but will appear instead as +attributes on the netCDF data variables corresponding to each +field construct.

+

The standard description-of-file-contents properties are always +written as netCDF global attributes, if possible, so selecting +them is optional.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

Select the property to be written (if possible) as a +netCDF global attribute.

+
+
value: optional

The value of the netCDF global attribute, which will be +created (if possible) in addition to the property as +written to a netCDF data variable. If unset (or None) +then this acts as an instruction to write the property (if +possible) to a netCDF global attribute instead of to a +netCDF data variable.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attribute('foo')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attribute('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_clear_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_global_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attributes.html new file mode 100644 index 0000000000..69bce39b85 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_global_attributes.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.Field.nc_set_global_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_global_attributes

+
+
+Field.nc_set_global_attributes(properties, copy=True)[source]
+

Set properties to be written as netCDF global attributes.

+

When multiple field constructs are being written to the same +file, it is only possible to create a netCDF global attribute +from a property that has identical values for each field +construct. If any field construct’s property has a different +value then the property will not be written as a netCDF global +attribute, even if it has been selected as such, but will +appear instead as attributes on the netCDF data variables +corresponding to each field construct.

+

The standard description-of-file-contents properties are +always written as netCDF global attributes, if possible, so +selecting them is optional.

+
+

New in version (cfdm): 1.7.10

+
+ +
+
Parameters
+
+
properties: dict

Set the properties be written as a netCDF global +attribute from the dictionary supplied. The value of a +netCDF global attribute, which will be created (if +possible) in addition to the property as written to a +netCDF data variable. If a value of None is used +then this acts as an instruction to write the property +(if possible) to a netCDF global attribute instead of +to a netCDF data variable.

+
+
Parameter example:

properties={'Conventions': None, 'project': 'research'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None}
+>>> f.nc_set_global_attributes({})
+>>> f.nc_set_global_attributes({'foo': None})
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': None, 'foo': None}
+>>> f.nc_set_global_attributes('comment', 'global comment')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': None}
+>>> f.nc_set_global_attributes('foo', 'bar')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'comment': 'global_comment', 'foo': 'bar'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attribute.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attribute.html new file mode 100644 index 0000000000..fe50dfecaf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attribute.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Field.nc_set_group_attribute — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_group_attribute

+
+
+Field.nc_set_group_attribute(prop, value=None)[source]
+

Select a property to be written as a netCDF group attribute.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
prop: str

Select the property to be written (if possible) as a +netCDF group attribute.

+
+
value: optional

The value of the netCDF group attribute, which will be +created (if possible) in addition to the property as +written to a netCDF data variable. If unset (or +None) then this acts as an instruction to write the +property (if possible) to a netCDF group attribute +instead of to a netCDF data variable.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attributes.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attributes.html new file mode 100644 index 0000000000..295bf9e183 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_group_attributes.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.nc_set_group_attributes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_group_attributes

+
+
+Field.nc_set_group_attributes(properties, copy=True)[source]
+

Set properties to be written as netCDF group attributes.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
properties: dict

Set the properties be written as a netCDF group +attribute from the dictionary supplied. The value of a +netCDF group attribute, which will be created (if +possible) in addition to the property as written to a +netCDF data variable. If a value of None is used +then this acts as an instruction to write the property +(if possible) to a netCDF group attribute instead of +to a netCDF data variable.

+
+
Parameter example:

properties={'Conventions': None, 'project': 'research'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_group_attributes()
+{'comment': None}
+>>> f.nc_set_group_attribute('foo')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': None}
+>>> f.nc_set_group_attribute('foo', 'bar')
+>>> f.nc_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes(values=True)
+{'comment': 'forecast comment', 'foo': 'bar'}
+>>> f.nc_clear_group_attributes()
+{'comment': None, 'foo': 'bar'}
+>>> f.nc_group_attributes()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_variable.html new file mode 100644 index 0000000000..5242861243 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Field.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_variable

+
+
+Field.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_set_variable_groups.html new file mode 100644 index 0000000000..816a8ae36f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Field.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_set_variable_groups

+
+
+Field.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Field.nc_variable_groups.html new file mode 100644 index 0000000000..129aa3b47c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Field.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.nc_variable_groups

+
+
+Field.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.properties.html b/docs/1.9.0.1/method/cfdm.Field.properties.html new file mode 100644 index 0000000000..3cdd2b8db9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Field.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.properties

+
+
+Field.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.set_construct.html b/docs/1.9.0.1/method/cfdm.Field.set_construct.html new file mode 100644 index 0000000000..62c680f9b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.set_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Field.set_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.set_construct

+
+
+Field.set_construct(construct, key=None, axes=None, copy=True)[source]
+

Set a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
construct:

The metadata construct to be inserted.

+
+
key: str, optional

The construct identifier to be used for the +construct. If not set then a new, unique identifier is +created automatically. If the identifier already +exists then the existing construct will be replaced.

+
+
Parameter example:

key='cellmeasure0'

+
+
+
+
axes: (sequence of) str, optional

The construct identifiers of the domain axis +constructs spanned by the data array. An exception is +raised if used for a metadata construct that can not +have a data array, i.e. domain axis, cell method and +coordinate reference constructs.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
copy: bool, optional

If True then set a copy of the construct. By default +the construct is copied.

+
+
+
+
Returns
+
+
str

The construct identifier for the construct.

+
+
+
+
+

Examples:

+
>>> key = f.set_construct(c)
+>>> key = f.set_construct(c, copy=False)
+>>> key = f.set_construct(c, axes='domainaxis2')
+>>> key = f.set_construct(c, key='cellmeasure0')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.set_data.html b/docs/1.9.0.1/method/cfdm.Field.set_data.html new file mode 100644 index 0000000000..d94057e7b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.set_data.html @@ -0,0 +1,235 @@ + + + + + + + cfdm.Field.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.set_data

+
+
+Field.set_data(data, axes=None, copy=True, inplace=True)[source]
+

Set the data of the field construct.

+

The units, calendar and fill value properties of the data +object are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
axes: (sequence of) str, or None

The identifiers of the domain axes spanned by the data +array. If None then the data axes are not set.

+

The axes may also be set afterwards with the +set_data_axes method.

+
+
Parameter example:

axes=['domainaxis2']

+
+
Parameter example:

axes='domainaxis2'

+
+
Parameter example:

axes=['domainaxis2', 'domainaxis1']

+
+
Parameter example:

axes=None

+
+
+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Field instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Field

If the operation was in-place then None is returned, +otherwise return a new Field instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+
+
+
>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.set_data_axes.html b/docs/1.9.0.1/method/cfdm.Field.set_data_axes.html new file mode 100644 index 0000000000..36e18149ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.set_data_axes.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.Field.set_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.set_data_axes

+
+
+Field.set_data_axes(axes, key=None, _shape=None)[source]
+

Sets the axes spanned by the construct data.

+

Specifically, sets the domain axis constructs spanned by the +data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: sequence of str

The identifiers of the domain axis constructs spanned by +the data of the field or of a metadata construct.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+

Set the domain axis constructs spanned by the data of the field +construct:

+
>>> f = cfdm.Field()
+>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+
+
+

Set the domain axis constructs spanned by the data of a metadata +construct:

+
>>> f = cfdm.example_field(5)
+>>> f.set_data_axes(['domainaxis1'], key='dimensioncoordinate1')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.set_properties.html b/docs/1.9.0.1/method/cfdm.Field.set_properties.html new file mode 100644 index 0000000000..0e8db17f35 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Field.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.set_properties

+
+
+Field.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.set_property.html b/docs/1.9.0.1/method/cfdm.Field.set_property.html new file mode 100644 index 0000000000..2994a1c6c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Field.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.set_property

+
+
+Field.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.squeeze.html b/docs/1.9.0.1/method/cfdm.Field.squeeze.html new file mode 100644 index 0000000000..e024f47012 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.squeeze.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Field.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.squeeze

+
+
+Field.squeeze(axes=None, inplace=False)[source]
+

Remove size one axes from the data.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

The field construct with removed data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.data.shape
+(1, 73, 1, 96)
+>>> f.squeeze().data.shape
+(73, 96)
+>>> f.squeeze(0).data.shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2], inplace=True)
+>>> f.data.shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.transpose.html b/docs/1.9.0.1/method/cfdm.Field.transpose.html new file mode 100644 index 0000000000..6e2468a307 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.transpose.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Field.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.transpose

+
+
+Field.transpose(axes=None, constructs=False, inplace=False)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
constructs: bool

If True then transpose the metadata constructs to have +the same relative domain axis order as the data of +transposed field construct. By default, metadata +constructs are not changed.

+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

The field construct with permuted data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.data.shape
+(19, 73, 96)
+>>> f.transpose().data.shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).data.shape
+(73, 19, 96)
+>>> f.transpose(inplace=True)
+>>> f.data.shape
+(96, 19, 73)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Field.uncompress.html b/docs/1.9.0.1/method/cfdm.Field.uncompress.html new file mode 100644 index 0000000000..e7cbf99749 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Field.uncompress.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.Field.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Field.uncompress

+
+
+Field.uncompress(inplace=False)[source]
+

Uncompress the field construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

The field construct data is uncompressed, along with any +applicable metadata constructs.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A field construct that is already uncompressed will be returned +uncompressed.

+

The compression type can be discovered by the +get_compression_type method of the data:

+

The following types of compression can be uncompressed:

+
+
    +
  • Compression type 'ragged_contiguous': Contiguous ragged +array representation for DSG “point”, “timeSeries”, +“trajectory” or “profile” features.

  • +
  • Compression type 'ragged_indexed': Indexed ragged array +representation for DSG “point”, “timeSeries”, “trajectory”, or +“profile” features.

  • +
  • Compression type 'ragged_indexed_contiguous': Indexed +contiguous ragged array representation for DSG +“timeSeriesProfile”, or “trajectoryProfile” features.

  • +
  • Compression type 'gathered': Compression by gathering over +any subset of the field construct data dimensions.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+

See also

+

compress

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Field or None

The uncompressed field construct, or None if the +operation was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.__deepcopy__.html new file mode 100644 index 0000000000..2868c5ddf3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.FieldAncillary.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.__deepcopy__

+
+
+FieldAncillary.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.FieldAncillary()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.__getitem__.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.__getitem__.html new file mode 100644 index 0000000000..71283c9e48 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.FieldAncillary.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.__getitem__

+
+
+FieldAncillary.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.__repr__.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.__repr__.html new file mode 100644 index 0000000000..d605ff3b30 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.FieldAncillary.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.__repr__

+
+
+FieldAncillary.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.__str__.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.__str__.html new file mode 100644 index 0000000000..25b71d2290 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.FieldAncillary.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.__str__

+
+
+FieldAncillary.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_method_exclusions.html new file mode 100644 index 0000000000..09a5d7d810 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary._docstring_method_exclusions

+
+
+FieldAncillary._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_package_depth.html new file mode 100644 index 0000000000..03f3ff09eb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.FieldAncillary._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary._docstring_package_depth

+
+
+FieldAncillary._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_special_substitutions.html new file mode 100644 index 0000000000..3035d82fdb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.FieldAncillary._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary._docstring_special_substitutions

+
+
+classmethod FieldAncillary._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_substitutions.html new file mode 100644 index 0000000000..a9d59ce264 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.FieldAncillary._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary._docstring_substitutions

+
+
+FieldAncillary._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.apply_masking.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.apply_masking.html new file mode 100644 index 0000000000..355d610577 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.FieldAncillary.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.apply_masking

+
+
+FieldAncillary.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.clear_properties.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.clear_properties.html new file mode 100644 index 0000000000..2e680ca674 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.clear_properties

+
+
+FieldAncillary.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.copy.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.copy.html new file mode 100644 index 0000000000..015ec81457 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.FieldAncillary.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.copy

+
+
+FieldAncillary.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
FieldAncillary

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.creation_commands.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.creation_commands.html new file mode 100644 index 0000000000..18f6342a43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.FieldAncillary.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.creation_commands

+
+
+FieldAncillary.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the FieldAncillary instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.FieldAncillary(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.FieldAncillary()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.del_data.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.del_data.html new file mode 100644 index 0000000000..2760810300 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.FieldAncillary.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.del_data

+
+
+FieldAncillary.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.del_property.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.del_property.html new file mode 100644 index 0000000000..ae0c9fedb3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.FieldAncillary.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.del_property

+
+
+FieldAncillary.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.dump.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.dump.html new file mode 100644 index 0000000000..e7c779420f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.FieldAncillary.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.dump

+
+
+FieldAncillary.dump(display=True, _omit_properties=None, _key=None, _level=0, _title=None, _axes=None, _axis_names=None)[source]
+

A full description of the field ancillary construct.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.equals.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.equals.html new file mode 100644 index 0000000000..f99fcc2b54 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.FieldAncillary.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.equals

+
+
+FieldAncillary.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another FieldAncillary +instance, or a subclass of one. If ignore_type is +True then cfdm.FieldAncillary(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.get_data.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_data.html new file mode 100644 index 0000000000..84a1390907 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.FieldAncillary.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.get_data

+
+
+FieldAncillary.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.get_filenames.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_filenames.html new file mode 100644 index 0000000000..fd7b5dc7f5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.FieldAncillary.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.get_filenames

+
+
+FieldAncillary.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.get_property.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_property.html new file mode 100644 index 0000000000..d13ee416b0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.FieldAncillary.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.get_property

+
+
+FieldAncillary.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.has_bounds.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_bounds.html new file mode 100644 index 0000000000..a308f2c2a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.FieldAncillary.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.has_bounds

+
+
+FieldAncillary.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.has_data.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_data.html new file mode 100644 index 0000000000..881761438e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.FieldAncillary.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.has_data

+
+
+FieldAncillary.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.has_property.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_property.html new file mode 100644 index 0000000000..b67b7c504d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.FieldAncillary.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.has_property

+
+
+FieldAncillary.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.identities.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.identities.html new file mode 100644 index 0000000000..01fa6e0d56 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.FieldAncillary.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.identities

+
+
+FieldAncillary.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.identity.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.identity.html new file mode 100644 index 0000000000..d7b4356269 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.FieldAncillary.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.identity

+
+
+FieldAncillary.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.insert_dimension.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.insert_dimension.html new file mode 100644 index 0000000000..4c82553134 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.FieldAncillary.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.insert_dimension

+
+
+FieldAncillary.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
FieldAncillary or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_clear_variable_groups.html new file mode 100644 index 0000000000..3e9b64f6a5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.FieldAncillary.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_clear_variable_groups

+
+
+FieldAncillary.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_del_variable.html new file mode 100644 index 0000000000..28a22d2f79 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.FieldAncillary.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_del_variable

+
+
+FieldAncillary.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_get_variable.html new file mode 100644 index 0000000000..acc2156fe9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.FieldAncillary.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_get_variable

+
+
+FieldAncillary.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_has_variable.html new file mode 100644 index 0000000000..69c3d303e2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.FieldAncillary.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_has_variable

+
+
+FieldAncillary.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable.html new file mode 100644 index 0000000000..7385812fd4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.FieldAncillary.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_set_variable

+
+
+FieldAncillary.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable_groups.html new file mode 100644 index 0000000000..d394c48002 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.FieldAncillary.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_set_variable_groups

+
+
+FieldAncillary.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_variable_groups.html new file mode 100644 index 0000000000..a850a684d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.FieldAncillary.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.nc_variable_groups

+
+
+FieldAncillary.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.properties.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.properties.html new file mode 100644 index 0000000000..429dd184b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.FieldAncillary.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.properties

+
+
+FieldAncillary.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.set_data.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_data.html new file mode 100644 index 0000000000..84610fb725 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.FieldAncillary.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.set_data

+
+
+FieldAncillary.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified FieldAncillary instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or FieldAncillary

If the operation was in-place then None is returned, +otherwise return a new FieldAncillary instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.set_properties.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_properties.html new file mode 100644 index 0000000000..ca42851ccd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.FieldAncillary.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.set_properties

+
+
+FieldAncillary.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.set_property.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_property.html new file mode 100644 index 0000000000..bfaa4ada0a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.FieldAncillary.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.set_property

+
+
+FieldAncillary.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.squeeze.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.squeeze.html new file mode 100644 index 0000000000..e31f7fbe24 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.FieldAncillary.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.squeeze

+
+
+FieldAncillary.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
FieldAncillary or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.FieldAncillary()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.transpose.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.transpose.html new file mode 100644 index 0000000000..b7fe0506ad --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.FieldAncillary.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.transpose

+
+
+FieldAncillary.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
FieldAncillary or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.FieldAncillary.uncompress.html b/docs/1.9.0.1/method/cfdm.FieldAncillary.uncompress.html new file mode 100644 index 0000000000..1c42d21e71 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.FieldAncillary.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.FieldAncillary.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.FieldAncillary.uncompress

+
+
+FieldAncillary.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
FieldAncillary or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.__array__.html b/docs/1.9.0.1/method/cfdm.GatheredArray.__array__.html new file mode 100644 index 0000000000..e77e5d28a5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.GatheredArray.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.__array__

+
+
+GatheredArray.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.GatheredArray.__deepcopy__.html new file mode 100644 index 0000000000..de74bd1ea9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.GatheredArray.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.__deepcopy__

+
+
+GatheredArray.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.GatheredArray.__getitem__.html new file mode 100644 index 0000000000..c2edf801d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.__getitem__.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.GatheredArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.__getitem__

+
+
+GatheredArray.__getitem__(indices)[source]
+

Returns a subspace of the uncompressed data as a numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace are relative to the +uncompressed data and must be either Ellipsis or a sequence that +contains an index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a sequence of +two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.__repr__.html b/docs/1.9.0.1/method/cfdm.GatheredArray.__repr__.html new file mode 100644 index 0000000000..26cca240c5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.GatheredArray.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.__repr__

+
+
+GatheredArray.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.__str__.html b/docs/1.9.0.1/method/cfdm.GatheredArray.__str__.html new file mode 100644 index 0000000000..66b112f5a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.GatheredArray.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.__str__

+
+
+GatheredArray.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.copy.html b/docs/1.9.0.1/method/cfdm.GatheredArray.copy.html new file mode 100644 index 0000000000..d57e7c1fa1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.GatheredArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.copy

+
+
+GatheredArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
GatheredArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_axes.html new file mode 100644 index 0000000000..fd2ec4a2f1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_axes.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.GatheredArray.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.get_compressed_axes

+
+
+GatheredArray.get_compressed_axes()[source]
+

Return axes that are compressed in the underlying array.

+
+
Returns
+
+
list

The compressed axes described by their integer positions.

+
+
+
+
+

Examples:

+
>>> c.ndim
+4
+>>> c.compressed_array.ndim
+3
+>>> c.compressed_axes()
+[1, 2]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_dimension.html new file mode 100644 index 0000000000..d05631bb85 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compressed_dimension.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.GatheredArray.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.get_compressed_dimension

+
+
+GatheredArray.get_compressed_dimension(*default)[source]
+

Returns the compressed dimension’s position in the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_compressed_axearray, get_compressed_axes, +get_compressed_type

+
+
+
Parameters
+
+
default: optional

Return default if the underlying array is not +compressed.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array. If the underlying is not compressed then default +is returned, if provided.

+
+
+
+
+

Examples:

+
>>> i = d.get_compressed_dimension()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compression_type.html new file mode 100644 index 0000000000..db0b9d38fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.GatheredArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.get_compression_type

+
+
+GatheredArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.get_list.html b/docs/1.9.0.1/method/cfdm.GatheredArray.get_list.html new file mode 100644 index 0000000000..36089ee0e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.get_list.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.GatheredArray.get_list — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.get_list

+
+
+GatheredArray.get_list(default=ValueError())[source]
+

Return the list variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the list +variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
List

The list variable.

+
+
+
+
+

Examples:

+
>>> l = g.get_list()
+
+
+
>>> l = g.get_list(default=None)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.GatheredArray.get_subspace.html new file mode 100644 index 0000000000..ccd4fe0435 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.GatheredArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.get_subspace

+
+
+classmethod GatheredArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.source.html b/docs/1.9.0.1/method/cfdm.GatheredArray.source.html new file mode 100644 index 0000000000..d04760f99d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.source.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.GatheredArray.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.source

+
+
+GatheredArray.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set. If set to an Exception instance then +it will be raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> array
+<RaggedContiguousArray(2, 4): >
+>>> array.source()
+<Data(5): [280.0, ..., 279.5]>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.GatheredArray.to_memory.html b/docs/1.9.0.1/method/cfdm.GatheredArray.to_memory.html new file mode 100644 index 0000000000..d1df7f7dce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.GatheredArray.to_memory.html @@ -0,0 +1,169 @@ + + + + + + + cfdm.GatheredArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.GatheredArray.to_memory

+
+
+GatheredArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+
Returns
+
+
GatheredArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.Index.__deepcopy__.html new file mode 100644 index 0000000000..418e287d17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.Index.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.__deepcopy__

+
+
+Index.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.Index()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.__getitem__.html b/docs/1.9.0.1/method/cfdm.Index.__getitem__.html new file mode 100644 index 0000000000..614da4b4cd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.Index.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.__getitem__

+
+
+Index.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.__repr__.html b/docs/1.9.0.1/method/cfdm.Index.__repr__.html new file mode 100644 index 0000000000..4a37b46610 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Index.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.__repr__

+
+
+Index.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.__str__.html b/docs/1.9.0.1/method/cfdm.Index.__str__.html new file mode 100644 index 0000000000..d4c9186b70 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.Index.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.__str__

+
+
+Index.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.Index._docstring_method_exclusions.html new file mode 100644 index 0000000000..c698884b4f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index._docstring_method_exclusions

+
+
+Index._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.Index._docstring_package_depth.html new file mode 100644 index 0000000000..2276b2e85d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.Index._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index._docstring_package_depth

+
+
+Index._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.Index._docstring_special_substitutions.html new file mode 100644 index 0000000000..6d0b367aba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.Index._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index._docstring_special_substitutions

+
+
+classmethod Index._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.Index._docstring_substitutions.html new file mode 100644 index 0000000000..f13d2dd119 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Index._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index._docstring_substitutions

+
+
+Index._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.apply_masking.html b/docs/1.9.0.1/method/cfdm.Index.apply_masking.html new file mode 100644 index 0000000000..36672e16f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.Index.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.apply_masking

+
+
+Index.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.clear_properties.html b/docs/1.9.0.1/method/cfdm.Index.clear_properties.html new file mode 100644 index 0000000000..5acb4a458d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.clear_properties

+
+
+Index.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.copy.html b/docs/1.9.0.1/method/cfdm.Index.copy.html new file mode 100644 index 0000000000..37d11eabc5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.Index.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.copy

+
+
+Index.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Index

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.creation_commands.html b/docs/1.9.0.1/method/cfdm.Index.creation_commands.html new file mode 100644 index 0000000000..21c44f5fe9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.Index.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.creation_commands

+
+
+Index.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the Index instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.Index(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.Index()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.del_data.html b/docs/1.9.0.1/method/cfdm.Index.del_data.html new file mode 100644 index 0000000000..90f4597b74 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Index.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.del_data

+
+
+Index.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.del_property.html b/docs/1.9.0.1/method/cfdm.Index.del_property.html new file mode 100644 index 0000000000..afe5fac77a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Index.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.del_property

+
+
+Index.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.dump.html b/docs/1.9.0.1/method/cfdm.Index.dump.html new file mode 100644 index 0000000000..2d455e7acf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.Index.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.dump

+
+
+Index.dump(display=True, _key=None, _title=None, _create_title=True, _prefix='', _level=0, _omit_properties=None, _axes=None, _axis_names=None)[source]
+

A full description of the index variable.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.equals.html b/docs/1.9.0.1/method/cfdm.Index.equals.html new file mode 100644 index 0000000000..cee42ef7c3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.Index.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.equals

+
+
+Index.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another Index +instance, or a subclass of one. If ignore_type is +True then cfdm.Index(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.get_data.html b/docs/1.9.0.1/method/cfdm.Index.get_data.html new file mode 100644 index 0000000000..731cdced06 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.Index.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.get_data

+
+
+Index.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.get_filenames.html b/docs/1.9.0.1/method/cfdm.Index.get_filenames.html new file mode 100644 index 0000000000..023c64df38 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.Index.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.get_filenames

+
+
+Index.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.get_property.html b/docs/1.9.0.1/method/cfdm.Index.get_property.html new file mode 100644 index 0000000000..cce133359e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Index.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.get_property

+
+
+Index.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.has_bounds.html b/docs/1.9.0.1/method/cfdm.Index.has_bounds.html new file mode 100644 index 0000000000..dfa8ebcb16 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.Index.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.has_bounds

+
+
+Index.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.has_data.html b/docs/1.9.0.1/method/cfdm.Index.has_data.html new file mode 100644 index 0000000000..163ac64949 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.Index.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.has_data

+
+
+Index.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.has_property.html b/docs/1.9.0.1/method/cfdm.Index.has_property.html new file mode 100644 index 0000000000..abd4b3366b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.Index.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.has_property

+
+
+Index.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.identities.html b/docs/1.9.0.1/method/cfdm.Index.identities.html new file mode 100644 index 0000000000..31e695979d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.Index.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.identities

+
+
+Index.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.identity.html b/docs/1.9.0.1/method/cfdm.Index.identity.html new file mode 100644 index 0000000000..74ba5ecbe9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.Index.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.identity

+
+
+Index.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.insert_dimension.html b/docs/1.9.0.1/method/cfdm.Index.insert_dimension.html new file mode 100644 index 0000000000..dbe2fc136f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.Index.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.insert_dimension

+
+
+Index.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Index or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_clear_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_clear_dimension_groups.html new file mode 100644 index 0000000000..b64d32f3e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_clear_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Index.nc_clear_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_clear_dimension_groups

+
+
+Index.nc_clear_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF dimension name, with nc_set_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_clear_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_clear_sample_dimension_groups.html new file mode 100644 index 0000000000..acacd481ac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_clear_sample_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Index.nc_clear_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_clear_sample_dimension_groups

+
+
+Index.nc_clear_sample_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / characters +then an empty sequence is returned, signifying the root group.

+

An alternative technique for removing the group structure is to +set the netCDF dimension name, with nc_set_sample_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_clear_variable_groups.html new file mode 100644 index 0000000000..a6f0c7dd30 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Index.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_clear_variable_groups

+
+
+Index.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_del_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_del_dimension.html new file mode 100644 index 0000000000..3514c4cb43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_del_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_del_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_del_dimension

+
+
+Index.nc_del_dimension(default=ValueError())[source]
+

Remove the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_del_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_del_sample_dimension.html new file mode 100644 index 0000000000..efaef530ad --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_del_sample_dimension.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.Index.nc_del_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_del_sample_dimension

+
+
+Index.nc_del_sample_dimension(default=ValueError())[source]
+

Remove the netCDF sample dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF sample dimension name has not been set. If set +to an Exception instance then it will be raised +instead.

+
+
+
+
Returns
+
+
str

The removed netCDF sample dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.Index.nc_del_variable.html new file mode 100644 index 0000000000..a8ff890b69 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_del_variable

+
+
+Index.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_dimension_groups.html new file mode 100644 index 0000000000..3287122f2f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Index.nc_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_dimension_groups

+
+
+Index.nc_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_get_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_get_dimension.html new file mode 100644 index 0000000000..7a110ad875 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_get_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_get_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_get_dimension

+
+
+Index.nc_get_dimension(default=ValueError())[source]
+

Return the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_get_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_get_sample_dimension.html new file mode 100644 index 0000000000..5f640f8610 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_get_sample_dimension.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Index.nc_get_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_get_sample_dimension

+
+
+Index.nc_get_sample_dimension(default=ValueError())[source]
+

Return the netCDF sample dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF sample dimension name has not been set. If set +to an Exception instance then it will be raised +instead.

+
+
+
+
Returns
+
+
str

The netCDF sample dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.Index.nc_get_variable.html new file mode 100644 index 0000000000..db991648c8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.Index.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_get_variable

+
+
+Index.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_has_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_has_dimension.html new file mode 100644 index 0000000000..3665f59b7a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_has_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Index.nc_has_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_has_dimension

+
+
+Index.nc_has_dimension()[source]
+

Whether the netCDF dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_has_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_has_sample_dimension.html new file mode 100644 index 0000000000..00371d6229 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_has_sample_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Index.nc_has_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_has_sample_dimension

+
+
+Index.nc_has_sample_dimension()[source]
+

Whether the netCDF sample dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF sample dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.Index.nc_has_variable.html new file mode 100644 index 0000000000..e08e8fb57d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.Index.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_has_variable

+
+
+Index.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_sample_dimension_groups.html new file mode 100644 index 0000000000..ccc33a225d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_sample_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Index.nc_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_sample_dimension_groups

+
+
+Index.nc_sample_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension.html new file mode 100644 index 0000000000..f20737b7a7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_set_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_dimension

+
+
+Index.nc_set_dimension(value)[source]
+

Set the netCDF dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension_groups.html new file mode 100644 index 0000000000..a42146f222 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Index.nc_set_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_dimension_groups

+
+
+Index.nc_set_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF dimension name, with nc_set_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension.html new file mode 100644 index 0000000000..970457ae2c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_set_sample_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_sample_dimension

+
+
+Index.nc_set_sample_dimension(value)[source]
+

Set the netCDF sample dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF sample dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('time')
+>>> f.nc_has_sample_dimension()
+True
+>>> f.nc_get_sample_dimension()
+'time'
+>>> f.nc_del_sample_dimension()
+'time'
+>>> f.nc_has_sample_dimension()
+False
+>>> print(f.nc_get_sample_dimension(None))
+None
+>>> print(f.nc_del_sample_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension_groups.html new file mode 100644 index 0000000000..0ff2661510 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_sample_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Index.nc_set_sample_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_sample_dimension_groups

+
+
+Index.nc_set_sample_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / characters +then an empty sequence is returned, signifying the root group.

+

An alternative technique for setting the group structure is to set +the netCDF dimension name, with nc_set_sample_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_sample_dimension('element')
+>>> f.nc_sample_dimension_groups()
+()
+>>> f.nc_set_sample_dimension_groups(['forecast', 'model'])
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'/forecast/model/element'
+>>> f.nc_clear_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_sample_dimension()
+'element'
+
+
+
>>> f.nc_set_sample_dimension('/forecast/model/element')
+>>> f.nc_sample_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_sample_dimension('/forecast/model/element')
+'/forecast/model/element'
+>>> f.nc_sample_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_variable.html new file mode 100644 index 0000000000..475200c29a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_variable

+
+
+Index.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_set_variable_groups.html new file mode 100644 index 0000000000..ba1f647211 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.Index.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_set_variable_groups

+
+
+Index.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.Index.nc_variable_groups.html new file mode 100644 index 0000000000..7e1f2acabd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.Index.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.nc_variable_groups

+
+
+Index.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.properties.html b/docs/1.9.0.1/method/cfdm.Index.properties.html new file mode 100644 index 0000000000..818db94872 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.Index.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.properties

+
+
+Index.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.set_data.html b/docs/1.9.0.1/method/cfdm.Index.set_data.html new file mode 100644 index 0000000000..5137a9a9d5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.Index.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.set_data

+
+
+Index.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Index instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Index

If the operation was in-place then None is returned, +otherwise return a new Index instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.set_properties.html b/docs/1.9.0.1/method/cfdm.Index.set_properties.html new file mode 100644 index 0000000000..45f4949755 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.Index.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.set_properties

+
+
+Index.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.set_property.html b/docs/1.9.0.1/method/cfdm.Index.set_property.html new file mode 100644 index 0000000000..af8d876d5b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.Index.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.set_property

+
+
+Index.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.squeeze.html b/docs/1.9.0.1/method/cfdm.Index.squeeze.html new file mode 100644 index 0000000000..fd2f65d160 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.Index.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.squeeze

+
+
+Index.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Index or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.Index()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.transpose.html b/docs/1.9.0.1/method/cfdm.Index.transpose.html new file mode 100644 index 0000000000..eb8ad8b6c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.Index.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.transpose

+
+
+Index.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Index or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.Index.uncompress.html b/docs/1.9.0.1/method/cfdm.Index.uncompress.html new file mode 100644 index 0000000000..5a4ebcff42 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.Index.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.Index.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.Index.uncompress

+
+
+Index.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
Index or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.InteriorRing.__deepcopy__.html new file mode 100644 index 0000000000..ad1ddde881 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.InteriorRing.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.__deepcopy__

+
+
+InteriorRing.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.InteriorRing()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.__getitem__.html b/docs/1.9.0.1/method/cfdm.InteriorRing.__getitem__.html new file mode 100644 index 0000000000..e1787507cd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.InteriorRing.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.__getitem__

+
+
+InteriorRing.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.__repr__.html b/docs/1.9.0.1/method/cfdm.InteriorRing.__repr__.html new file mode 100644 index 0000000000..0d503964d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.InteriorRing.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.__repr__

+
+
+InteriorRing.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.__str__.html b/docs/1.9.0.1/method/cfdm.InteriorRing.__str__.html new file mode 100644 index 0000000000..3f986a5e94 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.InteriorRing.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.__str__

+
+
+InteriorRing.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_method_exclusions.html new file mode 100644 index 0000000000..45bebb543e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing._docstring_method_exclusions

+
+
+InteriorRing._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_package_depth.html new file mode 100644 index 0000000000..117389c8d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.InteriorRing._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing._docstring_package_depth

+
+
+InteriorRing._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_special_substitutions.html new file mode 100644 index 0000000000..8a6158e7d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.InteriorRing._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing._docstring_special_substitutions

+
+
+classmethod InteriorRing._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_substitutions.html new file mode 100644 index 0000000000..6628b75d6c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.InteriorRing._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing._docstring_substitutions

+
+
+InteriorRing._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.apply_masking.html b/docs/1.9.0.1/method/cfdm.InteriorRing.apply_masking.html new file mode 100644 index 0000000000..de90d70584 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.InteriorRing.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.apply_masking

+
+
+InteriorRing.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.clear_properties.html b/docs/1.9.0.1/method/cfdm.InteriorRing.clear_properties.html new file mode 100644 index 0000000000..dbaed21e02 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.clear_properties

+
+
+InteriorRing.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.copy.html b/docs/1.9.0.1/method/cfdm.InteriorRing.copy.html new file mode 100644 index 0000000000..480bead2c8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.InteriorRing.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.copy

+
+
+InteriorRing.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
InteriorRing

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.creation_commands.html b/docs/1.9.0.1/method/cfdm.InteriorRing.creation_commands.html new file mode 100644 index 0000000000..982ae8b61e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.InteriorRing.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.creation_commands

+
+
+InteriorRing.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the InteriorRing instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.InteriorRing(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.InteriorRing()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.del_data.html b/docs/1.9.0.1/method/cfdm.InteriorRing.del_data.html new file mode 100644 index 0000000000..31508b6118 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.InteriorRing.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.del_data

+
+
+InteriorRing.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.del_property.html b/docs/1.9.0.1/method/cfdm.InteriorRing.del_property.html new file mode 100644 index 0000000000..ce1984fcf4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.InteriorRing.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.del_property

+
+
+InteriorRing.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.dump.html b/docs/1.9.0.1/method/cfdm.InteriorRing.dump.html new file mode 100644 index 0000000000..2b89b4013e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.InteriorRing.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.dump

+
+
+InteriorRing.dump(display=True, _key=None, _title=None, _create_title=True, _prefix='', _level=0, _omit_properties=None, _axes=None, _axis_names=None)[source]
+

A full description of the interior ring variable.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.8.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.equals.html b/docs/1.9.0.1/method/cfdm.InteriorRing.equals.html new file mode 100644 index 0000000000..fb0198d50f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.InteriorRing.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.equals

+
+
+InteriorRing.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another InteriorRing +instance, or a subclass of one. If ignore_type is +True then cfdm.InteriorRing(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.get_data.html b/docs/1.9.0.1/method/cfdm.InteriorRing.get_data.html new file mode 100644 index 0000000000..73d73f9458 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.InteriorRing.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.get_data

+
+
+InteriorRing.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.get_filenames.html b/docs/1.9.0.1/method/cfdm.InteriorRing.get_filenames.html new file mode 100644 index 0000000000..9dcbd92429 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.InteriorRing.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.get_filenames

+
+
+InteriorRing.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.get_property.html b/docs/1.9.0.1/method/cfdm.InteriorRing.get_property.html new file mode 100644 index 0000000000..930473014a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.InteriorRing.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.get_property

+
+
+InteriorRing.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.has_bounds.html b/docs/1.9.0.1/method/cfdm.InteriorRing.has_bounds.html new file mode 100644 index 0000000000..0144fd977d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.InteriorRing.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.has_bounds

+
+
+InteriorRing.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.has_data.html b/docs/1.9.0.1/method/cfdm.InteriorRing.has_data.html new file mode 100644 index 0000000000..9fd0a818ea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.InteriorRing.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.has_data

+
+
+InteriorRing.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.has_property.html b/docs/1.9.0.1/method/cfdm.InteriorRing.has_property.html new file mode 100644 index 0000000000..51b3d2c1f9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.InteriorRing.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.has_property

+
+
+InteriorRing.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.identities.html b/docs/1.9.0.1/method/cfdm.InteriorRing.identities.html new file mode 100644 index 0000000000..1f25b0a402 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.InteriorRing.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.identities

+
+
+InteriorRing.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.identity.html b/docs/1.9.0.1/method/cfdm.InteriorRing.identity.html new file mode 100644 index 0000000000..fa19cf438b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.InteriorRing.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.identity

+
+
+InteriorRing.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.insert_dimension.html b/docs/1.9.0.1/method/cfdm.InteriorRing.insert_dimension.html new file mode 100644 index 0000000000..6833417733 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.InteriorRing.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.insert_dimension

+
+
+InteriorRing.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
InteriorRing or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_dimension_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_dimension_groups.html new file mode 100644 index 0000000000..f0393a9390 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_dimension_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.InteriorRing.nc_clear_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_clear_dimension_groups

+
+
+InteriorRing.nc_clear_dimension_groups()[source]
+

Remove the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF dimension name, with nc_set_dimension, +with no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_variable_groups.html new file mode 100644 index 0000000000..2c6410aad5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.InteriorRing.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_clear_variable_groups

+
+
+InteriorRing.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_dimension.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_dimension.html new file mode 100644 index 0000000000..7b33b9971c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.nc_del_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_del_dimension

+
+
+InteriorRing.nc_del_dimension(default=ValueError())[source]
+

Remove the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_variable.html new file mode 100644 index 0000000000..e667c0fb00 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_del_variable

+
+
+InteriorRing.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_dimension_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_dimension_groups.html new file mode 100644 index 0000000000..2132586e75 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_dimension_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.InteriorRing.nc_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_dimension_groups

+
+
+InteriorRing.nc_dimension_groups()[source]
+

Return the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_dimension.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_dimension.html new file mode 100644 index 0000000000..3b22c682e9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.nc_get_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_get_dimension

+
+
+InteriorRing.nc_get_dimension(default=ValueError())[source]
+

Return the netCDF dimension name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF dimension name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF dimension name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_variable.html new file mode 100644 index 0000000000..2df5d8e68b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.InteriorRing.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_get_variable

+
+
+InteriorRing.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_dimension.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_dimension.html new file mode 100644 index 0000000000..64092d1a07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_dimension.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.InteriorRing.nc_has_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_has_dimension

+
+
+InteriorRing.nc_has_dimension()[source]
+

Whether the netCDF dimension name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF dimension name has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_variable.html new file mode 100644 index 0000000000..e8704a1bba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.InteriorRing.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_has_variable

+
+
+InteriorRing.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension.html new file mode 100644 index 0000000000..fb1c5d41db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.nc_set_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_set_dimension

+
+
+InteriorRing.nc_set_dimension(value)[source]
+

Set the netCDF dimension name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF dimension name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_has_dimension()
+True
+>>> f.nc_get_dimension()
+'time'
+>>> f.nc_del_dimension()
+'time'
+>>> f.nc_has_dimension()
+False
+>>> print(f.nc_get_dimension(None))
+None
+>>> print(f.nc_del_dimension(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension_groups.html new file mode 100644 index 0000000000..fbc313608b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_dimension_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.InteriorRing.nc_set_dimension_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_set_dimension_groups

+
+
+InteriorRing.nc_set_dimension_groups(groups)[source]
+

Set the netCDF dimension group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF dimension name, with nc_set_dimension, with +the group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_dimension('time')
+>>> f.nc_dimension_groups()
+()
+>>> f.nc_set_dimension_groups(['forecast', 'model'])
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'/forecast/model/time'
+>>> f.nc_clear_dimension_groups()
+('forecast', 'model')
+>>> f.nc_get_dimension()
+'time'
+
+
+
>>> f.nc_set_dimension('/forecast/model/time')
+>>> f.nc_dimension_groups()
+('forecast', 'model')
+>>> f.nc_del_dimension('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_dimension_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable.html new file mode 100644 index 0000000000..7da806480a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_set_variable

+
+
+InteriorRing.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable_groups.html new file mode 100644 index 0000000000..ffff1382b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.InteriorRing.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_set_variable_groups

+
+
+InteriorRing.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_variable_groups.html new file mode 100644 index 0000000000..88d7730bcf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.InteriorRing.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.nc_variable_groups

+
+
+InteriorRing.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.properties.html b/docs/1.9.0.1/method/cfdm.InteriorRing.properties.html new file mode 100644 index 0000000000..53275e83f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.InteriorRing.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.properties

+
+
+InteriorRing.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.set_data.html b/docs/1.9.0.1/method/cfdm.InteriorRing.set_data.html new file mode 100644 index 0000000000..aea10841bc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.InteriorRing.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.set_data

+
+
+InteriorRing.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified InteriorRing instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or InteriorRing

If the operation was in-place then None is returned, +otherwise return a new InteriorRing instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.set_properties.html b/docs/1.9.0.1/method/cfdm.InteriorRing.set_properties.html new file mode 100644 index 0000000000..d69187285b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.InteriorRing.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.set_properties

+
+
+InteriorRing.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.set_property.html b/docs/1.9.0.1/method/cfdm.InteriorRing.set_property.html new file mode 100644 index 0000000000..3d9d3cad64 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.InteriorRing.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.set_property

+
+
+InteriorRing.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.squeeze.html b/docs/1.9.0.1/method/cfdm.InteriorRing.squeeze.html new file mode 100644 index 0000000000..e3a897f6f6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.InteriorRing.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.squeeze

+
+
+InteriorRing.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
InteriorRing or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.InteriorRing()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.transpose.html b/docs/1.9.0.1/method/cfdm.InteriorRing.transpose.html new file mode 100644 index 0000000000..77dab642d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.InteriorRing.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.transpose

+
+
+InteriorRing.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
InteriorRing or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.InteriorRing.uncompress.html b/docs/1.9.0.1/method/cfdm.InteriorRing.uncompress.html new file mode 100644 index 0000000000..d32dcea513 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.InteriorRing.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.InteriorRing.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.InteriorRing.uncompress

+
+
+InteriorRing.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
InteriorRing or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.List.__deepcopy__.html new file mode 100644 index 0000000000..229d5061e2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.List.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.__deepcopy__

+
+
+List.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.List()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.__getitem__.html b/docs/1.9.0.1/method/cfdm.List.__getitem__.html new file mode 100644 index 0000000000..190b43efa3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.__getitem__.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.List.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.__getitem__

+
+
+List.__getitem__(indices)[source]
+

Return a subspace defined by indices.

+

f.__getitem__(indices) <==> f[indices]

+

Indexing follows rules that are very similar to the numpy +indexing rules, the only differences being:

+
    +
  • An integer index i takes the i-th element but does not +reduce the rank by one.

  • +
  • When two or more dimensions’ indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran). This is the same behaviour as indexing on a +Variable object of the netCDF4 package.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

The subspace.

+
+
+

Examples:

+
>>> f.shape
+(1, 10, 9)
+>>> f[:, :, 1].shape
+(1, 10, 1)
+>>> f[:, 0].shape
+(1, 1, 9)
+>>> f[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> f[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> f[0, :, -2].shape
+(1, 10, 1)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.__repr__.html b/docs/1.9.0.1/method/cfdm.List.__repr__.html new file mode 100644 index 0000000000..68e1c3d98e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.List.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.__repr__

+
+
+List.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.__str__.html b/docs/1.9.0.1/method/cfdm.List.__str__.html new file mode 100644 index 0000000000..2f7a97ecaf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.List.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.__str__

+
+
+List.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.List._docstring_method_exclusions.html new file mode 100644 index 0000000000..413519449c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List._docstring_method_exclusions

+
+
+List._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.List._docstring_package_depth.html new file mode 100644 index 0000000000..215f4f6994 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.List._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List._docstring_package_depth

+
+
+List._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.List._docstring_special_substitutions.html new file mode 100644 index 0000000000..b910c55c9c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.List._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List._docstring_special_substitutions

+
+
+classmethod List._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.List._docstring_substitutions.html new file mode 100644 index 0000000000..64ff10f6ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.List._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List._docstring_substitutions

+
+
+List._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.apply_masking.html b/docs/1.9.0.1/method/cfdm.List.apply_masking.html new file mode 100644 index 0000000000..b62d58fec4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.apply_masking.html @@ -0,0 +1,221 @@ + + + + + + + cfdm.List.apply_masking — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.apply_masking

+
+
+List.apply_masking(*args, **kwargs)[source]
+

Apply masking as defined by the CF conventions.

+

Masking is applied according to any of the following criteria that +are applicable:

+
    +
  • where data elements are equal to the value of the +missing_value property;

  • +
  • where data elements are equal to the value of the _FillValue +property;

  • +
  • where data elements are strictly less than the value of the +valid_min property;

  • +
  • where data elements are strictly greater than the value of the +valid_max property;

  • +
  • where data elements are within the inclusive range specified by +the two values of valid_range property.

  • +
+

If any of the above properties have not been set the no masking is +applied for that method.

+

Elements that are already masked remain so.

+
+

Note

+

If using the apply_masking method on a construct +that has been read from a dataset with the +mask=False parameter to the read function, +then the mask defined in the dataset can only be +recreated if the missing_value, _FillValue, +valid_min, valid_max, and valid_range +properties have not been updated.

+
+
+

New in version (cfdm): 1.8.2

+
+
+

See also

+

Data.apply_masking, read, write

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+

A new instance with masked values, or None if the +operation was in-place.

+
+
+

Examples:

+
>>> print(v.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_v = v.apply_masking()
+>>> print(masked_v.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.clear_properties.html b/docs/1.9.0.1/method/cfdm.List.clear_properties.html new file mode 100644 index 0000000000..98436760a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.clear_properties

+
+
+List.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.copy.html b/docs/1.9.0.1/method/cfdm.List.copy.html new file mode 100644 index 0000000000..2e88de0eb1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.List.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.copy

+
+
+List.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
List

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.creation_commands.html b/docs/1.9.0.1/method/cfdm.List.creation_commands.html new file mode 100644 index 0000000000..791b3e7d58 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.creation_commands.html @@ -0,0 +1,238 @@ + + + + + + + cfdm.List.creation_commands — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.creation_commands

+
+
+List.creation_commands(representative_data=False, namespace=None, indent=0, string=True, name='c', data_name='data', header=True)[source]
+

Return the commands that would create the construct.

+
+

New in version (cfdm): 1.8.7.0

+
+ +
+
Parameters
+
+
representative_data: bool, optional

Return one-line representations of Data instances, +which are not executable code but prevent the data +being converted in its entirety to a string +representation.

+
+
namespace: str, optional

The name space containing classes of the cfdm +package. This is prefixed to the class name in +commands that instantiate instances of cfdm +objects. By default, or if None, the name space is +assumed to be consistent with cfdm being +imported as import cfdm.

+
+
Parameter example:

If cfdm was imported as import cfdm +as xyz then set namespace='xyz'

+
+
Parameter example:

If cfdm was imported as from cfdm +import * then set namespace=''

+
+
+
+
indent: int, optional

Indent each line by this many spaces. By default no +indentation is applied. Ignored if string is +False.

+
+
string: bool, optional

If False then return each command as an element of a +list. By default the commands are concatenated into +a string, with a new line inserted between each +command.

+
+
name: str, optional

The name of the List instance created by the +returned commands.

+
+
Parameter example:

name='var1'

+
+
+
+
data_name: str, optional

The name of the construct’s Data instance created by +the returned commands.

+
+
Parameter example:

name='data1'

+
+
+
+
header: bool, optional

If False then do not output a comment describing the +components.

+
+
+
+
Returns
+
+
str or list

The commands in a string, with a new line inserted +between each command. If string is False then the +separate commands are returned as each element of a +list.

+
+
+
+
+

Examples:

+
>>> x = cfdm.List(
+...     properties={'units': 'Kelvin',
+...                 'standard_name': 'air_temperature'}
+... )
+>>> x.set_data([271.15, 274.15, 280])
+>>> print(x.creation_commands(header=False))
+c = cfdm.List()
+c.set_properties({'units': 'Kelvin', 'standard_name': 'air_temperature'})
+data = cfdm.Data([271.15, 274.15, 280.0], units='Kelvin', dtype='f8')
+c.set_data(data)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.del_data.html b/docs/1.9.0.1/method/cfdm.List.del_data.html new file mode 100644 index 0000000000..85a81d2b05 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.List.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.del_data

+
+
+List.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.del_property.html b/docs/1.9.0.1/method/cfdm.List.del_property.html new file mode 100644 index 0000000000..91e5fcca9f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.List.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.del_property

+
+
+List.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.dump.html b/docs/1.9.0.1/method/cfdm.List.dump.html new file mode 100644 index 0000000000..c642decee4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.dump.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.List.dump — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.dump

+
+
+List.dump(display=True, _key=None, _title=None, _create_title=True, _prefix='', _level=0, _omit_properties=None, _axes=None, _axis_names=None)[source]
+

A full description of the list variable.

+

Returns a description of all properties, including those of +components, and provides selected values of all data arrays.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
display: bool, optional

If False then return the description as a string. By +default the description is printed.

+
+
+
+
Returns
+
+
str or None

The description. If display is True then the +description is printed and None is +returned. Otherwise the description is returned as a +string.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.equals.html b/docs/1.9.0.1/method/cfdm.List.equals.html new file mode 100644 index 0000000000..1608fc0342 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.equals.html @@ -0,0 +1,266 @@ + + + + + + + cfdm.List.equals — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.equals

+
+
+List.equals(**kwargs)[source]
+

Whether two instances are the same.

+

Equality is strict by default. This means that:

+
    +
  • the same descriptive properties must be present, with the +same values and data types, and vector-valued properties +must also have same the size and be element-wise equal (see +the ignore_properties and ignore_data_type parameters), +and

  • +
+
    +
  • if there are data arrays then they must have same shape and +data type, the same missing data mask, and be element-wise +equal (see the ignore_data_type parameter).

  • +
+

Two real numbers x and y are considered equal if +|x-y|<=atol+rtol|y|, where atol (the tolerance on +absolute differences) and rtol (the tolerance on relative +differences) are positive, typically very small numbers. See +the atol and rtol parameters.

+

Any type of object may be tested but, in general, equality is +only possible with another object of the same type, or a +subclass of one. See the ignore_type parameter.

+

Any compression is ignored by default, with only the arrays in +their uncompressed forms being compared. See the +ignore_compression parameter.

+

NetCDF elements, such as netCDF variable and dimension names, +do not constitute part of the CF data model and so are not +checked.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
other:

The object to compare for equality.

+
+
atol: number, optional

The tolerance on absolute differences between real +numbers. The default value is set by the +cfdm.atol function.

+
+
rtol: number, optional

The tolerance on relative differences between real +numbers. The default value is set by the +cfdm.rtol function.

+
+
ignore_fill_value: bool, optional

If True then all _FillValue and missing_value +properties are omitted from the comparison.

+
+
verbose: int or str or None, optional

If an integer from -1 to 3, or an equivalent +string equal ignoring case to one of:

+
    +
  • 'DISABLE' (0)

  • +
  • 'WARNING' (1)

  • +
  • 'INFO' (2)

  • +
  • 'DETAIL' (3)

  • +
  • 'DEBUG' (-1)

  • +
+

set for the duration of the method call only as the +minimum cut-off for the verboseness level of displayed +output (log) messages, regardless of the +globally-configured cfdm.log_level. Note that +increasing numerical value corresponds to increasing +verbosity, with the exception of -1 as a special +case of maximal and extreme verbosity.

+

Otherwise, if None (the default value), output +messages will be shown according to the value of the +cfdm.log_level setting.

+

Overall, the higher a non-negative integer or +equivalent string that is set (up to a maximum of +3/'DETAIL') for increasing verbosity, the more +description that is printed to convey information +about the operation.

+
+
ignore_properties: sequence of str, optional

The names of properties to omit from the +comparison.

+
+
ignore_data_type: bool, optional

If True then ignore the data types in all numerical +comparisons. By default different numerical data types +imply inequality, regardless of whether the elements +are within the tolerance for equality.

+
+
ignore_compression: bool, optional

If False then the compression type and, if applicable, +the underlying compressed arrays must be the same, as +well as the arrays in their uncompressed forms. By +default only the the arrays in their uncompressed +forms are compared.

+
+
ignore_type: bool, optional

Any type of object may be tested but, in general, +equality is only possible with another List +instance, or a subclass of one. If ignore_type is +True then cfdm.List(source=other) is +tested, rather than the other defined by the +other parameter.

+
+
+
+
Returns
+
+
bool

Whether the two instances are equal.

+
+
+
+
+

Examples:

+
>>> x.equals(x)
+True
+>>> x.equals(x.copy())
+True
+>>> x.equals('something else')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.get_data.html b/docs/1.9.0.1/method/cfdm.List.get_data.html new file mode 100644 index 0000000000..8b3f9fecb3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.List.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.get_data

+
+
+List.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.get_filenames.html b/docs/1.9.0.1/method/cfdm.List.get_filenames.html new file mode 100644 index 0000000000..9a084b56ef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.get_filenames.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.List.get_filenames — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.get_filenames

+
+
+List.get_filenames()[source]
+

Return the name of the file or files containing the data.

+
+
Returns
+
+
set The file names in normalised, absolute form. If the

data are in memory then an empty set is returned.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.get_property.html b/docs/1.9.0.1/method/cfdm.List.get_property.html new file mode 100644 index 0000000000..18a3400f07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.List.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.get_property

+
+
+List.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.has_bounds.html b/docs/1.9.0.1/method/cfdm.List.has_bounds.html new file mode 100644 index 0000000000..73bbb9326f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.List.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.has_bounds

+
+
+List.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.has_data.html b/docs/1.9.0.1/method/cfdm.List.has_data.html new file mode 100644 index 0000000000..e0a4ca91e6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.List.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.has_data

+
+
+List.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.has_property.html b/docs/1.9.0.1/method/cfdm.List.has_property.html new file mode 100644 index 0000000000..83a96a76b0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.List.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.has_property

+
+
+List.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.identities.html b/docs/1.9.0.1/method/cfdm.List.identities.html new file mode 100644 index 0000000000..3fc1f528ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.identities.html @@ -0,0 +1,217 @@ + + + + + + + cfdm.List.identities — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.identities

+
+
+List.identities(generator=False, **kwargs)[source]
+

Return all possible identities.

+

The identities comprise:

+
    +
  • The standard_name property.

  • +
  • All properties, preceded by the property name and an equals +e.g. 'long_name=Air temperature'.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identity

+
+
+
Parameters
+
+
generator: bool, optional

If True then return a generator for the identities, +rather than a list.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
kwargs: optional

Additional configuration parameters. Currently +none. Unrecognised parameters are ignored.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
+
+
Returns
+
+
list or generator

The identities.

+
+
+
+
+

Examples:

+
>>> f.properties()
+{'foo': 'bar',
+ 'long_name': 'Air Temperature',
+ 'standard_name': 'air_temperature'}
+>>> f.nc_get_variable()
+'tas'
+>>> f.identities()
+['air_temperature',
+ 'long_name=Air Temperature',
+ 'foo=bar',
+ 'standard_name=air_temperature',
+ 'ncvar%tas']
+>>> for i in f.identities(generator=True):
+...     print(i)
+...
+air_temperature
+long_name=Air Temperature
+foo=bar
+standard_name=air_temperature
+ncvar%tas
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.identity.html b/docs/1.9.0.1/method/cfdm.List.identity.html new file mode 100644 index 0000000000..d3c0b6feb2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.identity.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.List.identity — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.identity

+
+
+List.identity(default='')[source]
+

Return the canonical identity.

+

By default the identity is the first found of the following:

+
    +
  • The standard_name property.

  • +
  • The cf_role property, preceded by 'cf_role='.

  • +
  • The axis property, preceded by 'axis='.

  • +
  • The long_name property, preceded by 'long_name='.

  • +
  • The netCDF variable name, preceded by 'ncvar%'.

  • +
  • The value of the default parameter.

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

identities

+
+
+
Parameters
+
+
default: optional

If no identity can be found then return the value of the +default parameter.

+
+
+
+
Returns
+

The identity.

+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_properties({'foo': 'bar',
+...                   'long_name': 'Air Temperature',
+...                   'standard_name': 'air_temperature'})
+>>> f.nc_set_variable('tas')
+>>> f.identity()
+'air_temperature'
+>>> f.del_property('standard_name')
+'air_temperature'
+>>> f.identity(default='no identity')
+'air_temperature'
+>>> f.identity()
+'long_name=Air Temperature'
+>>> f.del_property('long_name')
+>>> f.identity()
+'ncvar%tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.identity()
+'ncvar%tas'
+>>> f.identity()
+''
+>>> f.identity(default='no identity')
+'no identity'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.insert_dimension.html b/docs/1.9.0.1/method/cfdm.List.insert_dimension.html new file mode 100644 index 0000000000..58552dc082 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.insert_dimension.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.List.insert_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.insert_dimension

+
+
+List.insert_dimension(*args, **kwargs)[source]
+

Expand the shape of the data array.

+

Inserts a new size 1 axis into the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

squeeze, transpose

+
+
+
Parameters
+
+
position: int, optional

Specify the position that the new axis will have in +the data array. By default the new axis has position +0, the slowest varying position. Negative integers +counting from the last position are allowed.

+
+
Parameter example:

position=2

+
+
Parameter example:

position=-1

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
List or None

A new instance with expanded data axes. If the +operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.insert_dimension(position=3).shape
+(19, 73, 96, 1)
+>>> f.insert_dimension(position=-1).shape
+(19, 73, 1, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_clear_variable_groups.html b/docs/1.9.0.1/method/cfdm.List.nc_clear_variable_groups.html new file mode 100644 index 0000000000..177140fa54 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_clear_variable_groups.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.List.nc_clear_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_clear_variable_groups

+
+
+List.nc_clear_variable_groups()[source]
+

Remove the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for removing the group structure is +to set the netCDF variable name, with nc_set_variable, with +no / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The removed group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_del_variable.html b/docs/1.9.0.1/method/cfdm.List.nc_del_variable.html new file mode 100644 index 0000000000..f6a7b17168 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_del_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.List.nc_del_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_del_variable

+
+
+List.nc_del_variable(default=ValueError())[source]
+

Remove the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The removed netCDF variable name.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_get_variable.html b/docs/1.9.0.1/method/cfdm.List.nc_get_variable.html new file mode 100644 index 0000000000..d4c8c24da7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_get_variable.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.List.nc_get_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_get_variable

+
+
+List.nc_get_variable(default=ValueError())[source]
+

Return the netCDF variable name.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +netCDF variable name has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+
+
str

The netCDF variable name. If unset then default is +returned, if provided.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_has_variable.html b/docs/1.9.0.1/method/cfdm.List.nc_has_variable.html new file mode 100644 index 0000000000..d8cfc4ac07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_has_variable.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.List.nc_has_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_has_variable

+
+
+List.nc_has_variable()[source]
+

Whether the netCDF variable name has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the netCDF variable name has been set, otherwise +False.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_set_variable.html b/docs/1.9.0.1/method/cfdm.List.nc_set_variable.html new file mode 100644 index 0000000000..1187322f15 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_set_variable.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.List.nc_set_variable — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_set_variable

+
+
+List.nc_set_variable(value)[source]
+

Set the netCDF variable name.

+

If there are any / (slash) characters in the netCDF name +then these act as delimiters for a group hierarchy. By +default, or if the name starts with a / character and +contains no others, the name is assumed to be in the root +group.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the netCDF variable name.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.nc_set_variable('tas')
+>>> f.nc_has_variable()
+True
+>>> f.nc_get_variable()
+'tas'
+>>> f.nc_del_variable()
+'tas'
+>>> f.nc_has_variable()
+False
+>>> print(f.nc_get_variable(None))
+None
+>>> print(f.nc_del_variable(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_set_variable_groups.html b/docs/1.9.0.1/method/cfdm.List.nc_set_variable_groups.html new file mode 100644 index 0000000000..314bd88657 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_set_variable_groups.html @@ -0,0 +1,210 @@ + + + + + + + cfdm.List.nc_set_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_set_variable_groups

+
+
+List.nc_set_variable_groups(groups)[source]
+

Set the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+

An alternative technique for setting the group structure is to +set the netCDF variable name, with nc_set_variable, with the +group structure delimited by / characters.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Parameters
+
+
groups: sequence of str

The new group structure.

+
+
+
+
Returns
+
+
tuple of str

The group structure prior to being reset.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.nc_variable_groups.html b/docs/1.9.0.1/method/cfdm.List.nc_variable_groups.html new file mode 100644 index 0000000000..fbf77f2279 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.nc_variable_groups.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.List.nc_variable_groups — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.nc_variable_groups

+
+
+List.nc_variable_groups()[source]
+

Return the netCDF variable group hierarchy.

+

The group hierarchy is defined by the netCDF name. Groups are +delimited by / (slash) characters in the netCDF name. The +groups are returned, in hierarchical order, as a sequence of +strings. If the name is not set, or contains no / +characters then an empty sequence is returned, signifying the +root group.

+
+

New in version (cfdm): 1.8.6

+
+ +
+
Returns
+
+
tuple of str

The group structure.

+
+
+
+
+

Examples:

+
>>> f.nc_set_variable('time')
+>>> f.nc_variable_groups()
+()
+>>> f.nc_set_variable_groups(['forecast', 'model'])
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'/forecast/model/time'
+>>> f.nc_clear_variable_groups()
+('forecast', 'model')
+>>> f.nc_get_variable()
+'time'
+
+
+
>>> f.nc_set_variable('/forecast/model/time')
+>>> f.nc_variable_groups()
+('forecast', 'model')
+>>> f.nc_del_variable('/forecast/model/time')
+'/forecast/model/time'
+>>> f.nc_variable_groups()
+()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.properties.html b/docs/1.9.0.1/method/cfdm.List.properties.html new file mode 100644 index 0000000000..e68b676eed --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.List.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.properties

+
+
+List.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.set_data.html b/docs/1.9.0.1/method/cfdm.List.set_data.html new file mode 100644 index 0000000000..57b8296005 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.List.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.set_data

+
+
+List.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified List instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or List

If the operation was in-place then None is returned, +otherwise return a new List instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.set_properties.html b/docs/1.9.0.1/method/cfdm.List.set_properties.html new file mode 100644 index 0000000000..84df967c6a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.List.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.set_properties

+
+
+List.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.set_property.html b/docs/1.9.0.1/method/cfdm.List.set_property.html new file mode 100644 index 0000000000..ad78018071 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.List.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.set_property

+
+
+List.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.squeeze.html b/docs/1.9.0.1/method/cfdm.List.squeeze.html new file mode 100644 index 0000000000..defdcc224b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.squeeze.html @@ -0,0 +1,209 @@ + + + + + + + cfdm.List.squeeze — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.squeeze

+
+
+List.squeeze(*args, **kwargs)[source]
+

Remove size one axes from the data array.

+

By default all size one axes are removed, but particular size +one axes may be selected for removal.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: (sequence of) int, optional

The positions of the size one axes to be removed. By +default all size one axes are removed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
List or None

A new instance with removed size 1 one data axes. If +the operation was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f = cfdm.List()
+>>> d = cfdm.Data(numpy.arange(7008).reshape((1, 73, 1, 96)))
+>>> f.set_data(d)
+>>> f.shape
+(1, 73, 1, 96)
+>>> f.squeeze().shape
+(73, 96)
+>>> f.squeeze(0).shape
+(73, 1, 96)
+>>> f.squeeze([-3, 2]).shape
+(73, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.transpose.html b/docs/1.9.0.1/method/cfdm.List.transpose.html new file mode 100644 index 0000000000..ef33cb316a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.transpose.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.List.transpose — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.transpose

+
+
+List.transpose(*args, **kwargs)[source]
+

Permute the axes of the data array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

insert_dimension, squeeze

+
+
+
Parameters
+
+
axes: (sequence of) int, optional

The new axis order. By default the order is reversed.

+

Each axis is identified by its integer position in the +data. Negative integers counting from the last +position are allowed.

+
+
Parameter example:

axes=0

+
+
Parameter example:

axes=-1

+
+
Parameter example:

axes=[1, -2]

+
+
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
List or None

A new instance with permuted data axes. If the operation +was in-place then None is returned.

+
+
+
+
+

Examples:

+
>>> f.shape
+(19, 73, 96)
+>>> f.transpose().shape
+(96, 73, 19)
+>>> f.transpose([1, 0, 2]).shape
+(73, 19, 96)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.List.uncompress.html b/docs/1.9.0.1/method/cfdm.List.uncompress.html new file mode 100644 index 0000000000..cdfd433f67 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.List.uncompress.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.List.uncompress — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.List.uncompress

+
+
+List.uncompress(*args, **kwargs)[source]
+

Uncompress the construct.

+

Compression saves space by identifying and removing unwanted +missing data. Such compression techniques store the data more +efficiently and result in no precision loss.

+

Whether or not the construct is compressed does not alter its +functionality nor external appearance.

+

A construct that is already uncompressed will be returned +uncompressed.

+

The following type of compression are available:

+
+
    +
  • Ragged arrays for discrete sampling geometries +(DSG). Three different types of ragged array +representation are supported.

  • +
+
    +
  • Compression by gathering.

  • +
+
+
+

New in version (cfdm): 1.7.11

+
+
+
Parameters
+
+
inplace: bool, optional

If True then do the operation in-place and return +None.

+
+
+
+
Returns
+
+
List or None

The uncompressed construct, or None if the operation +was in-place.

+
+
+
+
+

Examples:

+
>>> f.data.get_compression_type()
+'ragged contiguous'
+>>> g = f.uncompress()
+>>> g.data.get_compression_type()
+''
+>>> g.equals(f)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.__getitem__.html new file mode 100644 index 0000000000..51390f138b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.__getitem__.html @@ -0,0 +1,174 @@ + + + + + + + cfdm.NetCDFArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.__getitem__

+
+
+NetCDFArray.__getitem__(indices)[source]
+

Returns a subspace of the array as a numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace must be either Ellipsis or +a sequence that contains an index for each dimension. In the +latter case, each dimension’s index must either be a slice +object or a sequence of two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..d4737032a5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.NetCDFArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray._docstring_method_exclusions

+
+
+NetCDFArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_package_depth.html new file mode 100644 index 0000000000..855c698f65 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.NetCDFArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray._docstring_package_depth

+
+
+NetCDFArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..241dd54cf3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.NetCDFArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray._docstring_special_substitutions

+
+
+classmethod NetCDFArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_substitutions.html new file mode 100644 index 0000000000..c399319cb4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.NetCDFArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray._docstring_substitutions

+
+
+NetCDFArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.close.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.close.html new file mode 100644 index 0000000000..63db58fc7e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.close.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.NetCDFArray.close — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.close

+
+
+NetCDFArray.close()[source]
+

Close the netCDF4.Dataset for the file containing the data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> a.close()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.copy.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.copy.html new file mode 100644 index 0000000000..dfb6f0ade0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.NetCDFArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.copy

+
+
+NetCDFArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
NetCDFArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_compression_type.html new file mode 100644 index 0000000000..17e1f3ce65 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.NetCDFArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_compression_type

+
+
+NetCDFArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_filename.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_filename.html new file mode 100644 index 0000000000..720a99c38f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_filename.html @@ -0,0 +1,164 @@ + + + + + + + cfdm.NetCDFArray.get_filename — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_filename

+
+
+NetCDFArray.get_filename()[source]
+

The name of the netCDF file containing the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> a.get_filename()
+'file.nc'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_group.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_group.html new file mode 100644 index 0000000000..ac2059f48f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_group.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.NetCDFArray.get_group — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_group

+
+
+NetCDFArray.get_group()[source]
+

The netCDF4 group structure of the netCDF variable.

+
+

New in version (cfdm): 1.8.6.0

+
+

Examples:

+
>>> b = a.get_group()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_mask.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_mask.html new file mode 100644 index 0000000000..0963a12993 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_mask.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.NetCDFArray.get_mask — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_mask

+
+
+NetCDFArray.get_mask()[source]
+

The mask of the data array.

+
+

New in version (cfdm): 1.8.2

+
+

Examples:

+
>>> b = a.get_mask()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_ncvar.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_ncvar.html new file mode 100644 index 0000000000..9dd96d8833 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_ncvar.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.NetCDFArray.get_ncvar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_ncvar

+
+
+NetCDFArray.get_ncvar()[source]
+

The name of the netCDF variable containing the array.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> print(a.netcdf)
+'tas'
+>>> print(a.varid)
+None
+
+
+
>>> print(a.netcdf)
+None
+>>> print(a.varid)
+4
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_subspace.html new file mode 100644 index 0000000000..700ad2ba67 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.NetCDFArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_subspace

+
+
+classmethod NetCDFArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.get_varid.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_varid.html new file mode 100644 index 0000000000..0e8a96c17b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.get_varid.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.NetCDFArray.get_varid — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.get_varid

+
+
+NetCDFArray.get_varid()[source]
+

The UNIDATA netCDF interface ID of the array’s variable.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> print(a.netcdf)
+'tas'
+>>> print(a.varid)
+None
+
+
+
>>> print(a.netcdf)
+None
+>>> print(a.varid)
+4
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.open.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.open.html new file mode 100644 index 0000000000..a324fdae8b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.open.html @@ -0,0 +1,171 @@ + + + + + + + cfdm.NetCDFArray.open — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.open

+
+
+NetCDFArray.open()[source]
+

Returns an open netCDF4.Dataset for the array’s file.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+

netCDF4.Dataset

+
+
+

Examples:

+
>>> netcdf = a.open()
+>>> variable = netcdf.variables[a.get_ncvar()]
+>>> variable.getncattr('standard_name')
+'eastward_wind'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NetCDFArray.to_memory.html b/docs/1.9.0.1/method/cfdm.NetCDFArray.to_memory.html new file mode 100644 index 0000000000..137f047fa7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NetCDFArray.to_memory.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.NetCDFArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NetCDFArray.to_memory

+
+
+NetCDFArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
NumpyArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.NumpyArray.__getitem__.html new file mode 100644 index 0000000000..dc6893683b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray.__getitem__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.NumpyArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.__getitem__

+
+
+NumpyArray.__getitem__(indices)[source]
+

Returns a subspace of the array as a numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace must be either Ellipsis +or a sequence that contains an index for each dimension. In +the latter case, each dimension’s index must either be a +slice object or a sequence of two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
+
    +
  • When two or more dimension’s indices are sequences of +integers then these indices work independently along each +dimension (similar to the way vector subscripts work in +Fortran).

  • +
+
+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..7a6a47a24c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.NumpyArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray._docstring_method_exclusions

+
+
+NumpyArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_package_depth.html new file mode 100644 index 0000000000..3ce82c6f72 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.NumpyArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray._docstring_package_depth

+
+
+NumpyArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..101cff7bb5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.NumpyArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray._docstring_special_substitutions

+
+
+classmethod NumpyArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_substitutions.html new file mode 100644 index 0000000000..f19fb29dd4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.NumpyArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray._docstring_substitutions

+
+
+NumpyArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray.copy.html b/docs/1.9.0.1/method/cfdm.NumpyArray.copy.html new file mode 100644 index 0000000000..bfb7a8b98e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.NumpyArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.copy

+
+
+NumpyArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
NumpyArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.NumpyArray.get_compression_type.html new file mode 100644 index 0000000000..49a200e422 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.NumpyArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.get_compression_type

+
+
+NumpyArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.NumpyArray.get_subspace.html new file mode 100644 index 0000000000..06376aeb02 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.NumpyArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.get_subspace

+
+
+classmethod NumpyArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.NumpyArray.to_memory.html b/docs/1.9.0.1/method/cfdm.NumpyArray.to_memory.html new file mode 100644 index 0000000000..b20383e229 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.NumpyArray.to_memory.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.NumpyArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.NumpyArray.to_memory

+
+
+NumpyArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
NumpyArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__array__.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__array__.html new file mode 100644 index 0000000000..dd5e18a533 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedContiguousArray.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.__array__

+
+
+RaggedContiguousArray.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__deepcopy__.html new file mode 100644 index 0000000000..7fbfcde6e3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.RaggedContiguousArray.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.__deepcopy__

+
+
+RaggedContiguousArray.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__getitem__.html new file mode 100644 index 0000000000..015f2bd487 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__getitem__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedContiguousArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.__getitem__

+
+
+RaggedContiguousArray.__getitem__(indices)[source]
+

Returns a subspace of the array defined by the given indices.

+

That is, returns a subspace of the uncompressed data in an +independent numpy array. Note that:

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace are relative to the +uncompressed data and must be either Ellipsis or a sequence that +contains an index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a sequence of +two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__repr__.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__repr__.html new file mode 100644 index 0000000000..be7d383d05 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedContiguousArray.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.__repr__

+
+
+RaggedContiguousArray.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__str__.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__str__.html new file mode 100644 index 0000000000..14595a2966 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedContiguousArray.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.__str__

+
+
+RaggedContiguousArray.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..ac3ebb1e43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.RaggedContiguousArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray._docstring_method_exclusions

+
+
+RaggedContiguousArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_package_depth.html new file mode 100644 index 0000000000..2d7f61818a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.RaggedContiguousArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray._docstring_package_depth

+
+
+RaggedContiguousArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..19cc803cec --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedContiguousArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray._docstring_special_substitutions

+
+
+classmethod RaggedContiguousArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_substitutions.html new file mode 100644 index 0000000000..a2e3d1504d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.RaggedContiguousArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray._docstring_substitutions

+
+
+RaggedContiguousArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.copy.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.copy.html new file mode 100644 index 0000000000..7b7d4988d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedContiguousArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.copy

+
+
+RaggedContiguousArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedContiguousArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_axes.html new file mode 100644 index 0000000000..a8aee063c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_axes.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.RaggedContiguousArray.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.get_compressed_axes

+
+
+RaggedContiguousArray.get_compressed_axes()[source]
+

Return axes that are compressed in the underlying array.

+
+
Returns
+
+
list

The compressed axes described by their integer positions.

+
+
+
+
+

Examples:

+
>>> c.ndim
+4
+>>> c.compressed_array.ndim
+3
+>>> c.compressed_axes()
+[1, 2]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_dimension.html new file mode 100644 index 0000000000..2da94cac77 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compressed_dimension.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.RaggedContiguousArray.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.get_compressed_dimension

+
+
+RaggedContiguousArray.get_compressed_dimension(*default)[source]
+

Returns the compressed dimension’s position in the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_compressed_axearray, get_compressed_axes, +get_compressed_type

+
+
+
Parameters
+
+
default: optional

Return default if the underlying array is not +compressed.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array. If the underlying is not compressed then default +is returned, if provided.

+
+
+
+
+

Examples:

+
>>> i = d.get_compressed_dimension()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compression_type.html new file mode 100644 index 0000000000..6cd7c15b77 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedContiguousArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.get_compression_type

+
+
+RaggedContiguousArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_count.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_count.html new file mode 100644 index 0000000000..76a0aeaaf7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_count.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.RaggedContiguousArray.get_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.get_count

+
+
+RaggedContiguousArray.get_count(default=ValueError())[source]
+

Return the count variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The count variable.

+
+
+

Examples:

+
>>> c = d.get_count()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_subspace.html new file mode 100644 index 0000000000..b7ef601004 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.RaggedContiguousArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.get_subspace

+
+
+classmethod RaggedContiguousArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.source.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.source.html new file mode 100644 index 0000000000..831f435ad9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.source.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.RaggedContiguousArray.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.source

+
+
+RaggedContiguousArray.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set. If set to an Exception instance then +it will be raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> array
+<RaggedContiguousArray(2, 4): >
+>>> array.source()
+<Data(5): [280.0, ..., 279.5]>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.to_memory.html b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.to_memory.html new file mode 100644 index 0000000000..7e3a78baca --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedContiguousArray.to_memory.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedContiguousArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedContiguousArray.to_memory

+
+
+RaggedContiguousArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedContiguousArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__array__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__array__.html new file mode 100644 index 0000000000..98f9e69b6d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedArray.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.__array__

+
+
+RaggedIndexedArray.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__deepcopy__.html new file mode 100644 index 0000000000..296178d4a7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.RaggedIndexedArray.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.__deepcopy__

+
+
+RaggedIndexedArray.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__getitem__.html new file mode 100644 index 0000000000..0ebf2b56cf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__getitem__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.__getitem__

+
+
+RaggedIndexedArray.__getitem__(indices)[source]
+

Returns a subspace of the uncompressed data in a numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace are relative to the +uncompressed data and must be either Ellipsis or a sequence that +contains an index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a sequence of +two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__repr__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__repr__.html new file mode 100644 index 0000000000..2924c5923a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedIndexedArray.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.__repr__

+
+
+RaggedIndexedArray.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__str__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__str__.html new file mode 100644 index 0000000000..fc27a6a39a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedIndexedArray.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.__str__

+
+
+RaggedIndexedArray.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..3bcd54f311 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.RaggedIndexedArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray._docstring_method_exclusions

+
+
+RaggedIndexedArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_package_depth.html new file mode 100644 index 0000000000..ee680d1cb9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.RaggedIndexedArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray._docstring_package_depth

+
+
+RaggedIndexedArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..c638f07b13 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedIndexedArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray._docstring_special_substitutions

+
+
+classmethod RaggedIndexedArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_substitutions.html new file mode 100644 index 0000000000..042a4c9793 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.RaggedIndexedArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray._docstring_substitutions

+
+
+RaggedIndexedArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.copy.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.copy.html new file mode 100644 index 0000000000..33753d738b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.copy

+
+
+RaggedIndexedArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedIndexedArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_axes.html new file mode 100644 index 0000000000..6a654350dd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_axes.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.RaggedIndexedArray.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.get_compressed_axes

+
+
+RaggedIndexedArray.get_compressed_axes()[source]
+

Return axes that are compressed in the underlying array.

+
+
Returns
+
+
list

The compressed axes described by their integer positions.

+
+
+
+
+

Examples:

+
>>> c.ndim
+4
+>>> c.compressed_array.ndim
+3
+>>> c.compressed_axes()
+[1, 2]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_dimension.html new file mode 100644 index 0000000000..de80dca7fc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compressed_dimension.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.RaggedIndexedArray.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.get_compressed_dimension

+
+
+RaggedIndexedArray.get_compressed_dimension(*default)[source]
+

Returns the compressed dimension’s position in the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_compressed_axearray, get_compressed_axes, +get_compressed_type

+
+
+
Parameters
+
+
default: optional

Return default if the underlying array is not +compressed.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array. If the underlying is not compressed then default +is returned, if provided.

+
+
+
+
+

Examples:

+
>>> i = d.get_compressed_dimension()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compression_type.html new file mode 100644 index 0000000000..e1114341f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedIndexedArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.get_compression_type

+
+
+RaggedIndexedArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_index.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_index.html new file mode 100644 index 0000000000..a94a51690c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_index.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.RaggedIndexedArray.get_index — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.get_index

+
+
+RaggedIndexedArray.get_index(default=ValueError())[source]
+

Return the index variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +index variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The index variable.

+
+
+

Examples:

+
>>> i = d.get_index()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_subspace.html new file mode 100644 index 0000000000..6cd1773e82 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.RaggedIndexedArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.get_subspace

+
+
+classmethod RaggedIndexedArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.source.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.source.html new file mode 100644 index 0000000000..6f9ad3cd3c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.source.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.RaggedIndexedArray.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.source

+
+
+RaggedIndexedArray.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set. If set to an Exception instance then +it will be raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> array
+<RaggedContiguousArray(2, 4): >
+>>> array.source()
+<Data(5): [280.0, ..., 279.5]>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.to_memory.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.to_memory.html new file mode 100644 index 0000000000..9aeeb29cae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedArray.to_memory.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedIndexedArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedArray.to_memory

+
+
+RaggedIndexedArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedIndexedArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__array__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__array__.html new file mode 100644 index 0000000000..cca07fd465 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__array__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.__array__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.__array__

+
+
+RaggedIndexedContiguousArray.__array__(*dtype)[source]
+

The numpy array interface.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
numpy.ndarray

An independent numpy array of the data.

+
+
+
+
+

Examples:

+
>>> isinstance(a, Array)
+True
+>>> n = numpy.asanyarray(a)
+>>> isinstance(n, numpy.ndarray)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__deepcopy__.html new file mode 100644 index 0000000000..518f05349d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.__deepcopy__

+
+
+RaggedIndexedContiguousArray.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__getitem__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__getitem__.html new file mode 100644 index 0000000000..81582ad378 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__getitem__.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.__getitem__

+
+
+RaggedIndexedContiguousArray.__getitem__(indices)[source]
+

Returns a subspace of the uncompressed data a numpy array.

+

x.__getitem__(indices) <==> x[indices]

+

The indices that define the subspace are relative to the +uncompressed data and must be either Ellipsis or a sequence that +contains an index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a sequence of +two or more integers.

+

Indexing is similar to numpy indexing. The only difference to +numpy indexing (given the restrictions on the type of indices +allowed) is:

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__repr__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__repr__.html new file mode 100644 index 0000000000..8aa70e4b2d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__repr__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.__repr__

+
+
+RaggedIndexedContiguousArray.__repr__()[source]
+

Called by the repr built-in function.

+

x.__repr__() <==> repr(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__str__.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__str__.html new file mode 100644 index 0000000000..c406888e11 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.__str__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.__str__

+
+
+RaggedIndexedContiguousArray.__str__()[source]
+

Called by the str built-in function.

+

x.__str__() <==> str(x)

+
+

New in version (cfdm): 1.8.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..418861dc25 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions

+
+
+RaggedIndexedContiguousArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth.html new file mode 100644 index 0000000000..a4c8aced80 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray._docstring_package_depth

+
+
+RaggedIndexedContiguousArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..0b7be7a401 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions

+
+
+classmethod RaggedIndexedContiguousArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions.html new file mode 100644 index 0000000000..86cef6fc55 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray._docstring_substitutions

+
+
+RaggedIndexedContiguousArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.copy.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.copy.html new file mode 100644 index 0000000000..4d40796877 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.copy

+
+
+RaggedIndexedContiguousArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedIndexedContiguousArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes.html new file mode 100644 index 0000000000..90360aa4d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_compressed_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_compressed_axes

+
+
+RaggedIndexedContiguousArray.get_compressed_axes()[source]
+

Return axes that are compressed in the underlying array.

+
+
Returns
+
+
list

The compressed axes described by their integer positions.

+
+
+
+
+

Examples:

+
>>> c.ndim
+4
+>>> c.compressed_array.ndim
+3
+>>> c.compressed_axes()
+[1, 2]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension.html new file mode 100644 index 0000000000..f1ad36067e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_compressed_dimension — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_compressed_dimension

+
+
+RaggedIndexedContiguousArray.get_compressed_dimension(*default)[source]
+

Returns the compressed dimension’s position in the array.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_compressed_axearray, get_compressed_axes, +get_compressed_type

+
+
+
Parameters
+
+
default: optional

Return default if the underlying array is not +compressed.

+
+
+
+
Returns
+
+
int

The position of the compressed dimension in the compressed +array. If the underlying is not compressed then default +is returned, if provided.

+
+
+
+
+

Examples:

+
>>> i = d.get_compressed_dimension()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compression_type.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compression_type.html new file mode 100644 index 0000000000..ea63c3edff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_compression_type.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_compression_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_compression_type

+
+
+RaggedIndexedContiguousArray.get_compression_type()[source]
+

Returns the array’s compression type.

+

Specifically, returns the type of compression that has been +applied to the underlying array.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
str

The compression type. An empty string means that no +compression has been applied.

+
+
+
+
+

Examples:

+
>>> a.compression_type
+''
+
+
+
>>> a.compression_type
+'gathered'
+
+
+
>>> a.compression_type
+'ragged contiguous'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_count.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_count.html new file mode 100644 index 0000000000..c513d9d0be --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_count.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_count — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_count

+
+
+RaggedIndexedContiguousArray.get_count(default=ValueError())[source]
+

Return the count variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +count variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The count variable.

+
+
+

Examples:

+
>>> c = d.get_count()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_index.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_index.html new file mode 100644 index 0000000000..fd5950c24d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_index.html @@ -0,0 +1,177 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_index — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_index

+
+
+RaggedIndexedContiguousArray.get_index(default=ValueError())[source]
+

Return the index variable for a compressed array.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +index variable has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The index variable.

+
+
+

Examples:

+
>>> i = d.get_index()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_subspace.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_subspace.html new file mode 100644 index 0000000000..0b7e8c9996 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.get_subspace.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.get_subspace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.get_subspace

+
+
+classmethod RaggedIndexedContiguousArray.get_subspace(array, indices, copy=True)[source]
+

Return a subspace, defined by indices, of a numpy array.

+

Only certain type of indices are allowed. See the indices +parameter for details.

+

Indexing is similar to numpy indexing. Given the restrictions on +the type of indices allowed - see the indicies parameter - the +only difference to numpy indexing is

+
+
    +
  • When two or more dimension’s indices are sequences of integers +then these indices work independently along each dimension +(similar to the way vector subscripts work in Fortran).

  • +
+
+
+

New in version (cfdm): 1.8.7.0

+
+
+
Parameters
+
+
array: numpy.ndarray

The array to be subspaced.

+
+
indices:

The indices that define the subspace.

+

Must be either Ellipsis or a sequence that contains an +index for each dimension. In the latter case, each +dimension’s index must either be a slice object or a +sequence of two or more integers.

+
+
+
Parameter example:

indices=Ellipsis

+
+
Parameter example:

indices=[[5, 7, 8]]

+
+
Parameter example:

indices=[slice(4, 7)]

+
+
Parameter example:

indices=[slice(None), [5, 7, 8]]

+
+
Parameter example:

indices=[[2, 5, 6], slice(15, 4, -2), [8, 7, 5]]

+
+
+
+
+
copy: bool

If False then the returned subspace may (or may not) be +independent of the input array. By default the returned +subspace is independent of the input array.

+
+
+
+
Returns
+

numpy.ndarray

+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.source.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.source.html new file mode 100644 index 0000000000..fc81589bb6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.source.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.source

+
+
+RaggedIndexedContiguousArray.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set. If set to an Exception instance then +it will be raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> array
+<RaggedContiguousArray(2, 4): >
+>>> array.source()
+<Data(5): [280.0, ..., 279.5]>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.to_memory.html b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.to_memory.html new file mode 100644 index 0000000000..b8aeb84027 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.RaggedIndexedContiguousArray.to_memory.html @@ -0,0 +1,172 @@ + + + + + + + cfdm.RaggedIndexedContiguousArray.to_memory — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.RaggedIndexedContiguousArray.to_memory

+
+
+RaggedIndexedContiguousArray.to_memory()[source]
+

Bring an array on disk into memory and retain it there.

+

There is no change to an array that is already in memory.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
RaggedIndexedContiguousArray

The array that is stored in memory.

+
+
+
+
+

Examples:

+
>>> b = a.to_memory()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Array.__deepcopy__.html new file mode 100644 index 0000000000..e8dbd582bf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array.__deepcopy__.html @@ -0,0 +1,168 @@ + + + + + + + cfdm.core.Array.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.__deepcopy__

+
+
+Array.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> y = copy.deepcopy(x)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Array._docstring_method_exclusions.html new file mode 100644 index 0000000000..5e6cfa79d6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Array._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array._docstring_method_exclusions

+
+
+Array._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Array._docstring_package_depth.html new file mode 100644 index 0000000000..853ef2fd01 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Array._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array._docstring_package_depth

+
+
+Array._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Array._docstring_special_substitutions.html new file mode 100644 index 0000000000..8f73bf4756 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Array._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array._docstring_special_substitutions

+
+
+classmethod Array._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Array._docstring_substitutions.html new file mode 100644 index 0000000000..88a412760f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Array._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array._docstring_substitutions

+
+
+Array._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Array.copy.html b/docs/1.9.0.1/method/cfdm.core.Array.copy.html new file mode 100644 index 0000000000..2bc451f68f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Array.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.Array.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Array.copy

+
+
+Array.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Array

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.__deepcopy__.html new file mode 100644 index 0000000000..9d70ff3dce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.__deepcopy__

+
+
+AuxiliaryCoordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions.html new file mode 100644 index 0000000000..364dc74345 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions

+
+
+AuxiliaryCoordinate._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth.html new file mode 100644 index 0000000000..b24f4b8347 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate._docstring_package_depth

+
+
+AuxiliaryCoordinate._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions.html new file mode 100644 index 0000000000..7931df0299 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions

+
+
+classmethod AuxiliaryCoordinate._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions.html new file mode 100644 index 0000000000..8f3da20685 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate._docstring_substitutions

+
+
+AuxiliaryCoordinate._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.clear_properties.html new file mode 100644 index 0000000000..e52356f66d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.clear_properties

+
+
+AuxiliaryCoordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.copy.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.copy.html new file mode 100644 index 0000000000..f816591dc6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.copy

+
+
+AuxiliaryCoordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
AuxiliaryCoordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_bounds.html new file mode 100644 index 0000000000..33ec488d42 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_bounds

+
+
+AuxiliaryCoordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_climatology.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_climatology.html new file mode 100644 index 0000000000..5824ba28db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_climatology.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_climatology

+
+
+AuxiliaryCoordinate.del_climatology(default=ValueError())[source]
+

Remove the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed climatology value.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_data.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_data.html new file mode 100644 index 0000000000..0b7450389f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_data

+
+
+AuxiliaryCoordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_geometry.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_geometry.html new file mode 100644 index 0000000000..1e9bb44f3a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_geometry

+
+
+AuxiliaryCoordinate.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_interior_ring.html new file mode 100644 index 0000000000..c5d5f08584 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_interior_ring

+
+
+AuxiliaryCoordinate.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_property.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_property.html new file mode 100644 index 0000000000..192a245287 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.del_property

+
+
+AuxiliaryCoordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_bounds.html new file mode 100644 index 0000000000..f27a8799d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_bounds.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_bounds

+
+
+AuxiliaryCoordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_climatology.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_climatology.html new file mode 100644 index 0000000000..b127e2984d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_climatology.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_climatology

+
+
+AuxiliaryCoordinate.get_climatology(default=ValueError())[source]
+

Return the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

str

+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_data.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_data.html new file mode 100644 index 0000000000..502c0fd5d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_data

+
+
+AuxiliaryCoordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_geometry.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_geometry.html new file mode 100644 index 0000000000..e1e836bd17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_geometry

+
+
+AuxiliaryCoordinate.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_interior_ring.html new file mode 100644 index 0000000000..dcefb6a621 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_interior_ring

+
+
+AuxiliaryCoordinate.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_property.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_property.html new file mode 100644 index 0000000000..ef195acdee --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.get_property

+
+
+AuxiliaryCoordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_bounds.html new file mode 100644 index 0000000000..d7bdba465a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.has_bounds

+
+
+AuxiliaryCoordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_data.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_data.html new file mode 100644 index 0000000000..6562b00225 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.has_data

+
+
+AuxiliaryCoordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_geometry.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_geometry.html new file mode 100644 index 0000000000..4159978b07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.has_geometry

+
+
+AuxiliaryCoordinate.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_interior_ring.html new file mode 100644 index 0000000000..1630393b79 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.has_interior_ring

+
+
+AuxiliaryCoordinate.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_property.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_property.html new file mode 100644 index 0000000000..1d729f609a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.has_property

+
+
+AuxiliaryCoordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.is_climatology.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.is_climatology.html new file mode 100644 index 0000000000..e0fae19f96 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.is_climatology.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.is_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.is_climatology

+
+
+AuxiliaryCoordinate.is_climatology()[source]
+

True if the coordinates are climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Returns
+
+
bool

Whether or not the coordinates are climatological.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.properties.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.properties.html new file mode 100644 index 0000000000..82639145b6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.properties

+
+
+AuxiliaryCoordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_bounds.html new file mode 100644 index 0000000000..ccd2b1c437 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_bounds

+
+
+AuxiliaryCoordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_climatology.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_climatology.html new file mode 100644 index 0000000000..f98f193649 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_climatology.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_climatology

+
+
+AuxiliaryCoordinate.set_climatology(climatology)[source]
+

Set whether or not coordinates are climatological.

+

Only coordinate constructs with units of reference time (or unset +units) can be set as climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
climatology: bool

Whether or not the coordinates are climatological.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_data.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_data.html new file mode 100644 index 0000000000..1f39c2fa70 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_data

+
+
+AuxiliaryCoordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified AuxiliaryCoordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or AuxiliaryCoordinate

If the operation was in-place then None is returned, +otherwise return a new AuxiliaryCoordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_geometry.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_geometry.html new file mode 100644 index 0000000000..a333feaa53 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_geometry

+
+
+AuxiliaryCoordinate.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_interior_ring.html new file mode 100644 index 0000000000..8fd879983e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_interior_ring

+
+
+AuxiliaryCoordinate.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.AuxiliaryCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_properties.html new file mode 100644 index 0000000000..caec34243f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_properties

+
+
+AuxiliaryCoordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_property.html b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_property.html new file mode 100644 index 0000000000..36b7661a6f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.AuxiliaryCoordinate.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.AuxiliaryCoordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.AuxiliaryCoordinate.set_property

+
+
+AuxiliaryCoordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.AuxiliaryCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Bounds.__deepcopy__.html new file mode 100644 index 0000000000..22ec05e92d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Bounds.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.__deepcopy__

+
+
+Bounds.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Bounds()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.Bounds.clear_properties.html new file mode 100644 index 0000000000..c06d1c6a41 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Bounds.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.clear_properties

+
+
+Bounds.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.copy.html b/docs/1.9.0.1/method/cfdm.core.Bounds.copy.html new file mode 100644 index 0000000000..1ffa27a21f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.Bounds.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.copy

+
+
+Bounds.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Bounds

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.del_data.html b/docs/1.9.0.1/method/cfdm.core.Bounds.del_data.html new file mode 100644 index 0000000000..ce0f9c3c51 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.Bounds.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.del_data

+
+
+Bounds.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.del_property.html b/docs/1.9.0.1/method/cfdm.core.Bounds.del_property.html new file mode 100644 index 0000000000..e9d3cf8f0d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Bounds.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.del_property

+
+
+Bounds.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.get_data.html b/docs/1.9.0.1/method/cfdm.core.Bounds.get_data.html new file mode 100644 index 0000000000..28288aaf88 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.Bounds.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.get_data

+
+
+Bounds.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.get_property.html b/docs/1.9.0.1/method/cfdm.core.Bounds.get_property.html new file mode 100644 index 0000000000..ef92bb5070 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Bounds.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.get_property

+
+
+Bounds.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.Bounds.has_bounds.html new file mode 100644 index 0000000000..14253142f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.Bounds.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.has_bounds

+
+
+Bounds.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.has_data.html b/docs/1.9.0.1/method/cfdm.core.Bounds.has_data.html new file mode 100644 index 0000000000..d51dccc58e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Bounds.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.has_data

+
+
+Bounds.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.has_property.html b/docs/1.9.0.1/method/cfdm.core.Bounds.has_property.html new file mode 100644 index 0000000000..e4261cac8b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Bounds.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.has_property

+
+
+Bounds.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.properties.html b/docs/1.9.0.1/method/cfdm.core.Bounds.properties.html new file mode 100644 index 0000000000..08a24c1061 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Bounds.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.properties

+
+
+Bounds.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.set_data.html b/docs/1.9.0.1/method/cfdm.core.Bounds.set_data.html new file mode 100644 index 0000000000..4ab985ff2d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.Bounds.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.set_data

+
+
+Bounds.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Bounds instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Bounds

If the operation was in-place then None is returned, +otherwise return a new Bounds instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.set_properties.html b/docs/1.9.0.1/method/cfdm.core.Bounds.set_properties.html new file mode 100644 index 0000000000..b08b079eff --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Bounds.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.set_properties

+
+
+Bounds.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Bounds.set_property.html b/docs/1.9.0.1/method/cfdm.core.Bounds.set_property.html new file mode 100644 index 0000000000..554247281a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Bounds.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Bounds.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Bounds.set_property

+
+
+Bounds.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Bounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.__deepcopy__.html new file mode 100644 index 0000000000..a31cd0e349 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.CellMeasure.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.__deepcopy__

+
+
+CellMeasure.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.CellMeasure()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_method_exclusions.html new file mode 100644 index 0000000000..aae5878e53 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CellMeasure._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure._docstring_method_exclusions

+
+
+CellMeasure._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_package_depth.html new file mode 100644 index 0000000000..0d089aeaf2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.CellMeasure._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure._docstring_package_depth

+
+
+CellMeasure._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_special_substitutions.html new file mode 100644 index 0000000000..eece6eee26 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CellMeasure._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure._docstring_special_substitutions

+
+
+classmethod CellMeasure._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_substitutions.html new file mode 100644 index 0000000000..649052f37d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CellMeasure._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure._docstring_substitutions

+
+
+CellMeasure._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.clear_properties.html new file mode 100644 index 0000000000..a12726e13e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CellMeasure.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.clear_properties

+
+
+CellMeasure.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.copy.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.copy.html new file mode 100644 index 0000000000..5b4986c302 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.CellMeasure.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.copy

+
+
+CellMeasure.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
CellMeasure

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_data.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_data.html new file mode 100644 index 0000000000..160a8199c8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.CellMeasure.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.del_data

+
+
+CellMeasure.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_measure.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_measure.html new file mode 100644 index 0000000000..543272e45a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_measure.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.CellMeasure.del_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.del_measure

+
+
+CellMeasure.del_measure(default=ValueError())[source]
+

Remove the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the measure +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed measure.

+
+
+

Examples:

+
>>> c = cfdm.core.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_property.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_property.html new file mode 100644 index 0000000000..2b6c8a91f5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.CellMeasure.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.del_property

+
+
+CellMeasure.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_data.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_data.html new file mode 100644 index 0000000000..c18c70b693 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.CellMeasure.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.get_data

+
+
+CellMeasure.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_measure.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_measure.html new file mode 100644 index 0000000000..bda24e92ac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_measure.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.CellMeasure.get_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.get_measure

+
+
+CellMeasure.get_measure(default=ValueError())[source]
+

Return the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the measure +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the measure.

+
+
+

Examples:

+
>>> c = cfdm.core.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_property.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_property.html new file mode 100644 index 0000000000..d563c38fa3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.CellMeasure.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.get_property

+
+
+CellMeasure.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_bounds.html new file mode 100644 index 0000000000..e192273bd8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.CellMeasure.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.has_bounds

+
+
+CellMeasure.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_data.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_data.html new file mode 100644 index 0000000000..faf3bb72b8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CellMeasure.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.has_data

+
+
+CellMeasure.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_measure.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_measure.html new file mode 100644 index 0000000000..ccfc9a3df0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_measure.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.CellMeasure.has_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.has_measure

+
+
+CellMeasure.has_measure()[source]
+

Whether the measure has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the measure has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_property.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_property.html new file mode 100644 index 0000000000..c074bafa64 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.CellMeasure.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.has_property

+
+
+CellMeasure.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.properties.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.properties.html new file mode 100644 index 0000000000..cc6e64506d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.CellMeasure.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.properties

+
+
+CellMeasure.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_data.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_data.html new file mode 100644 index 0000000000..bbdbb9cf6a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.CellMeasure.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.set_data

+
+
+CellMeasure.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified CellMeasure instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or CellMeasure

If the operation was in-place then None is returned, +otherwise return a new CellMeasure instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_measure.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_measure.html new file mode 100644 index 0000000000..8cf7494f27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_measure.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.CellMeasure.set_measure — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.set_measure

+
+
+CellMeasure.set_measure(measure)[source]
+

Set the measure.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
measure: str

The value for the measure.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.CellMeasure()
+>>> c.set_measure('area')
+>>> c.has_measure()
+True
+>>> c.get_measure()
+'area'
+>>> c.del_measure()
+'area'
+>>> c.has_measure()
+False
+>>> print(c.del_measure(None))
+None
+>>> print(c.get_measure(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_properties.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_properties.html new file mode 100644 index 0000000000..932a0f237a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CellMeasure.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.set_properties

+
+
+CellMeasure.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_property.html b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_property.html new file mode 100644 index 0000000000..a251f76da2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMeasure.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.CellMeasure.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMeasure.set_property

+
+
+CellMeasure.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.CellMeasure()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.__deepcopy__.html new file mode 100644 index 0000000000..e66da539c2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.CellMethod.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.__deepcopy__

+
+
+CellMethod.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.CellMethod()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_method_exclusions.html new file mode 100644 index 0000000000..6961511311 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CellMethod._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod._docstring_method_exclusions

+
+
+CellMethod._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_package_depth.html new file mode 100644 index 0000000000..242b16b103 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.CellMethod._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod._docstring_package_depth

+
+
+CellMethod._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_special_substitutions.html new file mode 100644 index 0000000000..132c97bc33 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CellMethod._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod._docstring_special_substitutions

+
+
+classmethod CellMethod._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_substitutions.html new file mode 100644 index 0000000000..dae04012f0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CellMethod._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod._docstring_substitutions

+
+
+CellMethod._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.copy.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.copy.html new file mode 100644 index 0000000000..52f014b7b5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CellMethod.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.copy

+
+
+CellMethod.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CellMethod

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CellMethod()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.del_axes.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_axes.html new file mode 100644 index 0000000000..58bb98f133 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_axes.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CellMethod.del_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.del_axes

+
+
+CellMethod.del_axes(default=ValueError())[source]
+

Remove the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_axes, has_axes, set_axes

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if axes have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed axes, identified by domain axis construct key +or standard name.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.del_method.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_method.html new file mode 100644 index 0000000000..5c7d0e2f23 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_method.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.CellMethod.del_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.del_method

+
+
+CellMethod.del_method(default=ValueError())[source]
+

Remove the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the method +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed method.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+('time',)
+>>> c.del_method()
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.del_qualifier.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_qualifier.html new file mode 100644 index 0000000000..46dcd74e07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.del_qualifier.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CellMethod.del_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.del_qualifier

+
+
+CellMethod.del_qualifier(qualifier, default=ValueError())[source]
+

Remove a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier:

The name of the qualifier to be removed.

+
+
Parameter example:

qualifier='where'

+
+
+
+
default: optional

Return the value of the default parameter if the +qualifier has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed qualifier.

+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where', 'no qualifier')
+'land'
+>>> c.del_qualifier('where')
+'land'
+>>> c.get_qualifier('where')
+ValueError: 'CellMethod' has no 'where' qualifier
+>>> c.del_qualifier('where', 'no qualifier')
+'no qualifier'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.get_axes.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_axes.html new file mode 100644 index 0000000000..761375d6dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_axes.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CellMethod.get_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.get_axes

+
+
+CellMethod.get_axes(default=ValueError())[source]
+

Return the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, has_axes, set_axes

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if axes have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The axes.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.get_method.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_method.html new file mode 100644 index 0000000000..9399f3765a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_method.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CellMethod.get_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.get_method

+
+
+CellMethod.get_method(default=ValueError())[source]
+

Return the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the method +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The method.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.get_qualifier.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_qualifier.html new file mode 100644 index 0000000000..17cd3be76c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.get_qualifier.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CellMethod.get_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.get_qualifier

+
+
+CellMethod.get_qualifier(qualifier, default=ValueError())[source]
+

Return a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier:

The name of the qualifier to be returned.

+
+
Parameter example:

qualifier='where'

+
+
+
+
default: optional

Return the value of the default parameter if the +qualifier has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the qualifier.

+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where', 'no qualifier')
+'land'
+>>> c.del_qualifier('where')
+'land'
+>>> c.get_qualifier('where')
+ValueError: 'CellMethod' has no 'where' qualifier
+>>> c.get_qualifier('where', 'no qualifier')
+'no qualifier'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.has_axes.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_axes.html new file mode 100644 index 0000000000..f026d06dad --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_axes.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.CellMethod.has_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.has_axes

+
+
+CellMethod.has_axes()[source]
+

Whether the axes of the cell method have been set.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, get_axes, set_axes

+
+
+
Returns
+
+
bool

True if the axes have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.has_method.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_method.html new file mode 100644 index 0000000000..f4cfeb0786 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_method.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.CellMethod.has_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.has_method

+
+
+CellMethod.has_method()[source]
+

Whether the method of the cell method has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if the method has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.has_qualifier.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_qualifier.html new file mode 100644 index 0000000000..a5962870fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.has_qualifier.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.CellMethod.has_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.has_qualifier

+
+
+CellMethod.has_qualifier(qualifier)[source]
+

Whether a qualifier of the cell method has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier: str

The name of the qualifier.

+
+
+
+
Returns
+
+
bool

True if the qualifier has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.has_qualifier('where')
+True
+>>> c.del_qualifier('where')
+'land'
+>>> c.has_qualifier('where')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.qualifiers.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.qualifiers.html new file mode 100644 index 0000000000..96bac90ed3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.qualifiers.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CellMethod.qualifiers — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.qualifiers

+
+
+CellMethod.qualifiers()[source]
+

Return all qualifiers of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The qualifiers.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.qualifiers()
+{'where': 'land'}
+>>> c.del_qualifier('where')
+'land'
+>>> c.qualifiers()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.set_axes.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_axes.html new file mode 100644 index 0000000000..2ba0a59236 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_axes.html @@ -0,0 +1,216 @@ + + + + + + + cfdm.core.CellMethod.set_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.set_axes

+
+
+CellMethod.set_axes(value)[source]
+

Set the axes of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_axes, get_axes, has_axes

+
+
+
Parameters
+
+
value: (sequence of) str

The axes, specified either by the construct identifiers of +domain axis constructs, standard names, or the special +string 'area'.

+
+
Parameter example:

axes='domainaxis0'

+
+
Parameter example:

axes='time'

+
+
Parameter example:

axes='area'

+
+
Parameter example:

axes=['domainaxis0', 'domainaxis2']

+
+
Parameter example:

axes=['time', 'area']

+
+
Parameter example:

axes=['domainaxis0', 'time']

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_axes('domainaxis1')
+>>> c.has_axes()
+True
+>>> c.get_axes()
+('domainaxis1',)
+>>> c.del_axes()
+('domainaxis1',)
+>>> c.has_axes()
+False
+>>> c.get_axes('NO AXES')
+'NO AXES'
+>>> c.del_axes('NO AXES')
+'NO AXES'
+
+
+
>>> c.set_axes(['domainaxis1', 'domainaxis0'])
+
+
+
>>> c.set_axes(['time', 'domainaxis0'])
+
+
+
>>> c.set_axes('time')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.set_method.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_method.html new file mode 100644 index 0000000000..9ed00fa2dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_method.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.CellMethod.set_method — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.set_method

+
+
+CellMethod.set_method(value)[source]
+

Set the method of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
value: str

The value for the method.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_method('minimum')
+>>> c.has_method()
+True
+>>> c.get_method()
+'minimum'
+>>> c.del_method()
+'minimum'
+>>> c.has_method()
+False
+>>> c.get_method('NO METHOD')
+'NO METHOD'
+>>> c.del_method('NO METHOD')
+'NO METHOD'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CellMethod.set_qualifier.html b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_qualifier.html new file mode 100644 index 0000000000..0762822add --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CellMethod.set_qualifier.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.CellMethod.set_qualifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CellMethod.set_qualifier

+
+
+CellMethod.set_qualifier(qualifier, value)[source]
+

Set a qualifier of the cell method.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
qualifier: str

The name of the qualifier to be set.

+
+
value:

The value for the qualifier.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.CellMethod()
+>>> c.set_qualifier('where', 'land')
+>>> c.get_qualifier('where')
+'land'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__call__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__call__.html new file mode 100644 index 0000000000..273a3fed7e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__call__.html @@ -0,0 +1,146 @@ + + + + + + + cfdm.core.Constructs.__call__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__call__

+
+
+Constructs.__call__(**kwargs)
+

Call self as a function.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__contains__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__contains__.html new file mode 100644 index 0000000000..0aa6d7f803 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__contains__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.core.Constructs.__contains__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__contains__

+
+
+Constructs.__contains__(key)[source]
+

Implements membership test operators for construct keys.

+

x.__contains__(y) <==> y in x

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__copy__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__copy__.html new file mode 100644 index 0000000000..fc4f1c8a48 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__copy__.html @@ -0,0 +1,159 @@ + + + + + + + cfdm.core.Constructs.__copy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__copy__

+
+
+Constructs.__copy__()[source]
+

Called by the copy.copy standard library function.

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__deepcopy__.html new file mode 100644 index 0000000000..0749b5bf9a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__deepcopy__.html @@ -0,0 +1,159 @@ + + + + + + + cfdm.core.Constructs.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__deepcopy__

+
+
+Constructs.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy standard library function.

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__getitem__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__getitem__.html new file mode 100644 index 0000000000..b8b1749685 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__getitem__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.core.Constructs.__getitem__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__getitem__

+
+
+Constructs.__getitem__(key)[source]
+

Return a construct with the given key.

+

x.__getitem__(y) <==> x[y]

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__iter__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__iter__.html new file mode 100644 index 0000000000..fab7a82de4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__iter__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.core.Constructs.__iter__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__iter__

+
+
+Constructs.__iter__()[source]
+

Called when an iterator is required.

+

x.__iter__() <==> iter(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.__len__.html b/docs/1.9.0.1/method/cfdm.core.Constructs.__len__.html new file mode 100644 index 0000000000..dc95eee6d5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.__len__.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.core.Constructs.__len__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.__len__

+
+
+Constructs.__len__()[source]
+

Return the number of constructs.

+

x.__len__() <==> len(x)

+
+

New in version (cfdm): 1.7.0

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_method_exclusions.html new file mode 100644 index 0000000000..b36fe74e7d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Constructs._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs._docstring_method_exclusions

+
+
+Constructs._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_package_depth.html new file mode 100644 index 0000000000..0caf27fa1b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Constructs._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs._docstring_package_depth

+
+
+Constructs._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_special_substitutions.html new file mode 100644 index 0000000000..9c2616d37a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Constructs._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs._docstring_special_substitutions

+
+
+classmethod Constructs._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_substitutions.html new file mode 100644 index 0000000000..337afd3442 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Constructs._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs._docstring_substitutions

+
+
+Constructs._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.construct_type.html b/docs/1.9.0.1/method/cfdm.core.Constructs.construct_type.html new file mode 100644 index 0000000000..f2a78fa581 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.construct_type.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.Constructs.construct_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.construct_type

+
+
+Constructs.construct_type(key)[source]
+

Return the type of a construct for a given key.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

construct_types

+
+
+
Parameters
+
+
key: str

A construct identifier.

+
+
+
+
Returns
+
+
str or None

The construct type, or None if the key is not +present.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.construct_types.html b/docs/1.9.0.1/method/cfdm.core.Constructs.construct_types.html new file mode 100644 index 0000000000..d567982c36 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.construct_types.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.Constructs.construct_types — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.construct_types

+
+
+Constructs.construct_types()[source]
+

Return all of the construct types for all keys.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

construct_type

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.copy.html b/docs/1.9.0.1/method/cfdm.core.Constructs.copy.html new file mode 100644 index 0000000000..28d8430cdc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.copy.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.Constructs.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.copy

+
+
+Constructs.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data contained in the +metadata constructs. By default such data are copied.

+
+
+
+
Returns
+
+
Constructs

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> k = c.copy()
+>>> k = c.copy(data=False)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.data_axes.html b/docs/1.9.0.1/method/cfdm.core.Constructs.data_axes.html new file mode 100644 index 0000000000..17c006466a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.data_axes.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.Constructs.data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.data_axes

+
+
+Constructs.data_axes()[source]
+

Returns the axes spanned by the data.

+

Specifically, returns the domain axis constructs spanned by +metadata construct data.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
dict

The keys of the domain axes constructs spanned by +metadata construct data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> print(c)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> c.data_axes()
+{'dimensioncoordinate0': ('domainaxis0',),
+ 'dimensioncoordinate1': ('domainaxis1',),
+ 'dimensioncoordinate2': ('domainaxis2',)}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.filter_by_type.html b/docs/1.9.0.1/method/cfdm.core.Constructs.filter_by_type.html new file mode 100644 index 0000000000..029973e757 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.filter_by_type.html @@ -0,0 +1,241 @@ + + + + + + + cfdm.core.Constructs.filter_by_type — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.filter_by_type

+
+
+Constructs.filter_by_type(*types, todict=True, cached=None)[source]
+

Select metadata constructs by type.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
types: optional

Select constructs that have are of any of the given +types.

+

A type is specified by one of the following strings:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

type

Construct selected

'domain_ancillary'

Domain ancillary

'dimension_coordinate'

Dimension coordinate

'domain_axis'

Domain axis

'auxiliary_coordinate'

Auxiliary coordinate

'cell_measure'

Cell measure

'coordinate_reference'

Coordinate reference

'cell_method'

Cell method

'field_ancillary'

Field ancillary

+

If no types are provided then all constructs are +selected.

+
+
+
+
Parameters
+
+
todict: bool, optional

If True then return a dictionary of constructs keyed +by their construct identifiers, instead of a +Constructs object. This is a faster option.

+
+
cached: optional

If any value other than None then return cached +without selecting any constructs.

+
+
+
+
Returns
+
+
Constructs or dict

The selected constructs and their construct keys.

+
+
+
+
+

Examples:

+

Select dimension coordinate constructs:

+
>>> f = cfdm.core.example_field(1)
+>>> c = f.constructs
+>>> d = c.filter_by_type('dimension_coordinate')
+>>> d
+<Constructs: dimension_coordinate(4)>
+
+
+

Select dimension coordinate and field ancillary constructs:

+
>>> k = c.filter_by_type(
+...     'dimension_coordinate', 'field_ancillary')
+>>> k
+<Constructs: dimension_coordinate(4), field_ancillary(1)>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.get.html b/docs/1.9.0.1/method/cfdm.core.Constructs.get.html new file mode 100644 index 0000000000..55a4f52c67 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.get.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.Constructs.get — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.get

+
+
+Constructs.get(key, default=None)[source]
+

Returns the construct for the key, else default.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

items, keys, values

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.get_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Constructs.get_data_axes.html new file mode 100644 index 0000000000..741c229bdd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.get_data_axes.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Constructs.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.get_data_axes

+
+
+Constructs.get_data_axes(key, default=ValueError())[source]
+

Return the keys of the axes spanned by a construct’s data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the data.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.items.html b/docs/1.9.0.1/method/cfdm.core.Constructs.items.html new file mode 100644 index 0000000000..fc08eb1a15 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.items.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Constructs.items — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.items

+
+
+Constructs.items()[source]
+

Return the items as (construct key, construct) pairs.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, keys, values

+
+
+
Returns
+
+
dict_items

The construct key and constructs respectively as +key-value pairs in a Python dict_items iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> c_items = c.items()
+>>> print(c_items)
+dict_items([('dimensioncoordinate0', <DimensionCoordinate: latitude(5) degrees_north>),
+            ('dimensioncoordinate1', <DimensionCoordinate: longitude(8) degrees_east>),
+            ('dimensioncoordinate2', <DimensionCoordinate: time(1) days since 2018-12-01 >),
+            ('domainaxis0', <DomainAxis: size(5)>),
+            ('domainaxis1', <DomainAxis: size(8)>),
+            ('domainaxis2', <DomainAxis: size(1)>),
+            ('cellmethod0', <CellMethod: area: mean>)])
+>>> type(c_items)
+<class 'dict_items'>
+>>> dict(c_items)
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'cellmethod0': <CellMethod: area: mean>,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.key.html b/docs/1.9.0.1/method/cfdm.core.Constructs.key.html new file mode 100644 index 0000000000..bd57b96fb7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.key.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Constructs.key — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.key

+
+
+Constructs.key(default=ValueError())[source]
+

Return the construct key of the sole metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, keys, value

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there +is not exactly one construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The construct key.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> c = f.constructs
+>>> d = cfdm.core.DimensionCoordinate(
+...     properties={
+...         'standard_name': 'latitude', 'units': 'degrees_north'},
+...     data=cfdm.core.Data(range(5))
+... )
+>>> c._set_construct(d)
+'dimensioncoordinate0'
+>>> print(c)
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>}
+>>> c.key()
+'dimensioncoordinate0'
+>>> c.value()
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.keys.html b/docs/1.9.0.1/method/cfdm.core.Constructs.keys.html new file mode 100644 index 0000000000..10f72972d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.keys.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Constructs.keys — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.keys

+
+
+Constructs.keys()[source]
+

Return all of the construct keys, in arbitrary order.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, items, values

+
+
+
Returns
+
+
dict_keys

The construct keys as a Python dict_keys iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> c_keys = c.keys()
+>>> print(c_keys)
+dict_keys(['domainaxis0',
+           'domainaxis1',
+           'domainaxis2',
+           'dimensioncoordinate0',
+           'dimensioncoordinate1',
+           'dimensioncoordinate2',
+           'cellmethod0'])
+>>> type(c_keys)
+<class 'dict_keys'>
+>>> list(c_keys)
+['domainaxis0',
+ 'domainaxis1',
+ 'domainaxis2',
+ 'dimensioncoordinate0',
+ 'dimensioncoordinate1',
+ 'dimensioncoordinate2',
+ 'cellmethod0']
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.new_identifier.html b/docs/1.9.0.1/method/cfdm.core.Constructs.new_identifier.html new file mode 100644 index 0000000000..cbdcc66d5f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.new_identifier.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Constructs.new_identifier — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.new_identifier

+
+
+Constructs.new_identifier(construct_type)[source]
+

Return a new, unused construct key.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
construct_type: str

The construct type for which the identifier is being +created.

+
+
Parameter example:

construct_type='dimension_coordinate'

+
+
+
+
+
+
Returns
+
+
str

The new construct identifier.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> c.keys()
+['domainaxis0',
+ 'domainaxis1',
+ 'domainaxis2',
+ 'dimensioncoordinate0',
+ 'dimensioncoordinate1',
+ 'dimensioncoordinate2',
+ 'cellmethod0']
+>>> c.new_identifier('domain_axis')
+'domainaxis3'
+>>> c.new_identifier('cell_method')
+'cellmethod1'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.ordered.html b/docs/1.9.0.1/method/cfdm.core.Constructs.ordered.html new file mode 100644 index 0000000000..854a30d61f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.ordered.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Constructs.ordered — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.ordered

+
+
+Constructs.ordered()[source]
+

Return the constructs in their predetermined order.

+

For cell method constructs, the predetermined order is that in +which they where added. There is no predetermined ordering for +all other construct types, and a exception is raised if any +non-cell method constructs are present.

+

Deprecated at version (cfdm) 1.9.0.0, since all metadata +constructs are now stored in the order in which they where +added.

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
collections.OrderedDict

The constructs and their construct keys, in their +predetermined order.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> c = f.constructs
+>>> c.ordered()
+{}
+>>> m1 = cfdm.core.CellMethod(axes=['domainaxis1'], method='mean')
+>>> c._set_construct(m1, key='cell_method_for_axis_1')
+'cell_method_for_axis_1'
+>>> m2 = cfdm.core.CellMethod(axes=['domainaxis0'], method='minimum')
+>>> c._set_construct(m2, key='cell_method_for_axis_0')
+'cell_method_for_axis_0'
+>>> print(c)
+Constructs:
+{'cell_method_for_axis_0': <CellMethod: domainaxis0: minimum>,
+ 'cell_method_for_axis_1': <CellMethod: domainaxis1: mean>}
+>>> c.ordered()
+OrderedDict([('cell_method_for_axis_1', <CellMethod: domainaxis1: mean>),
+             ('cell_method_for_axis_0', <CellMethod: domainaxis0: minimum>)])
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.replace.html b/docs/1.9.0.1/method/cfdm.core.Constructs.replace.html new file mode 100644 index 0000000000..852455f409 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.replace.html @@ -0,0 +1,160 @@ + + + + + + + cfdm.core.Constructs.replace — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.replace

+
+
+Constructs.replace(key, construct, axes=None, copy=True)[source]
+

Replace one metadata construct with another.

+
+

Note

+

No checks on the axes are done.

+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.shallow_copy.html b/docs/1.9.0.1/method/cfdm.core.Constructs.shallow_copy.html new file mode 100644 index 0000000000..71f84b1863 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.shallow_copy.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.Constructs.shallow_copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.shallow_copy

+
+
+Constructs.shallow_copy(_ignore=None)[source]
+

Return a shallow copy.

+

copy.copy(f) is equivalent to f.shallow_copy().

+

Any in-place changes to the actual constructs of the copy will +not be seen in the original Constructs object, and vice +versa, but the copy and filter history are otherwise +independent.

+
+

New in version (cfdm): 1.8.9.0

+
+
+

See also

+

view

+
+
+
Returns
+
+
Constructs

The shallow copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> k = c.shallow_copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.todict.html b/docs/1.9.0.1/method/cfdm.core.Constructs.todict.html new file mode 100644 index 0000000000..99ebc26b7f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.todict.html @@ -0,0 +1,174 @@ + + + + + + + cfdm.core.Constructs.todict — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.todict

+
+
+Constructs.todict(copy=False)[source]
+

Return a dictionary of the metadata constructs.

+
+

New in version (cfdm): 1.8.9.0

+
+
+
Parameters
+
+
copy: bool, optional

If True then deep copy the metadata construct values.

+
+
+
+
Returns
+
+
dict

The dictionary representation, keyed by construct +identifiers with metadata construct values.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.value.html b/docs/1.9.0.1/method/cfdm.core.Constructs.value.html new file mode 100644 index 0000000000..3e12697689 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.value.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Constructs.value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.value

+
+
+Constructs.value(default=ValueError())[source]
+

Return the sole metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, key, values

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if there +is not exactly one construct.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> c = f.constructs
+>>> d = cfdm.core.DimensionCoordinate(
+...     properties={
+...         'standard_name': 'latitude', 'units': 'degrees_north'},
+...     data=cfdm.core.Data(range(5))
+... )
+>>> c._set_construct(d)
+'dimensioncoordinate0'
+>>> print(c)
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>}
+>>> c.key()
+'dimensioncoordinate0'
+>>> c.value()
+<DimensionCoordinate: latitude(5) degrees_north>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Constructs.values.html b/docs/1.9.0.1/method/cfdm.core.Constructs.values.html new file mode 100644 index 0000000000..8e4b0484d3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Constructs.values.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Constructs.values — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Constructs.values

+
+
+Constructs.values()[source]
+

Return all of the metadata constructs, in arbitrary order.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get, items, keys

+
+
+
Returns
+
+
dict_values

The constructs as a Python dict_values iterator.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> c = f.constructs
+>>> c_values = c.values()
+>>> print(c_values)
+dict_values([<DimensionCoordinate: latitude(5) degrees_north>,
+             <DimensionCoordinate: longitude(8) degrees_east>,
+             <DimensionCoordinate: time(1) days since 2018-12-01 >,
+             <DomainAxis: size(5)>,
+             <DomainAxis: size(8)>,
+             <DomainAxis: size(1)>,
+             <CellMethod: area: mean>])
+>>> type(c_values)
+<class 'dict_values'>
+>>> list(c_values)
+[<DimensionCoordinate: latitude(5) degrees_north>,
+ <DimensionCoordinate: longitude(8) degrees_east>,
+ <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ <DomainAxis: size(5)>,
+ <DomainAxis: size(8)>,
+ <DomainAxis: size(1)>,
+ <CellMethod: area: mean>]
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Container.__deepcopy__.html new file mode 100644 index 0000000000..d792e4d297 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Container.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container.__deepcopy__

+
+
+Container.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Container()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._del_component.html b/docs/1.9.0.1/method/cfdm.core.Container._del_component.html new file mode 100644 index 0000000000..2e543cd706 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._del_component.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Container._del_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._del_component

+
+
+Container._del_component(component, default=ValueError())[source]
+

Remove a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component to be removed.

+
+
default: optional

Return default if the component has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed component. If unset then default is +returned, if provided.

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Container._docstring_method_exclusions.html new file mode 100644 index 0000000000..5f412b72f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Container._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._docstring_method_exclusions

+
+
+Container._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Container._docstring_package_depth.html new file mode 100644 index 0000000000..481dcdf0a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Container._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._docstring_package_depth

+
+
+Container._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Container._docstring_special_substitutions.html new file mode 100644 index 0000000000..2cce24dc2a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Container._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._docstring_special_substitutions

+
+
+classmethod Container._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Container._docstring_substitutions.html new file mode 100644 index 0000000000..5c7a0dffbf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Container._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._docstring_substitutions

+
+
+Container._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._get_component.html b/docs/1.9.0.1/method/cfdm.core.Container._get_component.html new file mode 100644 index 0000000000..4ba5af8f4e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._get_component.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Container._get_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._get_component

+
+
+Container._get_component(component, default=ValueError())[source]
+

Return a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component to be returned.

+
+
default: optional

Return default if the component has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The component. If unset then default is returned, if +provided.

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._has_component.html b/docs/1.9.0.1/method/cfdm.core.Container._has_component.html new file mode 100644 index 0000000000..6f0e812852 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._has_component.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.Container._has_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._has_component

+
+
+Container._has_component(component)[source]
+

Whether a component has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component.

+
+
+
+
Returns
+
+
bool

True if the component has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container._set_component.html b/docs/1.9.0.1/method/cfdm.core.Container._set_component.html new file mode 100644 index 0000000000..e83f20adcf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container._set_component.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Container._set_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container._set_component

+
+
+Container._set_component(component, value, copy=True)[source]
+

Set a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component: str

The name of the component.

+
+
value:

The value for the component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Container.copy.html b/docs/1.9.0.1/method/cfdm.core.Container.copy.html new file mode 100644 index 0000000000..2401861599 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Container.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Container.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Container.copy

+
+
+Container.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Container

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.__deepcopy__.html new file mode 100644 index 0000000000..cf6fa629c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Coordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.__deepcopy__

+
+
+Coordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Coordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_method_exclusions.html new file mode 100644 index 0000000000..29c3e84009 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Coordinate._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate._docstring_method_exclusions

+
+
+Coordinate._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_package_depth.html new file mode 100644 index 0000000000..ee51db5fdf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Coordinate._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate._docstring_package_depth

+
+
+Coordinate._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_special_substitutions.html new file mode 100644 index 0000000000..4c38db6fd6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Coordinate._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate._docstring_special_substitutions

+
+
+classmethod Coordinate._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_substitutions.html new file mode 100644 index 0000000000..3814240b6b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Coordinate._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate._docstring_substitutions

+
+
+Coordinate._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.clear_properties.html new file mode 100644 index 0000000000..22cd9230d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Coordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.clear_properties

+
+
+Coordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.copy.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.copy.html new file mode 100644 index 0000000000..343f39a16d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.Coordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.copy

+
+
+Coordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Coordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_bounds.html new file mode 100644 index 0000000000..7a2b3d7b94 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Coordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_bounds

+
+
+Coordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_climatology.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_climatology.html new file mode 100644 index 0000000000..e66ad27911 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_climatology.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Coordinate.del_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_climatology

+
+
+Coordinate.del_climatology(default=ValueError())[source]
+

Remove the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed climatology value.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_data.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_data.html new file mode 100644 index 0000000000..bc47542ceb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.Coordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_data

+
+
+Coordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_geometry.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_geometry.html new file mode 100644 index 0000000000..10b0c56aa5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Coordinate.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_geometry

+
+
+Coordinate.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_interior_ring.html new file mode 100644 index 0000000000..f9fde58b0c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.Coordinate.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_interior_ring

+
+
+Coordinate.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.del_property.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_property.html new file mode 100644 index 0000000000..6a688690ca --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Coordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.del_property

+
+
+Coordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_bounds.html new file mode 100644 index 0000000000..603a5675da --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_bounds.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.core.Coordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_bounds

+
+
+Coordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_climatology.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_climatology.html new file mode 100644 index 0000000000..89b004932e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_climatology.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.Coordinate.get_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_climatology

+
+
+Coordinate.get_climatology(default=ValueError())[source]
+

Return the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

str

+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_data.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_data.html new file mode 100644 index 0000000000..ffbbf8ee8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.Coordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_data

+
+
+Coordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_geometry.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_geometry.html new file mode 100644 index 0000000000..cf8999131b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Coordinate.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_geometry

+
+
+Coordinate.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_interior_ring.html new file mode 100644 index 0000000000..01d245b00e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.Coordinate.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_interior_ring

+
+
+Coordinate.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.get_property.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_property.html new file mode 100644 index 0000000000..b35a2cbc82 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Coordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.get_property

+
+
+Coordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_bounds.html new file mode 100644 index 0000000000..77397c86f7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.Coordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.has_bounds

+
+
+Coordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.has_data.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_data.html new file mode 100644 index 0000000000..9cea2846f9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Coordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.has_data

+
+
+Coordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.has_geometry.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_geometry.html new file mode 100644 index 0000000000..c5dcf40700 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.Coordinate.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.has_geometry

+
+
+Coordinate.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_interior_ring.html new file mode 100644 index 0000000000..494903fc59 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Coordinate.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.has_interior_ring

+
+
+Coordinate.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.has_property.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_property.html new file mode 100644 index 0000000000..896730c97b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Coordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.has_property

+
+
+Coordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.is_climatology.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.is_climatology.html new file mode 100644 index 0000000000..fd3cb2a45e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.is_climatology.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Coordinate.is_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.is_climatology

+
+
+Coordinate.is_climatology()[source]
+

True if the coordinates are climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Returns
+
+
bool

Whether or not the coordinates are climatological.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.properties.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.properties.html new file mode 100644 index 0000000000..0da44eb250 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Coordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.properties

+
+
+Coordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_bounds.html new file mode 100644 index 0000000000..b8af3395d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.Coordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_bounds

+
+
+Coordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_climatology.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_climatology.html new file mode 100644 index 0000000000..e3ffc71294 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_climatology.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.Coordinate.set_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_climatology

+
+
+Coordinate.set_climatology(climatology)[source]
+

Set whether or not coordinates are climatological.

+

Only coordinate constructs with units of reference time (or unset +units) can be set as climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
climatology: bool

Whether or not the coordinates are climatological.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_data.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_data.html new file mode 100644 index 0000000000..66a15c87de --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.Coordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_data

+
+
+Coordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Coordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Coordinate

If the operation was in-place then None is returned, +otherwise return a new Coordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_geometry.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_geometry.html new file mode 100644 index 0000000000..51bc08fe90 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Coordinate.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_geometry

+
+
+Coordinate.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_interior_ring.html new file mode 100644 index 0000000000..481e6265fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Coordinate.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_interior_ring

+
+
+Coordinate.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_properties.html new file mode 100644 index 0000000000..2c31795977 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Coordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_properties

+
+
+Coordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Coordinate.set_property.html b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_property.html new file mode 100644 index 0000000000..2d77355c01 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Coordinate.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Coordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Coordinate.set_property

+
+
+Coordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.__deepcopy__.html new file mode 100644 index 0000000000..27e5130cd2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.CoordinateConversion.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.__deepcopy__

+
+
+CoordinateConversion.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.CoordinateConversion()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_method_exclusions.html new file mode 100644 index 0000000000..cbf8e66aec --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CoordinateConversion._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion._docstring_method_exclusions

+
+
+CoordinateConversion._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_package_depth.html new file mode 100644 index 0000000000..7934feaa39 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.CoordinateConversion._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion._docstring_package_depth

+
+
+CoordinateConversion._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_special_substitutions.html new file mode 100644 index 0000000000..fe2e9c2ad4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CoordinateConversion._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion._docstring_special_substitutions

+
+
+classmethod CoordinateConversion._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_substitutions.html new file mode 100644 index 0000000000..6ba73b94a1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CoordinateConversion._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion._docstring_substitutions

+
+
+CoordinateConversion._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_domain_ancillaries.html new file mode 100644 index 0000000000..2a017ffae7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.CoordinateConversion.clear_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.clear_domain_ancillaries

+
+
+CoordinateConversion.clear_domain_ancillaries()[source]
+

Remove all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_parameters.html new file mode 100644 index 0000000000..04fff80b9e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CoordinateConversion.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.clear_parameters

+
+
+CoordinateConversion.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.copy.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.copy.html new file mode 100644 index 0000000000..77f13c683a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CoordinateConversion.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.copy

+
+
+CoordinateConversion.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CoordinateConversion

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_domain_ancillary.html new file mode 100644 index 0000000000..8542880a8d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_domain_ancillary.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CoordinateConversion.del_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.del_domain_ancillary

+
+
+CoordinateConversion.del_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Delete a domain ancillary.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the domain ancillary to be deleted.

+
+
Parameter example:

domain_ancillary='orog'

+
+
+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed domain ancillary key.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_parameter.html new file mode 100644 index 0000000000..fff5ea59a3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CoordinateConversion.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.del_parameter

+
+
+CoordinateConversion.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.domain_ancillaries.html new file mode 100644 index 0000000000..babcdcf8b5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.CoordinateConversion.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.domain_ancillaries

+
+
+CoordinateConversion.domain_ancillaries()[source]
+

Return all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_domain_ancillary.html new file mode 100644 index 0000000000..6ee065d464 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_domain_ancillary.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CoordinateConversion.get_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.get_domain_ancillary

+
+
+CoordinateConversion.get_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Return a domain ancillary term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.core.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_parameter.html new file mode 100644 index 0000000000..4f3c5d65a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.CoordinateConversion.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.get_parameter

+
+
+CoordinateConversion.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_domain_ancillary.html new file mode 100644 index 0000000000..3895285ea0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_domain_ancillary.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.CoordinateConversion.has_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.has_domain_ancillary

+
+
+CoordinateConversion.has_domain_ancillary(domain_ancillary)[source]
+

Whether a domain ancillary has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.core.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_parameter.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_parameter.html new file mode 100644 index 0000000000..c10236e9d9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.CoordinateConversion.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.has_parameter

+
+
+CoordinateConversion.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.parameters.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.parameters.html new file mode 100644 index 0000000000..ee5c97962a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.CoordinateConversion.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.parameters

+
+
+CoordinateConversion.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillaries.html new file mode 100644 index 0000000000..421685930a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillaries.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.core.CoordinateConversion.set_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.set_domain_ancillaries

+
+
+CoordinateConversion.set_domain_ancillaries(domain_ancillaries, copy=True)[source]
+

Set domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillaries: dict

Store the domain ancillaries from the dictionary supplied.

+
+
Parameter example:

domain_ancillaries={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +domain_ancillaries parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillary.html new file mode 100644 index 0000000000..af1bf586c3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_domain_ancillary.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.CoordinateConversion.set_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.set_domain_ancillary

+
+
+CoordinateConversion.set_domain_ancillary(term, value, copy=True)[source]
+

Set an domain ancillary-valued term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
term: str

The name of the term to be set.

+
+
value:

The value for the term.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.CoordinateConversion()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameter.html new file mode 100644 index 0000000000..ce6e419263 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.CoordinateConversion.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.set_parameter

+
+
+CoordinateConversion.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameters.html new file mode 100644 index 0000000000..4af3d230f0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateConversion.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CoordinateConversion.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateConversion.set_parameters

+
+
+CoordinateConversion.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.CoordinateConversion()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.__deepcopy__.html new file mode 100644 index 0000000000..6e65e3bbea --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.CoordinateReference.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.__deepcopy__

+
+
+CoordinateReference.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.CoordinateReference()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_method_exclusions.html new file mode 100644 index 0000000000..efac132775 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CoordinateReference._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference._docstring_method_exclusions

+
+
+CoordinateReference._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_package_depth.html new file mode 100644 index 0000000000..99ecf7b08c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.CoordinateReference._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference._docstring_package_depth

+
+
+CoordinateReference._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_special_substitutions.html new file mode 100644 index 0000000000..3492805348 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CoordinateReference._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference._docstring_special_substitutions

+
+
+classmethod CoordinateReference._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_substitutions.html new file mode 100644 index 0000000000..1b1159e66b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.CoordinateReference._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference._docstring_substitutions

+
+
+CoordinateReference._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.clear_coordinates.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.clear_coordinates.html new file mode 100644 index 0000000000..c4e94a26d9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.clear_coordinates.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.CoordinateReference.clear_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.clear_coordinates

+
+
+CoordinateReference.clear_coordinates()[source]
+

Remove all references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
set

The removed coordinate construct keys.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> sorted(r.coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> sorted(r.clear_coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.coordinates.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.coordinates.html new file mode 100644 index 0000000000..d531949225 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.coordinates.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.CoordinateReference.coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.coordinates

+
+
+CoordinateReference.coordinates()[source]
+

Return all references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
set

The coordinate construct keys.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> sorted(r.coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> sorted(r.clear_coordinates())
+['auxiliarycoordinate1', 'dimensioncoordinate0']
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.copy.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.copy.html new file mode 100644 index 0000000000..a1d4627d07 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.CoordinateReference.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.copy

+
+
+CoordinateReference.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
CoordinateReference

The deep copy.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> s = r.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate.html new file mode 100644 index 0000000000..fa71698aa1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.CoordinateReference.del_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.del_coordinate

+
+
+CoordinateReference.del_coordinate(key, default=ValueError())[source]
+

Remove a reference to a coordinate construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
default: optional

Return the value of the default parameter if the +coordinate construct has not been set. If set to an +Exception instance then it will be raised instead.

+
+
+
+
Returns
+

The removed coordinate construct key.

+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.del_coordinate('dimensioncoordinate0')
+'dimensioncoordinate0'
+>>> r.coordinates()
+{'auxiliarycoordinate1'}
+>>> r.del_coordinate('dimensioncoordinate0', 'not set')
+'not set'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate_conversion.html new file mode 100644 index 0000000000..273bbba589 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_coordinate_conversion.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.CoordinateReference.del_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.del_coordinate_conversion

+
+
+CoordinateReference.del_coordinate_conversion()[source]
+

Remove the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

coordinate_conversion, get_coordinate_conversion, +set_coordinate_conversion

+
+
+
Returns
+
+
CoordinateConversion

The removed coordinate conversion component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> orog = cfdm.core.DomainAncillary()
+>>> c = cfdm.core.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_datum.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_datum.html new file mode 100644 index 0000000000..0d98084f58 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.del_datum.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CoordinateReference.del_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.del_datum

+
+
+CoordinateReference.del_datum()[source]
+

Remove the datum component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

datum, get_datum, set_datum

+
+
+
Returns
+
+
Datum

The removed datum component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> d = cfdm.core.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_coordinate_conversion.html new file mode 100644 index 0000000000..8bc5360b61 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_coordinate_conversion.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.CoordinateReference.get_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.get_coordinate_conversion

+
+
+CoordinateReference.get_coordinate_conversion()[source]
+

Get the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

coordinate_conversion, del_coordinate_conversion, +set_coordinate_conversion

+
+
+
Returns
+
+
CoordinateConversion

The coordinate conversion component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> orog = cfdm.core.DomainAncillary()
+>>> c = cfdm.core.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_datum.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_datum.html new file mode 100644 index 0000000000..4cdfab2e95 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.get_datum.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.CoordinateReference.get_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.get_datum

+
+
+CoordinateReference.get_datum()[source]
+

Return the datum component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

datum, get_coordinate_conversion

+
+
+
Returns
+
+
Datum

The datum component.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> d = cfdm.core.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.has_coordinate.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.has_coordinate.html new file mode 100644 index 0000000000..a4b9cc37b8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.has_coordinate.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CoordinateReference.has_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.has_coordinate

+
+
+CoordinateReference.has_coordinate(key)[source]
+

Whether a reference to a coordinate construct has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
+
Returns
+
+
bool

True if the coordinate construct key has been set, +otherwise False.

+
+
+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.has_coordinate('dimensioncoordinate0')
+True
+>>> r.has_coordinate('dimensioncoordinate1')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate.html new file mode 100644 index 0000000000..134170b839 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.CoordinateReference.set_coordinate — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.set_coordinate

+
+
+CoordinateReference.set_coordinate(key)[source]
+

Set a reference to a coordinate construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct key of the coordinate construct.

+
+
+
Parameter example:

key='dimensioncoordinate1'

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinate('dimensioncoordinate0')
+>>> r.coordinates()
+{'dimensioncoordinate0'}
+>>> r.has_coordinate('dimensioncoordinate0')
+True
+>>> r.has_coordinate('auxiliarycoordinate0')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate_conversion.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate_conversion.html new file mode 100644 index 0000000000..d25448b96c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinate_conversion.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.CoordinateReference.set_coordinate_conversion — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.set_coordinate_conversion

+
+
+CoordinateReference.set_coordinate_conversion(coordinate_conversion, copy=True)[source]
+

Set the coordinate conversion component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

coordinate_conversion, del_coordinate_conversion, +get_coordinate_conversion

+
+
+
Parameters
+
+
coordinate_conversion: CoordinateConversion

The coordinate conversion component to be inserted.

+
+
copy: bool, optional

If False then do not copy the coordinate conversion prior +to insertion. By default the coordinate conversion is +copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> orog = cfdm.core.DomainAncillary()
+>>> c = cfdm.core.CoordinateConversion(
+...     parameters={
+...         'standard_name': 'atmosphere_hybrid_height_coordinate',
+...     },
+...     domain_ancillaries={'orog': orog}
+... )
+>>> r.set_coordinate_conversion(c)
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.del_coordinate_conversion()
+<CoordinateConversion: Parameters: standard_name; Ancillaries: orog>
+>>> r.get_coordinate_conversion()
+<CoordinateConversion: Parameters: ; Ancillaries: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinates.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinates.html new file mode 100644 index 0000000000..c9cb8cb373 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_coordinates.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.CoordinateReference.set_coordinates — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.set_coordinates

+
+
+CoordinateReference.set_coordinates(coordinates)[source]
+

Set references to coordinate constructs.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
coordinates: (sequence of) str

The coordinate construct keys to be set.

+
+
Parameter example:

coordinates=['dimensioncoordinate0']

+
+
Parameter example:

coordinates='dimensioncoordinate0'

+
+
Parameter example:

coordinates=set(['dimensioncoordinate0', 'auxiliarycoordinate1'])

+
+
Parameter example:

coordinates=[]

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> r.set_coordinates(['dimensioncoordinate0', 'auxiliarycoordinate1'])
+>>> r.coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.clear_coordinates()
+{'auxiliarycoordinate1', 'dimensioncoordinate0'}
+>>> r.coordinates()
+set()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_datum.html b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_datum.html new file mode 100644 index 0000000000..e70f9cfe04 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.CoordinateReference.set_datum.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.CoordinateReference.set_datum — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.CoordinateReference.set_datum

+
+
+CoordinateReference.set_datum(datum, copy=True)[source]
+

Set the datum component.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

datum, del_datum, get_datum

+
+
+
Parameters
+
+
datum: Datum

The datum component to be inserted.

+
+
copy: bool, optional

If False then do not copy the datum prior to insertion. By +default the datum is copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> r = cfdm.core.CoordinateReference()
+>>> d = cfdm.core.Datum(parameters={'earth_radius': 7000000})
+>>> r.set_datum(d)
+>>> r.get_datum()
+<Datum: Parameters: earth_radius>
+>>> r.del_datum()
+<Datum: Parameters: earth_radius>
+>>> r.get_datum()
+<Datum: Parameters: >
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Data.__deepcopy__.html new file mode 100644 index 0000000000..5a60bd4300 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Data.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.__deepcopy__

+
+
+Data.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Data()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.__repr__.html b/docs/1.9.0.1/method/cfdm.core.Data.__repr__.html new file mode 100644 index 0000000000..3a6dcd6e4b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.__repr__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.Data.__repr__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.__repr__

+
+
+Data.__repr__()
+

Return repr(self).

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.__str__.html b/docs/1.9.0.1/method/cfdm.core.Data.__str__.html new file mode 100644 index 0000000000..e7a39e6bb9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.__str__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.Data.__str__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.__str__

+
+
+Data.__str__()
+

Return str(self).

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Data._docstring_method_exclusions.html new file mode 100644 index 0000000000..747e2cd5d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Data._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data._docstring_method_exclusions

+
+
+Data._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Data._docstring_package_depth.html new file mode 100644 index 0000000000..7c555c8f6d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Data._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data._docstring_package_depth

+
+
+Data._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Data._docstring_special_substitutions.html new file mode 100644 index 0000000000..5fe344a1cc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Data._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data._docstring_special_substitutions

+
+
+classmethod Data._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Data._docstring_substitutions.html new file mode 100644 index 0000000000..76ad878694 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Data._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data._docstring_substitutions

+
+
+Data._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.copy.html b/docs/1.9.0.1/method/cfdm.core.Data.copy.html new file mode 100644 index 0000000000..1463574c78 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.copy.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.core.Data.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.copy

+
+
+Data.copy(array=True)[source]
+

Return a deep copy of the data.

+

d.copy() is equivalent to copy.deepcopy(d).

+

Copy-on-write is employed, so care must be taken when modifying +any attribute.

+
+
Parameters
+
+
array: bool, optional

If False then do not copy the array. By default the array +is copied.

+
+
+
+
Returns
+
+
Data

The deep copy.

+
+
+
+
+

Examples:

+
>>> e = d.copy()
+>>> e = d.copy(array=False)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.del_calendar.html b/docs/1.9.0.1/method/cfdm.core.Data.del_calendar.html new file mode 100644 index 0000000000..d37bdeea27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.del_calendar.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Data.del_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.del_calendar

+
+
+Data.del_calendar(default=ValueError())[source]
+

Delete the calendar.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +calendar has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The value of the deleted calendar.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.del_fill_value.html b/docs/1.9.0.1/method/cfdm.core.Data.del_fill_value.html new file mode 100644 index 0000000000..f890bc5b79 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.del_fill_value.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Data.del_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.del_fill_value

+
+
+Data.del_fill_value(default=ValueError())[source]
+

Delete the fill value.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the fill +value has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the deleted fill value.

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.del_units.html b/docs/1.9.0.1/method/cfdm.core.Data.del_units.html new file mode 100644 index 0000000000..88aabea85d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.del_units.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Data.del_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.del_units

+
+
+Data.del_units(default=ValueError())[source]
+

Delete the units.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the units +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The value of the deleted units.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.get_calendar.html b/docs/1.9.0.1/method/cfdm.core.Data.get_calendar.html new file mode 100644 index 0000000000..2a7396f78f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.get_calendar.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.Data.get_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.get_calendar

+
+
+Data.get_calendar(default=ValueError())[source]
+

Return the calendar.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +calendar has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The calendar.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.get_fill_value.html b/docs/1.9.0.1/method/cfdm.core.Data.get_fill_value.html new file mode 100644 index 0000000000..12bc098d00 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.get_fill_value.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.Data.get_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.get_fill_value

+
+
+Data.get_fill_value(default=ValueError())[source]
+

Return the missing data value.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the fill +value has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The fill value.

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.get_units.html b/docs/1.9.0.1/method/cfdm.core.Data.get_units.html new file mode 100644 index 0000000000..7d895b78e0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.get_units.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Data.get_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.get_units

+
+
+Data.get_units(default=ValueError())[source]
+

Return the units.

+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the units +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The units.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.has_calendar.html b/docs/1.9.0.1/method/cfdm.core.Data.has_calendar.html new file mode 100644 index 0000000000..dde2520c13 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.has_calendar.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.Data.has_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.has_calendar

+
+
+Data.has_calendar()[source]
+

Whether a calendar has been set.

+ +
+
Returns
+
+
bool

True if the calendar has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.has_fill_value.html b/docs/1.9.0.1/method/cfdm.core.Data.has_fill_value.html new file mode 100644 index 0000000000..b58ef856e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.has_fill_value.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Data.has_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.has_fill_value

+
+
+Data.has_fill_value()[source]
+

Whether a fill value has been set.

+ +
+
Returns
+
+
bool

True if a fill value has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.has_units.html b/docs/1.9.0.1/method/cfdm.core.Data.has_units.html new file mode 100644 index 0000000000..8a95ac7084 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.has_units.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.Data.has_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.has_units

+
+
+Data.has_units()[source]
+

Whether units have been set.

+ +
+
Returns
+
+
bool

True if units have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.set_calendar.html b/docs/1.9.0.1/method/cfdm.core.Data.set_calendar.html new file mode 100644 index 0000000000..5b0533f093 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.set_calendar.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.Data.set_calendar — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.set_calendar

+
+
+Data.set_calendar(value)[source]
+

Set the calendar.

+ +
+
Parameters
+
+
value: str

The new calendar.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d.set_calendar('360_day')
+>>> d.has_calendar()
+True
+>>> d.get_calendar()
+'360_day'
+>>> d.del_calendar()
+>>> d.has_calendar()
+False
+>>> d.get_calendar()
+ValueError: Can't get non-existent calendar
+>>> print(d.get_calendar(None))
+None
+>>> print(d.del_calendar(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.set_fill_value.html b/docs/1.9.0.1/method/cfdm.core.Data.set_fill_value.html new file mode 100644 index 0000000000..bfa2fee37a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.set_fill_value.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Data.set_fill_value — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.set_fill_value

+
+
+Data.set_fill_value(value)[source]
+

Set the missing data value.

+ +
+
Parameters
+
+
value: scalar

The new fill value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.set_fill_value(-9999)
+>>> f.has_fill_value()
+True
+>>> f.get_fill_value()
+-9999
+>>> print(f.del_fill_value())
+-9999
+>>> f.get_fill_value()
+ValueError: Can't get non-existent fill value
+>>> f.get_fill_value(10**10)
+10000000000
+>>> print(f.get_fill_value(None))
+None
+>>> f.set_fill_value(None)
+>>> print(f.get_fill_value())
+None
+>>> f.has_fill_value()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.set_units.html b/docs/1.9.0.1/method/cfdm.core.Data.set_units.html new file mode 100644 index 0000000000..cad602f7c2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.set_units.html @@ -0,0 +1,188 @@ + + + + + + + cfdm.core.Data.set_units — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.set_units

+
+
+Data.set_units(value)[source]
+

Set the units.

+ +
+
Parameters
+
+
value: str

The new units.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d.set_units('metres')
+>>> d.has_units()
+True
+>>> d.get_units()
+'metres'
+>>> d.del_units()
+>>> d.has_units()
+False
+>>> d.get_units()
+ValueError: Can't get non-existent units
+>>> print(d.get_units(None))
+None
+>>> print(d.del_units(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Data.source.html b/docs/1.9.0.1/method/cfdm.core.Data.source.html new file mode 100644 index 0000000000..8b3ff7c62f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Data.source.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.core.Data.source — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Data.source

+
+
+Data.source(default=ValueError())[source]
+

Return the underlying array object.

+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the array +has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
subclass of Array

The underlying array object.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> d = f.data
+>>> d.source()
+<NetCDFArray(149, 182): file=file.nc variable=latitude>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Datum.__deepcopy__.html new file mode 100644 index 0000000000..286a09e556 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Datum.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.__deepcopy__

+
+
+Datum.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Datum()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_method_exclusions.html new file mode 100644 index 0000000000..c1cd680d63 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Datum._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum._docstring_method_exclusions

+
+
+Datum._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_package_depth.html new file mode 100644 index 0000000000..518cf6f9f5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Datum._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum._docstring_package_depth

+
+
+Datum._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_special_substitutions.html new file mode 100644 index 0000000000..1b65149533 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Datum._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum._docstring_special_substitutions

+
+
+classmethod Datum._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_substitutions.html new file mode 100644 index 0000000000..92b7e6e4a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Datum._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum._docstring_substitutions

+
+
+Datum._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.Datum.clear_parameters.html new file mode 100644 index 0000000000..f1710e251c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Datum.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.clear_parameters

+
+
+Datum.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.copy.html b/docs/1.9.0.1/method/cfdm.core.Datum.copy.html new file mode 100644 index 0000000000..21084d8eab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Datum.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.copy

+
+
+Datum.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Datum

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.Datum.del_parameter.html new file mode 100644 index 0000000000..98a8ebe7be --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.Datum.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.del_parameter

+
+
+Datum.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.Datum.get_parameter.html new file mode 100644 index 0000000000..80e6179c17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Datum.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.get_parameter

+
+
+Datum.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.has_parameter.html b/docs/1.9.0.1/method/cfdm.core.Datum.has_parameter.html new file mode 100644 index 0000000000..a94f2254b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Datum.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.has_parameter

+
+
+Datum.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.parameters.html b/docs/1.9.0.1/method/cfdm.core.Datum.parameters.html new file mode 100644 index 0000000000..0f32267cc5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Datum.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.parameters

+
+
+Datum.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.Datum.set_parameter.html new file mode 100644 index 0000000000..c20d011d3a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.Datum.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.set_parameter

+
+
+Datum.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Datum.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.Datum.set_parameters.html new file mode 100644 index 0000000000..ccb417c9eb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Datum.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Datum.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Datum.set_parameters

+
+
+Datum.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Datum()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.__deepcopy__.html new file mode 100644 index 0000000000..4e141e982f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.DimensionCoordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.__deepcopy__

+
+
+DimensionCoordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.DimensionCoordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_method_exclusions.html new file mode 100644 index 0000000000..5f557d23dd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DimensionCoordinate._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate._docstring_method_exclusions

+
+
+DimensionCoordinate._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_package_depth.html new file mode 100644 index 0000000000..569f91c417 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DimensionCoordinate._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate._docstring_package_depth

+
+
+DimensionCoordinate._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_special_substitutions.html new file mode 100644 index 0000000000..161ac1c3f6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.DimensionCoordinate._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate._docstring_special_substitutions

+
+
+classmethod DimensionCoordinate._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_substitutions.html new file mode 100644 index 0000000000..dd3274ad75 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DimensionCoordinate._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate._docstring_substitutions

+
+
+DimensionCoordinate._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.clear_properties.html new file mode 100644 index 0000000000..4969f8bdd8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DimensionCoordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.clear_properties

+
+
+DimensionCoordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.copy.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.copy.html new file mode 100644 index 0000000000..e2df28c80a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.DimensionCoordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.copy

+
+
+DimensionCoordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
DimensionCoordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_bounds.html new file mode 100644 index 0000000000..5665c6c498 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_bounds

+
+
+DimensionCoordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_climatology.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_climatology.html new file mode 100644 index 0000000000..26d59ece41 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_climatology.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_climatology

+
+
+DimensionCoordinate.del_climatology(default=ValueError())[source]
+

Remove the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed climatology value.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_data.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_data.html new file mode 100644 index 0000000000..8fdb8c20a6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_data

+
+
+DimensionCoordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_geometry.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_geometry.html new file mode 100644 index 0000000000..440720809f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_geometry

+
+
+DimensionCoordinate.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_interior_ring.html new file mode 100644 index 0000000000..7b9e7da947 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_interior_ring

+
+
+DimensionCoordinate.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_property.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_property.html new file mode 100644 index 0000000000..f82eb5ce18 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DimensionCoordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.del_property

+
+
+DimensionCoordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_bounds.html new file mode 100644 index 0000000000..4e5204d7fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_bounds.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_bounds

+
+
+DimensionCoordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_climatology.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_climatology.html new file mode 100644 index 0000000000..0077fde119 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_climatology.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_climatology

+
+
+DimensionCoordinate.get_climatology(default=ValueError())[source]
+

Return the climatology setting.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +climatology status has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

str

+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_data.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_data.html new file mode 100644 index 0000000000..2bc634a525 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_data

+
+
+DimensionCoordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_geometry.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_geometry.html new file mode 100644 index 0000000000..504326409b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_geometry

+
+
+DimensionCoordinate.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_interior_ring.html new file mode 100644 index 0000000000..ea8f79ee7e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_interior_ring

+
+
+DimensionCoordinate.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_property.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_property.html new file mode 100644 index 0000000000..0f944acc85 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DimensionCoordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.get_property

+
+
+DimensionCoordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_bounds.html new file mode 100644 index 0000000000..361fa781de --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.DimensionCoordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.has_bounds

+
+
+DimensionCoordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_data.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_data.html new file mode 100644 index 0000000000..76fe2e6c9e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DimensionCoordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.has_data

+
+
+DimensionCoordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_geometry.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_geometry.html new file mode 100644 index 0000000000..d9efd4d351 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.DimensionCoordinate.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.has_geometry

+
+
+DimensionCoordinate.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_interior_ring.html new file mode 100644 index 0000000000..2272c73af4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.DimensionCoordinate.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.has_interior_ring

+
+
+DimensionCoordinate.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_property.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_property.html new file mode 100644 index 0000000000..6e1b797152 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DimensionCoordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.has_property

+
+
+DimensionCoordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.is_climatology.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.is_climatology.html new file mode 100644 index 0000000000..6004de9d1a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.is_climatology.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.DimensionCoordinate.is_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.is_climatology

+
+
+DimensionCoordinate.is_climatology()[source]
+

True if the coordinates are climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Returns
+
+
bool

Whether or not the coordinates are climatological.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.properties.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.properties.html new file mode 100644 index 0000000000..f467e90595 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.DimensionCoordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.properties

+
+
+DimensionCoordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_bounds.html new file mode 100644 index 0000000000..502613e8de --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_bounds

+
+
+DimensionCoordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_climatology.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_climatology.html new file mode 100644 index 0000000000..cf65ba7e8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_climatology.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_climatology — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_climatology

+
+
+DimensionCoordinate.set_climatology(climatology)[source]
+

Set whether or not coordinates are climatological.

+

Only coordinate constructs with units of reference time (or unset +units) can be set as climatological.

+
+

New in version (cfdm): 1.8.9.0

+
+ +
+
Parameters
+
+
climatology: bool

Whether or not the coordinates are climatological.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> c.set_climatology(True)
+>>> c.is_climatology()
+True
+>>>  c.get_climatology()
+True
+>>> c.del_climatology()
+True
+>>> c.is_climatology()
+False
+>>> print(c.get_climatology(None))
+None
+>>> print(c.del_climatology(None))
+None
+>>> c.set_climatology(False)
+>>> c.is_climatology()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_data.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_data.html new file mode 100644 index 0000000000..af319eb528 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_data.html @@ -0,0 +1,214 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_data

+
+
+DimensionCoordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted. Must be 1-dimensional, +i.e. scalar or multidimensional data is not allowed.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified DimensionCoordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or DimensionCoordinate

If the operation was in-place then None is returned, +otherwise return a new DimensionCoordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.Data(range(10))
+>>> f.set_data(d)
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(10): [0, ..., 9]>
+>>> f.del_data()
+<Data(10): [0, ..., 9]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_geometry.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_geometry.html new file mode 100644 index 0000000000..4326db525f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_geometry

+
+
+DimensionCoordinate.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_interior_ring.html new file mode 100644 index 0000000000..34197446d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_interior_ring

+
+
+DimensionCoordinate.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.DimensionCoordinate()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_properties.html new file mode 100644 index 0000000000..0f2dd8b1bd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_properties

+
+
+DimensionCoordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_property.html b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_property.html new file mode 100644 index 0000000000..2b9903898c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DimensionCoordinate.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.DimensionCoordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DimensionCoordinate.set_property

+
+
+DimensionCoordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.DimensionCoordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions.html new file mode 100644 index 0000000000..3db447b6b3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DocstringRewriteMeta._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta._docstring_method_exclusions

+
+
+static DocstringRewriteMeta._docstring_method_exclusions(cls)[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_package_depth.html new file mode 100644 index 0000000000..b48c53c06e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DocstringRewriteMeta._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta._docstring_package_depth

+
+
+static DocstringRewriteMeta._docstring_package_depth(cls)[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions.html new file mode 100644 index 0000000000..085bd0e1dd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.DocstringRewriteMeta._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta._docstring_special_substitutions

+
+
+classmethod DocstringRewriteMeta._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_substitutions.html new file mode 100644 index 0000000000..afcb404596 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DocstringRewriteMeta._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta._docstring_substitutions

+
+
+static DocstringRewriteMeta._docstring_substitutions(cls)[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta.mro.html b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta.mro.html new file mode 100644 index 0000000000..606789a404 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DocstringRewriteMeta.mro.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.DocstringRewriteMeta.mro — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DocstringRewriteMeta.mro

+
+
+DocstringRewriteMeta.mro()
+

Return a type’s method resolution order.

+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Domain.__deepcopy__.html new file mode 100644 index 0000000000..498a8f18dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Domain.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.__deepcopy__

+
+
+Domain.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Domain()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_method_exclusions.html new file mode 100644 index 0000000000..363f96ad1a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Domain._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain._docstring_method_exclusions

+
+
+Domain._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_package_depth.html new file mode 100644 index 0000000000..dd8b58f404 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Domain._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain._docstring_package_depth

+
+
+Domain._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_special_substitutions.html new file mode 100644 index 0000000000..7d6992f134 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Domain._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain._docstring_special_substitutions

+
+
+classmethod Domain._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_substitutions.html new file mode 100644 index 0000000000..e0c8716a8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Domain._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain._docstring_substitutions

+
+
+Domain._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.Domain.clear_properties.html new file mode 100644 index 0000000000..8049857dc0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Domain.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.clear_properties

+
+
+Domain.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.copy.html b/docs/1.9.0.1/method/cfdm.core.Domain.copy.html new file mode 100644 index 0000000000..bdabebc14d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.copy.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.Domain.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.copy

+
+
+Domain.copy(data=True)[source]
+

Return a deep copy.

+

d.copy() is equivalent to copy.deepcopy(d).

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

fromconstructs

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Domain

The deep copy.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.Domain()
+>>> e = d.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.del_construct.html b/docs/1.9.0.1/method/cfdm.core.Domain.del_construct.html new file mode 100644 index 0000000000..e39a409b8d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.del_construct.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Domain.del_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.del_construct

+
+
+Domain.del_construct(key, default=ValueError())[source]
+

Remove a metadata construct.

+

If a domain axis construct is selected for removal then it +can’t be spanned by any data arrays of the metadata +constructs. However, a domain ancillary construct may be +removed even if it is referenced by coordinate reference +construct.

+
+

New in version (cfdm): 1.9.0.0

+
+ +
+
Parameters
+
+
key: str

The construct identifier of the metadata construct to +be removed.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed metadata construct.

+
+
+

Examples:

+
>>> f.del_construct('auxiliarycoordinate2')
+<AuxiliaryCoordinate: latitude(111, 106) degrees_north>
+>>> f.del_construct('auxiliarycoordinate2')
+ValueError: Can't get remove non-existent construct
+>>> f.del_construct('auxiliarycoordinate2', default=False)
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.del_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Domain.del_data_axes.html new file mode 100644 index 0000000000..5d2b2cd1bd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.del_data_axes.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Domain.del_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.del_data_axes

+
+
+Domain.del_data_axes(key, default=ValueError())[source]
+

Removes the keys of the axes spanned by the construct data.

+

Specifically, removes the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed keys of the domain axis constructs spanned +by the data.

+
+
+
+
+

Examples:

+
>>> f.del_data_axes(key='dimensioncoordinate2')
+('domainaxis1',)
+
+
+
>>> f.has_data_axes(key='auxiliarycoordinate0')
+False
+>>> f.has_data_axes(key='auxiliarycoordinate0', default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.del_property.html b/docs/1.9.0.1/method/cfdm.core.Domain.del_property.html new file mode 100644 index 0000000000..4c44449677 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Domain.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.del_property

+
+
+Domain.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.fromconstructs.html b/docs/1.9.0.1/method/cfdm.core.Domain.fromconstructs.html new file mode 100644 index 0000000000..d35f1de5f7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.fromconstructs.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.Domain.fromconstructs — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.fromconstructs

+
+
+classmethod Domain.fromconstructs(constructs, copy=False)[source]
+

Return a new domain containing the given metadata constructs.

+

The new domain acts as a view to the given constructs, +i.e. changes to the domain, such as the addition or removal of +a construct, will also affect the input Constructs instance.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
constructs: Constructs

The constructs from which to create the new +domain. Cell method and field ancillary constructs are +ignored.

+
+
copy: bool, optional

If True then deep copy the metadata constructs prior +to initialization. By default the metadata constructs +are not copied. Note that even when copy is True, +the input Constructs container is not copied.

+
+
+
+
Returns
+
+
Domain

The domain created from a view of the constructs.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> d = cfdm.core.Domain.fromconstructs(f.constructs)
+>>> d
+<Domain: {1, 5, 8}>
+>>> d = cfdm.core.Domain.fromconstructs(f.constructs.copy())
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.get_construct.html b/docs/1.9.0.1/method/cfdm.core.Domain.get_construct.html new file mode 100644 index 0000000000..f30e95a3cf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.get_construct.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.Domain.get_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.get_construct

+
+
+Domain.get_construct(key, default=ValueError())[source]
+

Return a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The key of the metadata construct.

+
+
Parameter example:

key='domainaxis1'

+
+
+
+
default: optional

Return the value of the default parameter if the +construct does not exist.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f.constructs()
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degree_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degreeE>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:greek_letters(10) >,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'domainaxis1': <DomainAxis: 10>,
+ 'domainaxis2': <DomainAxis: 9>}
+>>> f.get_construct('dimensioncoordinate1')
+<DimensionCoordinate: grid_latitude(10) degrees>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.get_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Domain.get_data_axes.html new file mode 100644 index 0000000000..ea94a132d7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.get_data_axes.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Domain.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.get_data_axes

+
+
+Domain.get_data_axes(key, default=<class 'ValueError'>)[source]
+

Gets the keys of the axes spanned by a construct’s data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the +data.

+
+
+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(default=None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.get_property.html b/docs/1.9.0.1/method/cfdm.core.Domain.get_property.html new file mode 100644 index 0000000000..119a4c37e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Domain.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.get_property

+
+
+Domain.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.Domain.has_bounds.html new file mode 100644 index 0000000000..0e5e8f20fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.has_bounds.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.Domain.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.has_bounds

+
+
+Domain.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.9.0.0

+
+
+

See also

+

has_data

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.has_construct.html b/docs/1.9.0.1/method/cfdm.core.Domain.has_construct.html new file mode 100644 index 0000000000..3b4d935c93 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.has_construct.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.Domain.has_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.has_construct

+
+
+Domain.has_construct(key)[source]
+

Whether a metadata construct exists.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The identifier of the metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
Returns
+
+
bool

True if the construct exists, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.has_construct('dimensioncoordinate1')
+True
+
+
+
>>> f.has_construct('dimensioncoordinate99')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.has_data.html b/docs/1.9.0.1/method/cfdm.core.Domain.has_data.html new file mode 100644 index 0000000000..911c98e854 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.has_data.html @@ -0,0 +1,171 @@ + + + + + + + cfdm.core.Domain.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.has_data

+
+
+Domain.has_data()[source]
+

Whether or not the construct has data.

+

Domain instances never have data.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.has_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Domain.has_data_axes.html new file mode 100644 index 0000000000..0e98b01dd9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.has_data_axes.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Domain.has_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.has_data_axes

+
+
+Domain.has_data_axes(key)[source]
+

Whether the axes spanned by the construct data have been set.

+

Specifically, whether the domain axis constructs spanned by the +data of a metadata construct have been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+
+
bool

True if domain axis constructs that span the data been +set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(default=None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.has_property.html b/docs/1.9.0.1/method/cfdm.core.Domain.has_property.html new file mode 100644 index 0000000000..4fc1cf9ffd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Domain.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.has_property

+
+
+Domain.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.properties.html b/docs/1.9.0.1/method/cfdm.core.Domain.properties.html new file mode 100644 index 0000000000..d71c59135e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Domain.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.properties

+
+
+Domain.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.set_construct.html b/docs/1.9.0.1/method/cfdm.core.Domain.set_construct.html new file mode 100644 index 0000000000..4bb1461bb5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.set_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.core.Domain.set_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.set_construct

+
+
+Domain.set_construct(construct, key=None, axes=None, copy=True)[source]
+

Set a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
construct:

The metadata construct to be inserted.

+
+
key: str, optional

The construct identifier to be used for the +construct. If not set then a new, unique identifier is +created automatically. If the identifier already +exists then the existing construct will be replaced.

+
+
Parameter example:

key='cellmeasure0'

+
+
+
+
axes: (sequence of) str, optional

The construct identifiers of the domain axis +constructs spanned by the data array. An exception is +raised if used for a metadata construct that can not +have a data array, i.e. domain axis, cell method and +coordinate reference constructs.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
copy: bool, optional

If True then set a copy of the construct. By default +the construct is copied.

+
+
+
+
Returns
+
+
str

The construct identifier for the construct.

+
+
+
+
+

Examples:

+
>>> key = f.set_construct(c)
+>>> key = f.set_construct(c, copy=False)
+>>> key = f.set_construct(c, axes='domainaxis2')
+>>> key = f.set_construct(c, key='cellmeasure0')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.set_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Domain.set_data_axes.html new file mode 100644 index 0000000000..084c4dd627 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.set_data_axes.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.Domain.set_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.set_data_axes

+
+
+Domain.set_data_axes(axes, key)[source]
+

Sets domain axis constructs spanned by the construct data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data_axes, get_data, get_data_axes, +has_data_axes

+
+
+
Parameters
+
+
axes: sequence of str

The identifiers of the domain axis constructs spanned +by the data of the field or of a metadata construct.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
key: str

Specify a metadata construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> print(f.del_dataxes(None))
+None
+>>> print(f.get_data_axes(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.set_properties.html b/docs/1.9.0.1/method/cfdm.core.Domain.set_properties.html new file mode 100644 index 0000000000..3f520264b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Domain.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.set_properties

+
+
+Domain.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Domain.set_property.html b/docs/1.9.0.1/method/cfdm.core.Domain.set_property.html new file mode 100644 index 0000000000..9f2371d6ec --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Domain.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Domain.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Domain.set_property

+
+
+Domain.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Domain()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.__deepcopy__.html new file mode 100644 index 0000000000..ef61e10210 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.DomainAncillary.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.__deepcopy__

+
+
+DomainAncillary.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.DomainAncillary()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_method_exclusions.html new file mode 100644 index 0000000000..a96d9973df --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAncillary._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary._docstring_method_exclusions

+
+
+DomainAncillary._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_package_depth.html new file mode 100644 index 0000000000..2b909eaa08 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DomainAncillary._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary._docstring_package_depth

+
+
+DomainAncillary._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_special_substitutions.html new file mode 100644 index 0000000000..6c60cccd85 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.DomainAncillary._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary._docstring_special_substitutions

+
+
+classmethod DomainAncillary._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_substitutions.html new file mode 100644 index 0000000000..9392f75759 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DomainAncillary._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary._docstring_substitutions

+
+
+DomainAncillary._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.clear_properties.html new file mode 100644 index 0000000000..63f8dbe630 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAncillary.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.clear_properties

+
+
+DomainAncillary.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.copy.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.copy.html new file mode 100644 index 0000000000..72698ca0f1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.DomainAncillary.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.copy

+
+
+DomainAncillary.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
DomainAncillary

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_bounds.html new file mode 100644 index 0000000000..58b7d7471d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DomainAncillary.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.del_bounds

+
+
+DomainAncillary.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_data.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_data.html new file mode 100644 index 0000000000..31d6bf74af --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.DomainAncillary.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.del_data

+
+
+DomainAncillary.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_geometry.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_geometry.html new file mode 100644 index 0000000000..4fae7db388 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DomainAncillary.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.del_geometry

+
+
+DomainAncillary.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_interior_ring.html new file mode 100644 index 0000000000..ebbb135fc4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.DomainAncillary.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.del_interior_ring

+
+
+DomainAncillary.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_property.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_property.html new file mode 100644 index 0000000000..241ef99d4f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DomainAncillary.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.del_property

+
+
+DomainAncillary.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_bounds.html new file mode 100644 index 0000000000..f4c4f3e6a2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_bounds.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.core.DomainAncillary.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.get_bounds

+
+
+DomainAncillary.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_data.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_data.html new file mode 100644 index 0000000000..4c6bc49a46 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.DomainAncillary.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.get_data

+
+
+DomainAncillary.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_geometry.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_geometry.html new file mode 100644 index 0000000000..00f7b42852 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DomainAncillary.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.get_geometry

+
+
+DomainAncillary.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_interior_ring.html new file mode 100644 index 0000000000..2eda843962 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.DomainAncillary.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.get_interior_ring

+
+
+DomainAncillary.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_property.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_property.html new file mode 100644 index 0000000000..f0201923a9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.DomainAncillary.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.get_property

+
+
+DomainAncillary.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_bounds.html new file mode 100644 index 0000000000..ca7a77d0e3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.DomainAncillary.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.has_bounds

+
+
+DomainAncillary.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_data.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_data.html new file mode 100644 index 0000000000..b6f2d17243 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAncillary.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.has_data

+
+
+DomainAncillary.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_geometry.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_geometry.html new file mode 100644 index 0000000000..ef1539c60f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.DomainAncillary.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.has_geometry

+
+
+DomainAncillary.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_interior_ring.html new file mode 100644 index 0000000000..f24b75c596 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.DomainAncillary.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.has_interior_ring

+
+
+DomainAncillary.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_property.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_property.html new file mode 100644 index 0000000000..69ab5c0d3e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DomainAncillary.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.has_property

+
+
+DomainAncillary.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.properties.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.properties.html new file mode 100644 index 0000000000..0ba2c07b7a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.DomainAncillary.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.properties

+
+
+DomainAncillary.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_bounds.html new file mode 100644 index 0000000000..dccbbdd65a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.DomainAncillary.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_bounds

+
+
+DomainAncillary.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_data.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_data.html new file mode 100644 index 0000000000..329c51e1a8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.DomainAncillary.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_data

+
+
+DomainAncillary.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified DomainAncillary instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or DomainAncillary

If the operation was in-place then None is returned, +otherwise return a new DomainAncillary instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_geometry.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_geometry.html new file mode 100644 index 0000000000..98581c5666 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAncillary.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_geometry

+
+
+DomainAncillary.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_interior_ring.html new file mode 100644 index 0000000000..ee8f29a696 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.DomainAncillary.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_interior_ring

+
+
+DomainAncillary.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.DomainAncillary()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_properties.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_properties.html new file mode 100644 index 0000000000..bbe2a33d5a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DomainAncillary.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_properties

+
+
+DomainAncillary.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_property.html b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_property.html new file mode 100644 index 0000000000..e62e53cb5b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAncillary.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.DomainAncillary.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAncillary.set_property

+
+
+DomainAncillary.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.DomainAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.__deepcopy__.html new file mode 100644 index 0000000000..dde870332c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.DomainAxis.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.__deepcopy__

+
+
+DomainAxis.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.DomainAxis()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_method_exclusions.html new file mode 100644 index 0000000000..babb8b9b8d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAxis._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis._docstring_method_exclusions

+
+
+DomainAxis._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_package_depth.html new file mode 100644 index 0000000000..438ae1add3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.DomainAxis._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis._docstring_package_depth

+
+
+DomainAxis._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_special_substitutions.html new file mode 100644 index 0000000000..af5854eaef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.DomainAxis._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis._docstring_special_substitutions

+
+
+classmethod DomainAxis._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_substitutions.html new file mode 100644 index 0000000000..c102eb6319 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.DomainAxis._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis._docstring_substitutions

+
+
+DomainAxis._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.copy.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.copy.html new file mode 100644 index 0000000000..2c1401123f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.DomainAxis.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.copy

+
+
+DomainAxis.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
DomainAxis

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.DomainAxis()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.del_size.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.del_size.html new file mode 100644 index 0000000000..bc27e57e21 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.del_size.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.DomainAxis.del_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.del_size

+
+
+DomainAxis.del_size(default=ValueError())[source]
+

Remove the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_size, has_size, set_size

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +size has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed size.

+
+
+

Examples:

+
>>> d = cfdm.core.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.get_size.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.get_size.html new file mode 100644 index 0000000000..90e934fa3b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.get_size.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.DomainAxis.get_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.get_size

+
+
+DomainAxis.get_size(default=ValueError())[source]
+

Return the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, has_size, set_size

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +size has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The size.

+
+
+

Examples:

+
>>> d = cfdm.core.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.has_size.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.has_size.html new file mode 100644 index 0000000000..0575925ba3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.has_size.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.DomainAxis.has_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.has_size

+
+
+DomainAxis.has_size()[source]
+

Whether the size has been set.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, get_size, set_size

+
+
+
Returns
+
+
bool

True if the size has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> d = cfdm.core.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.DomainAxis.set_size.html b/docs/1.9.0.1/method/cfdm.core.DomainAxis.set_size.html new file mode 100644 index 0000000000..54ced62729 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.DomainAxis.set_size.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.DomainAxis.set_size — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.DomainAxis.set_size

+
+
+DomainAxis.set_size(size)[source]
+

Set the size.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

del_size, get_size, has_size

+
+
+
Parameters
+
+
value: int

The size.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> d = cfdm.core.DomainAxis(size=50)
+>>> d.has_size()
+True
+>>> d.get_size()
+50
+
+
+
>>> d.set_size(100)
+>>> d.get_size()
+100
+>>> d.del_size()
+100
+>>> d.has_size()
+False
+>>> print(d.del_size(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Field.__deepcopy__.html new file mode 100644 index 0000000000..16f09d2d58 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Field.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.__deepcopy__

+
+
+Field.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Field()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Field._docstring_method_exclusions.html new file mode 100644 index 0000000000..0bdbe36c11 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Field._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field._docstring_method_exclusions

+
+
+Field._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Field._docstring_package_depth.html new file mode 100644 index 0000000000..a1e7b289a9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Field._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field._docstring_package_depth

+
+
+Field._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Field._docstring_special_substitutions.html new file mode 100644 index 0000000000..22115b77b5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Field._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field._docstring_special_substitutions

+
+
+classmethod Field._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Field._docstring_substitutions.html new file mode 100644 index 0000000000..1fde52be93 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Field._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field._docstring_substitutions

+
+
+Field._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.Field.clear_properties.html new file mode 100644 index 0000000000..d968278fef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Field.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.clear_properties

+
+
+Field.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.copy.html b/docs/1.9.0.1/method/cfdm.core.Field.copy.html new file mode 100644 index 0000000000..bb6987dd47 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.Field.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.copy

+
+
+Field.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Field

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.del_construct.html b/docs/1.9.0.1/method/cfdm.core.Field.del_construct.html new file mode 100644 index 0000000000..3ebf4470c0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.del_construct.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.core.Field.del_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.del_construct

+
+
+Field.del_construct(key, default=ValueError())[source]
+

Remove a metadata construct.

+

If a domain axis construct is selected for removal then it +can’t be spanned by any data arrays of the field nor metadata +constructs, nor be referenced by any cell method +constructs. However, a domain ancillary construct may be +removed even if it is referenced by coordinate reference +construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The construct identifier of the metadata construct to +be removed.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the +data axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed metadata construct.

+
+
+

Examples:

+
>>> f = cfdm.core.example_field(4)
+>>> f.del_construct('auxiliarycoordinate2')
+<AuxiliaryCoordinate: longitude(3) degrees_east>
+
+
+
>>> f = cfdm.core.example_field(0)
+>>> f.del_construct('auxiliarycoordinate2')
+Traceback (most recent call last):
+    ...
+ValueError: Can't remove non-existent construct
+>>> f.del_construct('auxiliarycoordinate2', default=False)
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.del_data.html b/docs/1.9.0.1/method/cfdm.core.Field.del_data.html new file mode 100644 index 0000000000..4efa3c970b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.Field.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.del_data

+
+
+Field.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.del_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Field.del_data_axes.html new file mode 100644 index 0000000000..6656d39756 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.del_data_axes.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.Field.del_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.del_data_axes

+
+
+Field.del_data_axes(key=None, default=ValueError())[source]
+

Removes the keys of the axes spanned by the construct data.

+

Specifically, removes the keys of the domain axis constructs +spanned by the data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The removed keys of the domain axis constructs spanned by +the data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes(key='dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+
+
+
>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.del_property.html b/docs/1.9.0.1/method/cfdm.core.Field.del_property.html new file mode 100644 index 0000000000..2b3c54e89d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Field.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.del_property

+
+
+Field.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.get_construct.html b/docs/1.9.0.1/method/cfdm.core.Field.get_construct.html new file mode 100644 index 0000000000..c19f7e3225 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.get_construct.html @@ -0,0 +1,198 @@ + + + + + + + cfdm.core.Field.get_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.get_construct

+
+
+Field.get_construct(key, default=ValueError())[source]
+

Return a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The key of the metadata construct.

+
+
Parameter example:

key='domainaxis1'

+
+
+
+
default: optional

Return the value of the default parameter if the +construct does not exist.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The metadata construct.

+
+
+

Examples:

+
>>> f.constructs()
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degree_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degreeE>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name:greek_letters(10) >,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'domainaxis1': <DomainAxis: 10>,
+ 'domainaxis2': <DomainAxis: 9>}
+>>> f.get_construct('dimensioncoordinate1')
+<DimensionCoordinate: grid_latitude(10) degrees>
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.get_data.html b/docs/1.9.0.1/method/cfdm.core.Field.get_data.html new file mode 100644 index 0000000000..afc4084a16 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.Field.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.get_data

+
+
+Field.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.get_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Field.get_data_axes.html new file mode 100644 index 0000000000..1a64d20f06 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.get_data_axes.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.Field.get_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.get_data_axes

+
+
+Field.get_data_axes(key=None, default=ValueError())[source]
+

Gets the keys of the axes spanned by the construct data.

+

Specifically, returns the keys of the domain axis constructs +spanned by the data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
default: optional

Return the value of the default parameter if the data +axes have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
tuple

The keys of the domain axis constructs spanned by the +data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes(key='dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+
+
+
>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.get_domain.html b/docs/1.9.0.1/method/cfdm.core.Field.get_domain.html new file mode 100644 index 0000000000..07afcc2a31 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.get_domain.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Field.get_domain — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.get_domain

+
+
+Field.get_domain()[source]
+

Return the domain.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

domain

+
+
+
Returns
+
+
Domain

The domain.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(2)
+>>> f.get_domain()
+<Domain: {1, 5, 8, 36}>
+
+
+
>>> d0 = f.domain
+>>> d1 = f.get_domain()
+>>> d0.equals(d1)
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.get_property.html b/docs/1.9.0.1/method/cfdm.core.Field.get_property.html new file mode 100644 index 0000000000..1d4369f4bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Field.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.get_property

+
+
+Field.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.Field.has_bounds.html new file mode 100644 index 0000000000..8a0b7941b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.Field.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.has_bounds

+
+
+Field.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.has_construct.html b/docs/1.9.0.1/method/cfdm.core.Field.has_construct.html new file mode 100644 index 0000000000..428e577452 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.has_construct.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.Field.has_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.has_construct

+
+
+Field.has_construct(key)[source]
+

Whether a metadata construct exists.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str

The identifier of the metadata construct.

+
+
Parameter example:

key='auxiliarycoordinate0'

+
+
+
+
+
+
Returns
+
+
bool

True if the construct exists, otherwise False.

+
+
+
+
+

Examples:

+
>>> f.has_construct('dimensioncoordinate1')
+True
+
+
+
>>> f.has_construct('dimensioncoordinate99')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.has_data.html b/docs/1.9.0.1/method/cfdm.core.Field.has_data.html new file mode 100644 index 0000000000..21daec4b27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Field.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.has_data

+
+
+Field.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.has_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Field.has_data_axes.html new file mode 100644 index 0000000000..174ba7ce7f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.has_data_axes.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.Field.has_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.has_data_axes

+
+
+Field.has_data_axes(key=None)[source]
+

Whether the axes spanned by the construct data have been set.

+

Specifically, whether the domain axis constructs spanned by the +data of the field or of a metadata construct have been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+
+
bool

True if domain axis constructs that span the data been +set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.example_field(0)
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.get_data_axes('dimensioncoordinate2')
+('domainaxis2',)
+>>> f.has_data_axes()
+True
+
+
+
>>> f.del_data_axes()
+('domainaxis0', 'domainaxis1')
+>>> f.has_data_axes()
+False
+>>> f.get_data_axes(default='no axes')
+'no axes'
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.has_property.html b/docs/1.9.0.1/method/cfdm.core.Field.has_property.html new file mode 100644 index 0000000000..e2d6db68f3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Field.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.has_property

+
+
+Field.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.properties.html b/docs/1.9.0.1/method/cfdm.core.Field.properties.html new file mode 100644 index 0000000000..318238853e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Field.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.properties

+
+
+Field.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.set_construct.html b/docs/1.9.0.1/method/cfdm.core.Field.set_construct.html new file mode 100644 index 0000000000..a8383d82b4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.set_construct.html @@ -0,0 +1,211 @@ + + + + + + + cfdm.core.Field.set_construct — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.set_construct

+
+
+Field.set_construct(construct, key=None, axes=None, copy=True)[source]
+

Set a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
construct:

The metadata construct to be inserted.

+
+
key: str, optional

The construct identifier to be used for the +construct. If not set then a new, unique identifier is +created automatically. If the identifier already +exists then the existing construct will be replaced.

+
+
Parameter example:

key='cellmeasure0'

+
+
+
+
axes: (sequence of) str, optional

The construct identifiers of the domain axis +constructs spanned by the data array. An exception is +raised if used for a metadata construct that can not +have a data array, i.e. domain axis, cell method and +coordinate reference constructs.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
copy: bool, optional

If True then set a copy of the construct. By default +the construct is copied.

+
+
+
+
Returns
+
+
str

The construct identifier for the construct.

+
+
+
+
+

Examples:

+
>>> key = f.set_construct(c)
+>>> key = f.set_construct(c, copy=False)
+>>> key = f.set_construct(c, axes='domainaxis2')
+>>> key = f.set_construct(c, key='cellmeasure0')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.set_data.html b/docs/1.9.0.1/method/cfdm.core.Field.set_data.html new file mode 100644 index 0000000000..f3a8129a02 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.set_data.html @@ -0,0 +1,235 @@ + + + + + + + cfdm.core.Field.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.set_data

+
+
+Field.set_data(data, axes=None, copy=True, inplace=True)[source]
+

Set the data of the field construct.

+

The units, calendar and fill value properties of the data +object are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
axes: (sequence of) str, or None

The identifiers of the domain axes spanned by the data +array. If None then the data axes are not set.

+

The axes may also be set afterwards with the +set_data_axes method.

+
+
Parameter example:

axes=['domainaxis2']

+
+
Parameter example:

axes='domainaxis2'

+
+
Parameter example:

axes=['domainaxis2', 'domainaxis1']

+
+
Parameter example:

axes=None

+
+
+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Field instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Field

If the operation was in-place then None is returned, +otherwise return a new Field instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+
+
+
>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.set_data_axes.html b/docs/1.9.0.1/method/cfdm.core.Field.set_data_axes.html new file mode 100644 index 0000000000..83206c988c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.set_data_axes.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.Field.set_data_axes — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.set_data_axes

+
+
+Field.set_data_axes(axes, key=None, _shape=None)[source]
+

Sets the axes spanned by the construct data.

+

Specifically, sets the domain axis constructs spanned by the +data of the field or of a metadata construct.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
axes: sequence of str

The identifiers of the domain axis constructs spanned by +the data of the field or of a metadata construct.

+
+
Parameter example:

axes='domainaxis1'

+
+
Parameter example:

axes=['domainaxis1']

+
+
Parameter example:

axes=['domainaxis1', 'domainaxis0']

+
+
+
+
key: str, optional

Specify a metadata construct, instead of the field +construct.

+
+
Parameter example:

key='domainancillary1'

+
+
+
+
+
+
Returns
+

None

+
+
+

Examples:

+

Set the domain axis constructs spanned by the data of the field +construct:

+
>>> f = cfdm.core.Field()
+>>> f.set_data_axes(['domainaxis0', 'domainaxis1'])
+>>> f.get_data_axes()
+('domainaxis0', 'domainaxis1')
+
+
+

Set the domain axis constructs spanned by the data of a metadata +construct:

+
>>> f = cfdm.core.example_field(5)
+>>> f.set_data_axes(['domainaxis1'], key='dimensioncoordinate1')
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.set_properties.html b/docs/1.9.0.1/method/cfdm.core.Field.set_properties.html new file mode 100644 index 0000000000..e7d14448ca --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Field.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.set_properties

+
+
+Field.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Field.set_property.html b/docs/1.9.0.1/method/cfdm.core.Field.set_property.html new file mode 100644 index 0000000000..ffdde04d58 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Field.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Field.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Field.set_property

+
+
+Field.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Field()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.__deepcopy__.html new file mode 100644 index 0000000000..b12da1beef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.FieldAncillary.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.__deepcopy__

+
+
+FieldAncillary.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.FieldAncillary()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_method_exclusions.html new file mode 100644 index 0000000000..b33cc77c77 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.FieldAncillary._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary._docstring_method_exclusions

+
+
+FieldAncillary._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_package_depth.html new file mode 100644 index 0000000000..14f0200c46 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.FieldAncillary._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary._docstring_package_depth

+
+
+FieldAncillary._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_special_substitutions.html new file mode 100644 index 0000000000..0d777eb3a6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.FieldAncillary._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary._docstring_special_substitutions

+
+
+classmethod FieldAncillary._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_substitutions.html new file mode 100644 index 0000000000..62917a7461 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.FieldAncillary._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary._docstring_substitutions

+
+
+FieldAncillary._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.clear_properties.html new file mode 100644 index 0000000000..63d115a6d9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.FieldAncillary.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.clear_properties

+
+
+FieldAncillary.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.copy.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.copy.html new file mode 100644 index 0000000000..c24487d548 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.FieldAncillary.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.copy

+
+
+FieldAncillary.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
FieldAncillary

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_data.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_data.html new file mode 100644 index 0000000000..fd9e9f271d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.FieldAncillary.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.del_data

+
+
+FieldAncillary.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_property.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_property.html new file mode 100644 index 0000000000..4ce7689986 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.FieldAncillary.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.del_property

+
+
+FieldAncillary.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_data.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_data.html new file mode 100644 index 0000000000..5b4c080bef --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.FieldAncillary.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.get_data

+
+
+FieldAncillary.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_property.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_property.html new file mode 100644 index 0000000000..d024cb69a4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.FieldAncillary.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.get_property

+
+
+FieldAncillary.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_bounds.html new file mode 100644 index 0000000000..edc77cdc4d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.FieldAncillary.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.has_bounds

+
+
+FieldAncillary.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_data.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_data.html new file mode 100644 index 0000000000..2bfeb7e934 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.FieldAncillary.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.has_data

+
+
+FieldAncillary.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_property.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_property.html new file mode 100644 index 0000000000..755a40564c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.FieldAncillary.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.has_property

+
+
+FieldAncillary.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.properties.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.properties.html new file mode 100644 index 0000000000..c131f18d15 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.FieldAncillary.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.properties

+
+
+FieldAncillary.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_data.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_data.html new file mode 100644 index 0000000000..b42f380b29 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.FieldAncillary.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.set_data

+
+
+FieldAncillary.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified FieldAncillary instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or FieldAncillary

If the operation was in-place then None is returned, +otherwise return a new FieldAncillary instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_properties.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_properties.html new file mode 100644 index 0000000000..10cd2f513d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.FieldAncillary.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.set_properties

+
+
+FieldAncillary.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_property.html b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_property.html new file mode 100644 index 0000000000..dc62624386 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.FieldAncillary.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.FieldAncillary.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.FieldAncillary.set_property

+
+
+FieldAncillary.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.FieldAncillary()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.__deepcopy__.html new file mode 100644 index 0000000000..165e533c43 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.InteriorRing.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.__deepcopy__

+
+
+InteriorRing.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.InteriorRing()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_method_exclusions.html new file mode 100644 index 0000000000..beb1361e76 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.InteriorRing._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing._docstring_method_exclusions

+
+
+InteriorRing._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_package_depth.html new file mode 100644 index 0000000000..e17a2f85fe --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.InteriorRing._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing._docstring_package_depth

+
+
+InteriorRing._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_special_substitutions.html new file mode 100644 index 0000000000..8028957e5c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.InteriorRing._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing._docstring_special_substitutions

+
+
+classmethod InteriorRing._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_substitutions.html new file mode 100644 index 0000000000..6faabed3d0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.InteriorRing._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing._docstring_substitutions

+
+
+InteriorRing._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.clear_properties.html new file mode 100644 index 0000000000..c5feec65d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.InteriorRing.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.clear_properties

+
+
+InteriorRing.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.copy.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.copy.html new file mode 100644 index 0000000000..d523026f32 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.InteriorRing.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.copy

+
+
+InteriorRing.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
InteriorRing

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_data.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_data.html new file mode 100644 index 0000000000..03acc307b7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.InteriorRing.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.del_data

+
+
+InteriorRing.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_property.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_property.html new file mode 100644 index 0000000000..ecf5715740 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.InteriorRing.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.del_property

+
+
+InteriorRing.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_data.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_data.html new file mode 100644 index 0000000000..a129591801 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.InteriorRing.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.get_data

+
+
+InteriorRing.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_property.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_property.html new file mode 100644 index 0000000000..32cfdc2180 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.InteriorRing.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.get_property

+
+
+InteriorRing.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_bounds.html new file mode 100644 index 0000000000..d1893759c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.InteriorRing.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.has_bounds

+
+
+InteriorRing.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_data.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_data.html new file mode 100644 index 0000000000..a6e7ac9af9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.InteriorRing.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.has_data

+
+
+InteriorRing.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_property.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_property.html new file mode 100644 index 0000000000..722936ea65 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.InteriorRing.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.has_property

+
+
+InteriorRing.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.properties.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.properties.html new file mode 100644 index 0000000000..efb0fd9ca6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.InteriorRing.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.properties

+
+
+InteriorRing.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_data.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_data.html new file mode 100644 index 0000000000..80db353510 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.InteriorRing.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.set_data

+
+
+InteriorRing.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified InteriorRing instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or InteriorRing

If the operation was in-place then None is returned, +otherwise return a new InteriorRing instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_properties.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_properties.html new file mode 100644 index 0000000000..d15db777e4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.InteriorRing.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.set_properties

+
+
+InteriorRing.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_property.html b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_property.html new file mode 100644 index 0000000000..5514e355ae --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.InteriorRing.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.InteriorRing.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.InteriorRing.set_property

+
+
+InteriorRing.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.InteriorRing()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_method_exclusions.html new file mode 100644 index 0000000000..0f07d34599 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.NumpyArray._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray._docstring_method_exclusions

+
+
+NumpyArray._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_package_depth.html new file mode 100644 index 0000000000..9c51eb62ce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.NumpyArray._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray._docstring_package_depth

+
+
+NumpyArray._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_special_substitutions.html new file mode 100644 index 0000000000..e9b106fa6c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.NumpyArray._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray._docstring_special_substitutions

+
+
+classmethod NumpyArray._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_substitutions.html new file mode 100644 index 0000000000..39ea4db4ac --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.NumpyArray._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.NumpyArray._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray._docstring_substitutions

+
+
+NumpyArray._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.NumpyArray.copy.html b/docs/1.9.0.1/method/cfdm.core.NumpyArray.copy.html new file mode 100644 index 0000000000..e7a6ead4ad --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.NumpyArray.copy.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.NumpyArray.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.NumpyArray.copy

+
+
+NumpyArray.copy()[source]
+

Return a deep copy of the array.

+

a.copy() is equivalent to ``copy.deepcopy(a).

+

Copy-on-write is employed. Therefore, after copying, care must be +taken when making in-place modifications to attributes of either +the original or the new copy.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
Returns
+
+
NumpyArray

The deep copy.

+
+
+
+
+

Examples:

+
>>> b = a.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Parameters.__deepcopy__.html new file mode 100644 index 0000000000..550f3a75ba --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Parameters.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.__deepcopy__

+
+
+Parameters.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Parameters()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_method_exclusions.html new file mode 100644 index 0000000000..1772d25439 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Parameters._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters._docstring_method_exclusions

+
+
+Parameters._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_package_depth.html new file mode 100644 index 0000000000..c56204044b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Parameters._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters._docstring_package_depth

+
+
+Parameters._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_special_substitutions.html new file mode 100644 index 0000000000..906bd487d7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Parameters._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters._docstring_special_substitutions

+
+
+classmethod Parameters._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_substitutions.html new file mode 100644 index 0000000000..b93a63b96c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Parameters._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters._docstring_substitutions

+
+
+Parameters._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.Parameters.clear_parameters.html new file mode 100644 index 0000000000..1b51e9b0db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Parameters.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.clear_parameters

+
+
+Parameters.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.copy.html b/docs/1.9.0.1/method/cfdm.core.Parameters.copy.html new file mode 100644 index 0000000000..834e5357fc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Parameters.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.copy

+
+
+Parameters.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Parameters

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.Parameters.del_parameter.html new file mode 100644 index 0000000000..bbfe3fb914 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.Parameters.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.del_parameter

+
+
+Parameters.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.Parameters.get_parameter.html new file mode 100644 index 0000000000..b5bfc86e9b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.Parameters.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.get_parameter

+
+
+Parameters.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.has_parameter.html b/docs/1.9.0.1/method/cfdm.core.Parameters.has_parameter.html new file mode 100644 index 0000000000..beba7c1d46 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Parameters.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.has_parameter

+
+
+Parameters.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.parameters.html b/docs/1.9.0.1/method/cfdm.core.Parameters.parameters.html new file mode 100644 index 0000000000..b6d63da0e8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Parameters.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.parameters

+
+
+Parameters.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameter.html new file mode 100644 index 0000000000..813cb92d92 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.Parameters.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.set_parameter

+
+
+Parameters.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameters.html new file mode 100644 index 0000000000..32f5c1c166 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Parameters.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Parameters.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Parameters.set_parameters

+
+
+Parameters.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.__deepcopy__.html new file mode 100644 index 0000000000..6a17d8505b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.__deepcopy__

+
+
+ParametersDomainAncillaries.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries.html new file mode 100644 index 0000000000..63c98e9dd8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries

+
+
+ParametersDomainAncillaries.clear_domain_ancillaries()[source]
+

Remove all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_parameters.html new file mode 100644 index 0000000000..a5f2516689 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.clear_parameters.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.clear_parameters

+
+
+ParametersDomainAncillaries.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.copy.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.copy.html new file mode 100644 index 0000000000..0cc12ab613 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.copy

+
+
+ParametersDomainAncillaries.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
ParametersDomainAncillaries

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary.html new file mode 100644 index 0000000000..5dac0764c9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.del_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.del_domain_ancillary

+
+
+ParametersDomainAncillaries.del_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Delete a domain ancillary.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the domain ancillary to be deleted.

+
+
Parameter example:

domain_ancillary='orog'

+
+
+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed domain ancillary key.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_parameter.html new file mode 100644 index 0000000000..90bd079a7c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.del_parameter.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.del_parameter

+
+
+ParametersDomainAncillaries.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries.html new file mode 100644 index 0000000000..8b445d90c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries.html @@ -0,0 +1,195 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.domain_ancillaries

+
+
+ParametersDomainAncillaries.domain_ancillaries()[source]
+

Return all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary.html new file mode 100644 index 0000000000..8a299d68e5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.get_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.get_domain_ancillary

+
+
+ParametersDomainAncillaries.get_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Return a domain ancillary term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_parameter.html new file mode 100644 index 0000000000..78c3a7466c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.get_parameter.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.get_parameter

+
+
+ParametersDomainAncillaries.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary.html new file mode 100644 index 0000000000..af987bd73d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.has_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.has_domain_ancillary

+
+
+ParametersDomainAncillaries.has_domain_ancillary(domain_ancillary)[source]
+

Whether a domain ancillary has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_parameter.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_parameter.html new file mode 100644 index 0000000000..f5b8d86207 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.has_parameter.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.has_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.has_parameter

+
+
+ParametersDomainAncillaries.has_parameter(parameter)[source]
+

Whether a parameter has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
Parameter example:

parameter='geoid_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the parameter has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.parameters.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.parameters.html new file mode 100644 index 0000000000..045bf37f37 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.parameters

+
+
+ParametersDomainAncillaries.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries.html new file mode 100644 index 0000000000..f0b1a99dbf --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries.html @@ -0,0 +1,206 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries

+
+
+ParametersDomainAncillaries.set_domain_ancillaries(domain_ancillaries, copy=True)[source]
+

Set domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillaries: dict

Store the domain ancillaries from the dictionary supplied.

+
+
Parameter example:

domain_ancillaries={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +domain_ancillaries parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary.html new file mode 100644 index 0000000000..496975c5f7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.set_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.set_domain_ancillary

+
+
+ParametersDomainAncillaries.set_domain_ancillary(term, value, copy=True)[source]
+

Set an domain ancillary-valued term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
term: str

The name of the term to be set.

+
+
value:

The value for the term.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameter.html new file mode 100644 index 0000000000..92adbdeecd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameter.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.set_parameter

+
+
+ParametersDomainAncillaries.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameters.html new file mode 100644 index 0000000000..461de16729 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.ParametersDomainAncillaries.set_parameters.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.ParametersDomainAncillaries.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.ParametersDomainAncillaries.set_parameters

+
+
+ParametersDomainAncillaries.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.Properties.__deepcopy__.html new file mode 100644 index 0000000000..f398b6371d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.Properties.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.__deepcopy__

+
+
+Properties.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Properties()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_method_exclusions.html new file mode 100644 index 0000000000..492119474c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Properties._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties._docstring_method_exclusions

+
+
+Properties._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_package_depth.html new file mode 100644 index 0000000000..d3f363bdee --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.Properties._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties._docstring_package_depth

+
+
+Properties._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_special_substitutions.html new file mode 100644 index 0000000000..a4560719e7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.Properties._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties._docstring_special_substitutions

+
+
+classmethod Properties._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_substitutions.html new file mode 100644 index 0000000000..326b8632b1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Properties._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties._docstring_substitutions

+
+
+Properties._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.Properties.clear_properties.html new file mode 100644 index 0000000000..923f719c8a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.Properties.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.clear_properties

+
+
+Properties.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.copy.html b/docs/1.9.0.1/method/cfdm.core.Properties.copy.html new file mode 100644 index 0000000000..56b4bb32cb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.copy.html @@ -0,0 +1,173 @@ + + + + + + + cfdm.core.Properties.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.copy

+
+
+Properties.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Properties

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.del_property.html b/docs/1.9.0.1/method/cfdm.core.Properties.del_property.html new file mode 100644 index 0000000000..2eee21d363 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Properties.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.del_property

+
+
+Properties.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.get_property.html b/docs/1.9.0.1/method/cfdm.core.Properties.get_property.html new file mode 100644 index 0000000000..ccf19f4db4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.Properties.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.get_property

+
+
+Properties.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.Properties.has_bounds.html new file mode 100644 index 0000000000..5d16467783 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.has_bounds.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.Properties.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.has_bounds

+
+
+Properties.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.9.0.0

+
+
+

See also

+

has_data

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.has_data.html b/docs/1.9.0.1/method/cfdm.core.Properties.has_data.html new file mode 100644 index 0000000000..d976a9d0d4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.has_data.html @@ -0,0 +1,171 @@ + + + + + + + cfdm.core.Properties.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.has_data

+
+
+Properties.has_data()[source]
+

Whether or not the construct has data.

+

Properties instances never have data.

+
+

New in version (cfdm): 1.9.0.0

+
+
+
Returns
+

False

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.has_property.html b/docs/1.9.0.1/method/cfdm.core.Properties.has_property.html new file mode 100644 index 0000000000..7d758a8008 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.Properties.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.has_property

+
+
+Properties.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.properties.html b/docs/1.9.0.1/method/cfdm.core.Properties.properties.html new file mode 100644 index 0000000000..02a2637183 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.Properties.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.properties

+
+
+Properties.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.set_properties.html b/docs/1.9.0.1/method/cfdm.core.Properties.set_properties.html new file mode 100644 index 0000000000..c69b938a91 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.Properties.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.set_properties

+
+
+Properties.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.Properties.set_property.html b/docs/1.9.0.1/method/cfdm.core.Properties.set_property.html new file mode 100644 index 0000000000..a8c3d3dc74 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.Properties.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.Properties.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.Properties.set_property

+
+
+Properties.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.__deepcopy__.html new file mode 100644 index 0000000000..937bbcf1f8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.PropertiesData.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.__deepcopy__

+
+
+PropertiesData.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.PropertiesData()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_method_exclusions.html new file mode 100644 index 0000000000..b3f75865fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesData._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData._docstring_method_exclusions

+
+
+PropertiesData._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_package_depth.html new file mode 100644 index 0000000000..15bed18319 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.PropertiesData._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData._docstring_package_depth

+
+
+PropertiesData._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_special_substitutions.html new file mode 100644 index 0000000000..ce91fcc3ee --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.PropertiesData._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData._docstring_special_substitutions

+
+
+classmethod PropertiesData._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_substitutions.html new file mode 100644 index 0000000000..1a8953e94b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.PropertiesData._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData._docstring_substitutions

+
+
+PropertiesData._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.clear_properties.html new file mode 100644 index 0000000000..a307b20f3c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesData.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.clear_properties

+
+
+PropertiesData.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.copy.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.copy.html new file mode 100644 index 0000000000..397600bb73 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.PropertiesData.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.copy

+
+
+PropertiesData.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
PropertiesData

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_data.html new file mode 100644 index 0000000000..58e0fcdbd5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.PropertiesData.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.del_data

+
+
+PropertiesData.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_property.html new file mode 100644 index 0000000000..78d1a855f1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.PropertiesData.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.del_property

+
+
+PropertiesData.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_data.html new file mode 100644 index 0000000000..92f1c72ccc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.PropertiesData.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.get_data

+
+
+PropertiesData.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_property.html new file mode 100644 index 0000000000..d5dac78985 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.PropertiesData.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.get_property

+
+
+PropertiesData.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_bounds.html new file mode 100644 index 0000000000..9e2cc92543 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_bounds.html @@ -0,0 +1,178 @@ + + + + + + + cfdm.core.PropertiesData.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.has_bounds

+
+
+PropertiesData.has_bounds()[source]
+

Whether or not there are cell bounds.

+

This is always False.

+
+

New in version (cfdm): 1.7.4

+
+
+

See also

+

has_data

+
+
+
Returns
+
+
bool

Always False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.has_bounds()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_data.html new file mode 100644 index 0000000000..0a54e0ffab --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesData.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.has_data

+
+
+PropertiesData.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_property.html new file mode 100644 index 0000000000..53d95faa2c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesData.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.has_property

+
+
+PropertiesData.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.properties.html new file mode 100644 index 0000000000..69996cb9ed --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.PropertiesData.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.properties

+
+
+PropertiesData.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_data.html new file mode 100644 index 0000000000..fdb76293f9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.PropertiesData.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.set_data

+
+
+PropertiesData.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified PropertiesData instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or PropertiesData

If the operation was in-place then None is returned, +otherwise return a new PropertiesData instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_properties.html new file mode 100644 index 0000000000..de4b152c87 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.PropertiesData.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.set_properties

+
+
+PropertiesData.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_property.html new file mode 100644 index 0000000000..a8efd809cb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesData.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.PropertiesData.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesData.set_property

+
+
+PropertiesData.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.__deepcopy__.html new file mode 100644 index 0000000000..675ddb705a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.__deepcopy__.html @@ -0,0 +1,166 @@ + + + + + + + cfdm.core.PropertiesDataBounds.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.__deepcopy__

+
+
+PropertiesDataBounds.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.PropertiesDataBounds()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions.html new file mode 100644 index 0000000000..625c3a6574 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesDataBounds._docstring_method_exclusions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds._docstring_method_exclusions

+
+
+PropertiesDataBounds._docstring_method_exclusions()[source]
+

Returns method names excluded in the class substitutions.

+

Exclusions for a class may be defined by creating a +__docstring_method_exclusions__ method that returns the sequence +of names of methods to be excluded. These exclusions will also +apply to any child classes.

+

Exclusions may be defined for any reason, but in particular may +be required if a method has a non-rewritable docstring. An +example of method that has a non-rewritable docstring is when the +method is a ‘method_descriptor’ object, such as list.append: any +class that inherits such such a method will need to exclude it, +unless it is explicitly overridden in the child class.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_package_depth, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
set

The names of the methods to exclude from the docstring +substitution process.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_package_depth.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_package_depth.html new file mode 100644 index 0000000000..0ddaba1d68 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_package_depth.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.PropertiesDataBounds._docstring_package_depth — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds._docstring_package_depth

+
+
+PropertiesDataBounds._docstring_package_depth()[source]
+

Returns the class {{package}} substitutions package depth.

+

In docstrings, {{package}} is replaced by the name of the +package, as defined by the first N+1 . (dot) separated fields +of the class’s __module__ attribute.

+

N defaults to 0, but may be set to any non-negative integer, M, by +creating a __docstring_package_depth__ method that returns M.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_substitutions, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
int

The package depth.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions.html new file mode 100644 index 0000000000..9289759617 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.PropertiesDataBounds._docstring_special_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds._docstring_special_substitutions

+
+
+classmethod PropertiesDataBounds._docstring_special_substitutions()[source]
+

Return the special docstring substitutions.

+

{{class}} is replaced by the name of the class.

+

{{class_lower}} is replaced by the name of the class +convert to all lower case.

+

{{package}} is replaced by the name of the package, as defined +by the first N . (dot) separated fields of the class’s +__module__ attribute, where is N determined by +_docstring_package_depth.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_package_depth, +_docstring_method_exclusions, +_docstring_substitutions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Returns
+
+
tuple

The special docstring substitution identifiers.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_substitutions.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_substitutions.html new file mode 100644 index 0000000000..47d69ce55b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds._docstring_substitutions.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.PropertiesDataBounds._docstring_substitutions — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds._docstring_substitutions

+
+
+PropertiesDataBounds._docstring_substitutions()[source]
+

Returns the substitutions that apply to methods of the class.

+

Text to be replaced is specified as a key in the returned +dictionary, with the replacement text defined by the corresponding +value.

+

Special docstring substitutions, as defined by a class’s +_docstring_special_substitutions method, may be used in the +replacement text, and will be substituted as usual.

+

Replacement text may contain other non-special substitutions.

+
+

Note

+

The values are only checked once for embedded +non-special substitutions, so if the embedded +substitution itself contains a non-special substitution +then the latter will not be replaced. This restriction +is to prevent the possibility of infinite recursion.

+
+

A key must be either a str or a re.Pattern object.

+

If a key is a str then the corresponding value must be a string.

+

If a key is a re.Pattern object then the corresponding value +must be a string or a callable, as accepted by the +re.Pattern.sub method.

+
+

New in version (cfdm): 1.8.7.0

+
+
+

See also

+

_docstring_special_substitutions, +_docstring_package_depth, +_docstring_method_exclusions, +__docstring_substitutions__, +__docstring_package_depth__, +__docstring_method_exclusions__

+
+
+
Parameters
+
+
cls: class

The class.

+
+
+
+
Returns
+
+
dict

The docstring substitutions. A dictionary key matches text +in the docstrings, with a corresponding value its +replacement.

+
+
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.clear_properties.html new file mode 100644 index 0000000000..427b036bce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.clear_properties.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesDataBounds.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.clear_properties

+
+
+PropertiesDataBounds.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.copy.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.copy.html new file mode 100644 index 0000000000..16f35561db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.copy.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.PropertiesDataBounds.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.copy

+
+
+PropertiesDataBounds.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
PropertiesDataBounds

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_bounds.html new file mode 100644 index 0000000000..966cc1217c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_bounds.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesDataBounds.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.del_bounds

+
+
+PropertiesDataBounds.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_data.html new file mode 100644 index 0000000000..cfd0ac8b1a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_data.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.PropertiesDataBounds.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.del_data

+
+
+PropertiesDataBounds.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_geometry.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_geometry.html new file mode 100644 index 0000000000..e2a392c960 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesDataBounds.del_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.del_geometry

+
+
+PropertiesDataBounds.del_geometry(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_interior_ring.html new file mode 100644 index 0000000000..32009fb05e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_interior_ring.html @@ -0,0 +1,202 @@ + + + + + + + cfdm.core.PropertiesDataBounds.del_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.del_interior_ring

+
+
+PropertiesDataBounds.del_interior_ring(default=ValueError())[source]
+

Remove the geometry type.

+
+

New in version (cfdm): 1.8.6.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
ÌnteriorRing

The removed interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_property.html new file mode 100644 index 0000000000..2ae89d3583 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.del_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.PropertiesDataBounds.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.del_property

+
+
+PropertiesDataBounds.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_bounds.html new file mode 100644 index 0000000000..db43df6de9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_bounds.html @@ -0,0 +1,200 @@ + + + + + + + cfdm.core.PropertiesDataBounds.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.get_bounds

+
+
+PropertiesDataBounds.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_data.html new file mode 100644 index 0000000000..c26c68d2bb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_data.html @@ -0,0 +1,207 @@ + + + + + + + cfdm.core.PropertiesDataBounds.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.get_data

+
+
+PropertiesDataBounds.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_geometry.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_geometry.html new file mode 100644 index 0000000000..18a79dd09e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_geometry.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesDataBounds.get_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.get_geometry

+
+
+PropertiesDataBounds.get_geometry(default=ValueError())[source]
+

Return the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if the +geometry type has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_interior_ring.html new file mode 100644 index 0000000000..c22baf5dd3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_interior_ring.html @@ -0,0 +1,203 @@ + + + + + + + cfdm.core.PropertiesDataBounds.get_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.get_interior_ring

+
+
+PropertiesDataBounds.get_interior_ring(default=ValueError())[source]
+

Return the interior ring variable for polygon geometries.

+

f.get_interior_ring() is equivalent to f.interior_ring

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if interior +ring data have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
InteriorRing

The interior ring variable.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_property.html new file mode 100644 index 0000000000..1dc1020589 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.get_property.html @@ -0,0 +1,201 @@ + + + + + + + cfdm.core.PropertiesDataBounds.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.get_property

+
+
+PropertiesDataBounds.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_bounds.html new file mode 100644 index 0000000000..460ce3fab3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_bounds.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.PropertiesDataBounds.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.has_bounds

+
+
+PropertiesDataBounds.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_data.html new file mode 100644 index 0000000000..15b08d515b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_data.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesDataBounds.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.has_data

+
+
+PropertiesDataBounds.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_geometry.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_geometry.html new file mode 100644 index 0000000000..5508ebdf9b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_geometry.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.PropertiesDataBounds.has_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.has_geometry

+
+
+PropertiesDataBounds.has_geometry()[source]
+

True if there is a geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

Whether or not there is a geometry type.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_interior_ring.html new file mode 100644 index 0000000000..be841398bc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_interior_ring.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.PropertiesDataBounds.has_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.has_interior_ring

+
+
+PropertiesDataBounds.has_interior_ring()[source]
+

Whether or not there is an interior ring variable.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Returns
+
+
bool

True if there is an interior ring variable, otherwise +False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing: (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_property.html new file mode 100644 index 0000000000..c0cf3472ce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.has_property.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesDataBounds.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.has_property

+
+
+PropertiesDataBounds.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.properties.html new file mode 100644 index 0000000000..1b9792f94e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.PropertiesDataBounds.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.properties

+
+
+PropertiesDataBounds.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_bounds.html new file mode 100644 index 0000000000..a0f90789d2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_bounds.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_bounds

+
+
+PropertiesDataBounds.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_data.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_data.html new file mode 100644 index 0000000000..424b668c4c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_data.html @@ -0,0 +1,218 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_data

+
+
+PropertiesDataBounds.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified PropertiesDataBounds instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or PropertiesDataBounds

If the operation was in-place then None is returned, +otherwise return a new PropertiesDataBounds instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_geometry.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_geometry.html new file mode 100644 index 0000000000..b7bc8ad35e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_geometry.html @@ -0,0 +1,193 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_geometry — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_geometry

+
+
+PropertiesDataBounds.set_geometry(value)[source]
+

Set the geometry type.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
value: str

The geometry type to set.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.read('file.nc')[0]
+>>> c = f.construct('axis=X')
+>>> c.has_geometry()
+True
+>>> c.get_geometry()
+'line'
+>>> b = c.del_geometry()
+>>> c.has_geometry()
+False
+>>> print(c.get_geometry(None))
+None
+
+
+
>>> c.set_geometry(b)
+>>> c.has_geometry()
+True
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_interior_ring.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_interior_ring.html new file mode 100644 index 0000000000..3b42d75a2b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_interior_ring.html @@ -0,0 +1,199 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_interior_ring — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_interior_ring

+
+
+PropertiesDataBounds.set_interior_ring(interior_ring, copy=True)[source]
+

Set the interior_ring.

+
+

New in version (cfdm): 1.8.0

+
+ +
+
Parameters
+
+
interior_ring: InteriorRing

The interior_ring to be inserted.

+
+
copy: bool, optional

If False then do not copy the interior_ring prior to +insertion. By default the interior_ring are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> i = cfdm.core.InteriorRing(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_interior_ring(i)
+>>> c.has_interior_ring()
+True
+>>> i = c.get_interior_ring()
+>>> i
+<InteriorRing: (5, 2) >
+>>> i.data
+<Data(5, 2): [[0, ..., 9]]>
+>>> i.data.shape
+(5, 2)
+>>> c.del_interior_ring()
+<InteriorRing (5, 2) >
+>>> c.has_interior_ring()
+False
+>>> print(c.del_interior_ring(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_properties.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_properties.html new file mode 100644 index 0000000000..6e86582f1d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_properties.html @@ -0,0 +1,204 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_properties

+
+
+PropertiesDataBounds.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_property.html b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_property.html new file mode 100644 index 0000000000..4c9e227e22 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.PropertiesDataBounds.set_property.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.PropertiesDataBounds.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.PropertiesDataBounds.set_property

+
+
+PropertiesDataBounds.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container.__deepcopy__.html new file mode 100644 index 0000000000..950029e97f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.Container.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container.__deepcopy__

+
+
+Container.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Container()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container._del_component.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container._del_component.html new file mode 100644 index 0000000000..a73d23c1d1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container._del_component.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.abstract.Container._del_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container._del_component

+
+
+Container._del_component(component, default=ValueError())[source]
+

Remove a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component to be removed.

+
+
default: optional

Return default if the component has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed component. If unset then default is +returned, if provided.

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container._get_component.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container._get_component.html new file mode 100644 index 0000000000..8a372cbbc0 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container._get_component.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.abstract.Container._get_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container._get_component

+
+
+Container._get_component(component, default=ValueError())[source]
+

Return a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component to be returned.

+
+
default: optional

Return default if the component has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The component. If unset then default is returned, if +provided.

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container._has_component.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container._has_component.html new file mode 100644 index 0000000000..6e9b5ccd49 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container._has_component.html @@ -0,0 +1,180 @@ + + + + + + + cfdm.core.abstract.Container._has_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container._has_component

+
+
+Container._has_component(component)[source]
+

Whether a component has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component:

The name of the component.

+
+
+
+
Returns
+
+
bool

True if the component has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container._set_component.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container._set_component.html new file mode 100644 index 0000000000..1ab0c85668 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container._set_component.html @@ -0,0 +1,179 @@ + + + + + + + cfdm.core.abstract.Container._set_component — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container._set_component

+
+
+Container._set_component(component, value, copy=True)[source]
+

Set a component.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
component: str

The name of the component.

+
+
value:

The value for the component.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> f._set_component('foo', 'bar')
+>>> f._has_component('foo')
+True
+>>> f._get_component('foo')
+'bar'
+>>> f._del_component('foo')
+'bar'
+>>> f._has_component('foo')
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Container.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.Container.copy.html new file mode 100644 index 0000000000..21fb2945d6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Container.copy.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.abstract.Container.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Container.copy

+
+
+Container.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Container

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Container()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.__deepcopy__.html new file mode 100644 index 0000000000..865ea4b78f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.Coordinate.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.__deepcopy__

+
+
+Coordinate.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Coordinate()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.clear_properties.html new file mode 100644 index 0000000000..c60f015ffc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.clear_properties.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.Coordinate.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.clear_properties

+
+
+Coordinate.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.copy.html new file mode 100644 index 0000000000..f956d859c6 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.copy.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.core.abstract.Coordinate.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.copy

+
+
+Coordinate.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
Coordinate

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_bounds.html new file mode 100644 index 0000000000..dc7b07cd6a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_bounds.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.Coordinate.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.del_bounds

+
+
+Coordinate.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_data.html new file mode 100644 index 0000000000..b54342aac2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_data.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.abstract.Coordinate.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.del_data

+
+
+Coordinate.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_property.html new file mode 100644 index 0000000000..7fea8fefce --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.del_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.Coordinate.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.del_property

+
+
+Coordinate.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_bounds.html new file mode 100644 index 0000000000..1bcb3f20dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_bounds.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.abstract.Coordinate.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.get_bounds

+
+
+Coordinate.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_data.html new file mode 100644 index 0000000000..ca82f7a650 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_data.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.abstract.Coordinate.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.get_data

+
+
+Coordinate.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_property.html new file mode 100644 index 0000000000..b3ea83a3cd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.get_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.Coordinate.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.get_property

+
+
+Coordinate.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_bounds.html new file mode 100644 index 0000000000..a349a8fdc8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_bounds.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.core.abstract.Coordinate.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.has_bounds

+
+
+Coordinate.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_data.html new file mode 100644 index 0000000000..b6fa9e0e27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_data.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.Coordinate.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.has_data

+
+
+Coordinate.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_property.html new file mode 100644 index 0000000000..f57db23317 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.has_property.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.Coordinate.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.has_property

+
+
+Coordinate.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.properties.html new file mode 100644 index 0000000000..6e9bf999d8 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.properties.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.Coordinate.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.properties

+
+
+Coordinate.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_bounds.html new file mode 100644 index 0000000000..f2e4470ec9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_bounds.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.abstract.Coordinate.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.set_bounds

+
+
+Coordinate.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.Coordinate()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_data.html new file mode 100644 index 0000000000..f797b2f989 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_data.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.abstract.Coordinate.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.set_data

+
+
+Coordinate.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified Coordinate instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or Coordinate

If the operation was in-place then None is returned, +otherwise return a new Coordinate instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_properties.html new file mode 100644 index 0000000000..d6a8e9599f --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.Coordinate.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.set_properties

+
+
+Coordinate.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_property.html new file mode 100644 index 0000000000..4482eb4c11 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Coordinate.set_property.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.abstract.Coordinate.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Coordinate.set_property

+
+
+Coordinate.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Coordinate()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.__deepcopy__.html new file mode 100644 index 0000000000..be0d2a97db --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.Parameters.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.__deepcopy__

+
+
+Parameters.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Parameters()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.clear_parameters.html new file mode 100644 index 0000000000..ba03b79e33 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.clear_parameters.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.Parameters.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.clear_parameters

+
+
+Parameters.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.copy.html new file mode 100644 index 0000000000..d7a8aaff00 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.copy.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.abstract.Parameters.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.copy

+
+
+Parameters.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Parameters

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.del_parameter.html new file mode 100644 index 0000000000..191e26baeb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.del_parameter.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.abstract.Parameters.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.del_parameter

+
+
+Parameters.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_parameter, has_parameter, parameters, +set_parameter

+
+
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.get_parameter.html new file mode 100644 index 0000000000..8721602104 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.get_parameter.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.abstract.Parameters.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.get_parameter

+
+
+Parameters.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.parameters.html new file mode 100644 index 0000000000..28d713ba29 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.parameters.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.Parameters.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.parameters

+
+
+Parameters.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

clear_parameters, get_parameter, has_parameter +set_parameters

+
+
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameter.html new file mode 100644 index 0000000000..6fbafeedb3 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameter.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.abstract.Parameters.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.set_parameter

+
+
+Parameters.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameters.html new file mode 100644 index 0000000000..b3f157a451 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Parameters.set_parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.Parameters.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Parameters.set_parameters

+
+
+Parameters.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Parameters()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__.html new file mode 100644 index 0000000000..70e73d6c09 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__

+
+
+ParametersDomainAncillaries.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries.html new file mode 100644 index 0000000000..5ef10d8088 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries

+
+
+ParametersDomainAncillaries.clear_domain_ancillaries()[source]
+

Remove all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters.html new file mode 100644 index 0000000000..0c2b926932 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters

+
+
+ParametersDomainAncillaries.clear_parameters()[source]
+

Remove all parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The parameters that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.copy.html new file mode 100644 index 0000000000..1634f7eb32 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.copy.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.copy

+
+
+ParametersDomainAncillaries.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
ParametersDomainAncillaries

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary.html new file mode 100644 index 0000000000..b22669bc0d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary

+
+
+ParametersDomainAncillaries.del_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Delete a domain ancillary.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the domain ancillary to be deleted.

+
+
Parameter example:

domain_ancillary='orog'

+
+
+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
str

The removed domain ancillary key.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter.html new file mode 100644 index 0000000000..338b87dd40 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.del_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.del_parameter

+
+
+ParametersDomainAncillaries.del_parameter(parameter, default=ValueError())[source]
+

Delete a parameter.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

get_parameter, has_parameter, parameters, +set_parameter

+
+
+
Parameters
+
+
parameter: str

The name of the parameter to be deleted.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed parameter value.

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries.html new file mode 100644 index 0000000000..1173e9f068 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries.html @@ -0,0 +1,185 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries

+
+
+ParametersDomainAncillaries.domain_ancillaries()[source]
+

Return all domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The domain ancillaries.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary.html new file mode 100644 index 0000000000..aedcf6efe9 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary

+
+
+ParametersDomainAncillaries.get_domain_ancillary(domain_ancillary, default=ValueError())[source]
+

Return a domain ancillary term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillary: str

The name of the term.

+
+
default: optional

Return the value of the default parameter if the domain +ancillary term has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The domain ancillary construct key.

+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter.html new file mode 100644 index 0000000000..20853fe72c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter.html @@ -0,0 +1,182 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.get_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.get_parameter

+
+
+ParametersDomainAncillaries.get_parameter(parameter, default=ValueError())[source]
+

Get a parameter value.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
parameter: str

The name of the parameter.

+
+
default: optional

Return the value of the default parameter if the +parameter has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the parameter.

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.parameters.html new file mode 100644 index 0000000000..69a3217364 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.parameters.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.parameters

+
+
+ParametersDomainAncillaries.parameters()[source]
+

Return all parameters.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

clear_parameters, get_parameter, has_parameter +set_parameters

+
+
+
Returns
+
+
dict

The parameters.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries.html new file mode 100644 index 0000000000..e953fb25aa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries.html @@ -0,0 +1,196 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries

+
+
+ParametersDomainAncillaries.set_domain_ancillaries(domain_ancillaries, copy=True)[source]
+

Set domain_ancillaries.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
domain_ancillaries: dict

Store the domain ancillaries from the dictionary supplied.

+
+
Parameter example:

domain_ancillaries={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +domain_ancillaries parameter are not copied before +insertion. By default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.domain_ancillaries()
+{}
+>>> d = {'a': 'domainancillary0',
+...      'b': 'domainancillary1',
+...      'orog': 'domainancillary2'}
+>>> f.set_domain_ancillaries(d)
+>>> f.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
>>> old = f.clear_domain_ancillaries()
+>>> f.domain_ancillaries()
+{}
+>>> old
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary.html new file mode 100644 index 0000000000..374a101636 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary

+
+
+ParametersDomainAncillaries.set_domain_ancillary(term, value, copy=True)[source]
+

Set an domain ancillary-valued term.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
term: str

The name of the term to be set.

+
+
value:

The value for the term.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.ParametersDomainAncillaries()
+>>> c.set_domain_ancillary('orog', 'domainancillary2')
+>>> c.has_domain_ancillary('orog')
+True
+>>> c.get_domain_ancillary('orog')
+'domainancillary2'
+>>> c.del_domain_ancillary('orog')
+'domainancillary2'
+>>> c.has_domain_ancillary('orog')
+False
+>>> print(c.del_domain_ancillary('orog', None))
+None
+>>> print(c.get_domain_ancillary('orog', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter.html new file mode 100644 index 0000000000..1482164b55 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter.html @@ -0,0 +1,175 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.set_parameter — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.set_parameter

+
+
+ParametersDomainAncillaries.set_parameter(term, value, copy=True)[source]
+

Set a parameter-valued term.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

parameters

+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.set_parameter('earth_radius', 6371007)
+>>> f.has_parameter('earth_radius')
+True
+>>> f.get_parameter('earth_radius')
+6371007
+>>> f.del_parameter('earth_radius')
+6371007
+>>> f.has_parameter('earth_radius')
+False
+>>> print(f.del_parameter('earth_radius', None))
+None
+>>> print(f.get_parameter('earth_radius', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters.html b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters.html new file mode 100644 index 0000000000..04904ac05d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.ParametersDomainAncillaries.set_parameters — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.ParametersDomainAncillaries.set_parameters

+
+
+ParametersDomainAncillaries.set_parameters(parameters, copy=True)[source]
+

Set parameters.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
parameters: dict

Store the parameters from the dictionary supplied.

+
+
Parameter example:

parameters={'earth_radius': 6371007}

+
+
+
+
copy: bool, optional

If False then any parameter values provided by the +parameters parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.ParametersDomainAncillaries()
+>>> f.parameters()
+{}
+>>> p = {'standard_parallel': 25.0,
+...      'longitude_of_central_meridian': 265.0,
+...      'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(p)
+>>> f.parameters()
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+
+
+
>>> old = f.clear_parameters()
+>>> old
+{'standard_parallel': 25.0,
+ 'longitude_of_central_meridian': 265.0,
+ 'latitude_of_projection_origin': 25.0}
+>>> f.set_parameters(old)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.__deepcopy__.html new file mode 100644 index 0000000000..540511fdb2 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.Properties.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.__deepcopy__

+
+
+Properties.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.Properties()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.clear_properties.html new file mode 100644 index 0000000000..bb5ae1ddaa --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.clear_properties.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.Properties.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.clear_properties

+
+
+Properties.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.copy.html new file mode 100644 index 0000000000..70626fbd2c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.copy.html @@ -0,0 +1,163 @@ + + + + + + + cfdm.core.abstract.Properties.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.copy

+
+
+Properties.copy()[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+
+

New in version (cfdm): 1.7.0

+
+
+
Returns
+
+
Properties

The deep copy.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> g = f.copy()
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.del_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.del_property.html new file mode 100644 index 0000000000..8908475a94 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.del_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.Properties.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.del_property

+
+
+Properties.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.get_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.get_property.html new file mode 100644 index 0000000000..a2143a455e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.get_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.Properties.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.get_property

+
+
+Properties.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.has_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.has_property.html new file mode 100644 index 0000000000..9ff836da27 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.has_property.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.Properties.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.has_property

+
+
+Properties.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.properties.html new file mode 100644 index 0000000000..3cf31a4462 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.properties.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.Properties.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.properties

+
+
+Properties.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_properties.html new file mode 100644 index 0000000000..bcc91ef5c7 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.Properties.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.set_properties

+
+
+Properties.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_property.html new file mode 100644 index 0000000000..54bf196d17 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.Properties.set_property.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.abstract.Properties.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.Properties.set_property

+
+
+Properties.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.Properties()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.__deepcopy__.html new file mode 100644 index 0000000000..d55002526a --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.PropertiesData.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.__deepcopy__

+
+
+PropertiesData.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.PropertiesData()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.clear_properties.html new file mode 100644 index 0000000000..e1d6fc54dc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.clear_properties.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.PropertiesData.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.clear_properties

+
+
+PropertiesData.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.copy.html new file mode 100644 index 0000000000..fa9dae8e06 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.copy.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.core.abstract.PropertiesData.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.copy

+
+
+PropertiesData.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
PropertiesData

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_data.html new file mode 100644 index 0000000000..120306a737 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_data.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.abstract.PropertiesData.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.del_data

+
+
+PropertiesData.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_property.html new file mode 100644 index 0000000000..df26eedaf5 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.del_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.PropertiesData.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.del_property

+
+
+PropertiesData.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_data.html new file mode 100644 index 0000000000..38548f0e9b --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_data.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.abstract.PropertiesData.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.get_data

+
+
+PropertiesData.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_property.html new file mode 100644 index 0000000000..7dc3458e88 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.get_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.PropertiesData.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.get_property

+
+
+PropertiesData.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_data.html new file mode 100644 index 0000000000..95b737b3bc --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_data.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.PropertiesData.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.has_data

+
+
+PropertiesData.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_property.html new file mode 100644 index 0000000000..c5e797fd40 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.has_property.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.PropertiesData.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.has_property

+
+
+PropertiesData.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.properties.html new file mode 100644 index 0000000000..2c8b6d4b79 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.properties.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.PropertiesData.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.properties

+
+
+PropertiesData.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_data.html new file mode 100644 index 0000000000..034ed90c1d --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_data.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.abstract.PropertiesData.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.set_data

+
+
+PropertiesData.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified PropertiesData instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or PropertiesData

If the operation was in-place then None is returned, +otherwise return a new PropertiesData instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_properties.html new file mode 100644 index 0000000000..47bf3dae5c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.PropertiesData.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.set_properties

+
+
+PropertiesData.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_property.html new file mode 100644 index 0000000000..0e4463a5c4 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesData.set_property.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.abstract.PropertiesData.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesData.set_property

+
+
+PropertiesData.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesData()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__.html new file mode 100644 index 0000000000..e68cf40196 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__.html @@ -0,0 +1,156 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.__deepcopy__ — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.__deepcopy__

+
+
+PropertiesDataBounds.__deepcopy__(memo)[source]
+

Called by the copy.deepcopy function.

+

x.__deepcopy__() <==> copy.deepcopy(x)

+
+

New in version (cfdm): 1.7.0

+
+

Examples:

+
>>> import copy
+>>> f = cfdm.core.PropertiesDataBounds()
+>>> g = copy.deepcopy(f)
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.clear_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.clear_properties.html new file mode 100644 index 0000000000..b27a89a4d1 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.clear_properties.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.clear_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.clear_properties

+
+
+PropertiesDataBounds.clear_properties()[source]
+

Remove all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties that have been removed.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.copy.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.copy.html new file mode 100644 index 0000000000..4d1e914e3e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.copy.html @@ -0,0 +1,176 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.copy — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.copy

+
+
+PropertiesDataBounds.copy(data=True)[source]
+

Return a deep copy.

+

f.copy() is equivalent to copy.deepcopy(f).

+

Arrays within Data instances are copied with a +copy-on-write technique. This means that a copy takes up very +little extra memory, even when the original contains very large +data arrays, and the copy operation is fast.

+
+

New in version (cfdm): 1.7.0

+
+
+
Parameters
+
+
data: bool, optional

If False then do not copy data. By default data are +copied.

+
+
+
+
Returns
+
+
PropertiesDataBounds

The deep copy.

+
+
+
+
+

Examples:

+
>>> g = f.copy()
+>>> g = f.copy(data=False)
+>>> g.has_data()
+False
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_bounds.html new file mode 100644 index 0000000000..40bfec7b49 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_bounds.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.del_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.del_bounds

+
+
+PropertiesDataBounds.del_bounds(default=ValueError())[source]
+

Remove the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds +have not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The removed bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_data.html new file mode 100644 index 0000000000..996336ae77 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_data.html @@ -0,0 +1,192 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.del_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.del_data

+
+
+PropertiesDataBounds.del_data(default=ValueError())[source]
+

Remove the data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, get_data, has_data, set_data

+
+
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The removed data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_property.html new file mode 100644 index 0000000000..0050a44a97 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.del_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.del_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.del_property

+
+
+PropertiesDataBounds.del_property(prop, default=ValueError())[source]
+

Remove a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be removed.

+
+
Parameter example:

prop='long_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The removed property value.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_bounds.html new file mode 100644 index 0000000000..6b2c254081 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_bounds.html @@ -0,0 +1,190 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.get_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.get_bounds

+
+
+PropertiesDataBounds.get_bounds(default=ValueError())[source]
+

Return the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if bounds have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Bounds

The bounds.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_data.html new file mode 100644 index 0000000000..d246b422fd --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_data.html @@ -0,0 +1,197 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.get_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.get_data

+
+
+PropertiesDataBounds.get_data(default=ValueError(), _units=True, _fill_value=True)[source]
+

Return the data.

+

Note that a Data instance is returned. Use its array attribute +to return the data as an independent numpy array.

+

The units, calendar and fill value properties are, if set, +inserted into the data.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
default: optional

Return the value of the default parameter if data have +not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+
+
Data

The data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_property.html new file mode 100644 index 0000000000..f2f084c420 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.get_property.html @@ -0,0 +1,191 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.get_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.get_property

+
+
+PropertiesDataBounds.get_property(prop, default=ValueError())[source]
+

Return a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be returned.

+
+
Parameter example:

prop='standard_name'

+
+
+
+
default: optional

Return the value of the default parameter if the +property has not been set.

+

If set to an Exception instance then it will be +raised instead.

+
+
+
+
Returns
+

The value of the property.

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_bounds.html new file mode 100644 index 0000000000..f1386f9015 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_bounds.html @@ -0,0 +1,181 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.has_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.has_bounds

+
+
+PropertiesDataBounds.has_bounds()[source]
+

Whether or not there are bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
bool

True if there are bounds, otherwise False.

+
+
+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_data.html new file mode 100644 index 0000000000..8efed5e670 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_data.html @@ -0,0 +1,183 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.has_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.has_data

+
+
+PropertiesDataBounds.has_data()[source]
+

Whether or not the construct has data.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, set_data

+
+
+
Returns
+
+
bool

True if data have been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_property.html new file mode 100644 index 0000000000..eaa6c9014e --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.has_property.html @@ -0,0 +1,189 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.has_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.has_property

+
+
+PropertiesDataBounds.has_property(prop)[source]
+

Whether a property has been set.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property.

+
+
Parameter example:

prop='long_name'

+
+
+
+
+
+
Returns
+
+
bool

True if the property has been set, otherwise False.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.properties.html new file mode 100644 index 0000000000..e2898e5b36 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.properties.html @@ -0,0 +1,184 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.properties

+
+
+PropertiesDataBounds.properties()[source]
+

Return all properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Returns
+
+
dict

The properties.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_bounds.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_bounds.html new file mode 100644 index 0000000000..98fb5ce077 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_bounds.html @@ -0,0 +1,187 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.set_bounds — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.set_bounds

+
+
+PropertiesDataBounds.set_bounds(bounds, copy=True)[source]
+

Set the bounds.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
data: Bounds

The bounds to be inserted.

+
+
copy: bool, optional

If False then do not copy the bounds prior to +insertion. By default the bounds are copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> c = cfdm.core.PropertiesDataBounds()
+>>> b = cfdm.core.Bounds(data=cfdm.core.Data(numpy.arange(10).reshape(5, 2)))
+>>> c.set_bounds(b)
+>>> c.has_bounds()
+True
+>>> c.get_bounds()
+<Bounds: (5, 2) >
+>>> b = c.del_bounds()
+>>> b
+<Bounds: (5, 2) >
+>>> c.has_bounds()
+False
+>>> print(c.get_bounds(None))
+None
+>>> print(c.del_bounds(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_data.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_data.html new file mode 100644 index 0000000000..5c1750eb7c --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_data.html @@ -0,0 +1,208 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.set_data — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.set_data

+
+
+PropertiesDataBounds.set_data(data, copy=True, inplace=True)[source]
+

Set the data.

+

The units, calendar and fill value of the incoming Data instance +are removed prior to insertion.

+
+

New in version (cfdm): 1.7.0

+
+
+

See also

+

data, del_data, get_data, has_data

+
+
+
Parameters
+
+
data: data_like

The data to be inserted.

+

A data_like object is any object that can be converted +to a Data object, i.e. numpy array_like objects, +Data objects, and cfdm.core instances that contain +Data objects.

+
+
copy: bool, optional

If False then do not copy the data prior to insertion. By +default the data are copied.

+
+
inplace: bool, optional:

If False then do not do the operation in-place and +return a new, modified PropertiesDataBounds instance. By +default the operation is in-place and None is +returned.

+
+

New in version (cfdm): 1.8.7.0

+
+
+
+
+
Returns
+
+
None or PropertiesDataBounds

If the operation was in-place then None is returned, +otherwise return a new PropertiesDataBounds instance containing the +new data.

+
+
+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_data([1, 2, 3])
+>>> f.has_data()
+True
+>>> f.get_data()
+<Data(3): [1, 2, 3]>
+>>> f.data
+<Data(3): [1, 2, 3]>
+>>> f.del_data()
+<Data(3): [1, 2, 3]>
+>>> g = f.set_data([4, 5, 6], inplace=False)
+>>> g.data
+<Data(3): [4, 5, 6]>
+>>> f.has_data()
+False
+>>> print(f.get_data(None))
+None
+>>> print(f.del_data(None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_properties.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_properties.html new file mode 100644 index 0000000000..0e59dcb611 --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_properties.html @@ -0,0 +1,194 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.set_properties — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.set_properties

+
+
+PropertiesDataBounds.set_properties(properties, copy=True)[source]
+

Set properties.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
properties: dict

Store the properties from the dictionary supplied.

+
+
Parameter example:

properties={'standard_name': 'altitude', 'foo': 'bar'}

+
+
+
+
copy: bool, optional

If False then any property values provided by the +properties parameter are not copied before insertion. By +default they are deep copied.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.properties()
+{}
+>>> f.set_properties({'standard_name': 'air_pressure',
+...                   'long_name': 'Air Pressure'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure'}
+>>> f.set_properties({'standard_name': 'air_pressure', 'foo': 'bar'})
+>>> f.properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.clear_properties()
+{'standard_name': 'air_pressure',
+ 'long_name': 'Air Pressure',
+ 'foo': 'bar'}
+>>> f.properties()
+{}
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_property.html b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_property.html new file mode 100644 index 0000000000..efef2236cb --- /dev/null +++ b/docs/1.9.0.1/method/cfdm.core.abstract.PropertiesDataBounds.set_property.html @@ -0,0 +1,186 @@ + + + + + + + cfdm.core.abstract.PropertiesDataBounds.set_property — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

cfdm.core.abstract.PropertiesDataBounds.set_property

+
+
+PropertiesDataBounds.set_property(prop, value, copy=True)[source]
+

Set a property.

+
+

New in version (cfdm): 1.7.0

+
+ +
+
Parameters
+
+
prop: str

The name of the property to be set.

+
+
value:

The value for the property.

+
+
copy: bool, optional

If True then set a deep copy of value.

+
+
+
+
Returns
+

None

+
+
+

Examples:

+
>>> f = cfdm.core.PropertiesDataBounds()
+>>> f.set_property('project', 'CMIP7')
+>>> f.has_property('project')
+True
+>>> f.get_property('project')
+'CMIP7'
+>>> f.del_property('project')
+'CMIP7'
+>>> f.has_property('project')
+False
+>>> print(f.del_property('project', None))
+None
+>>> print(f.get_property('project', None))
+None
+
+
+
+ +
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/objects.inv b/docs/1.9.0.1/objects.inv new file mode 100644 index 0000000000000000000000000000000000000000..4705bb9bafd07292fa6b9d69778f906071ed8c1e GIT binary patch literal 35729 zcmXt9RX`lUvc)YBf+aWvcXxMpcXxMp4estP!QCwo+})kU9Tw+p?!E7)rl-4Sc6WBV zPMtc{#DvNY7M6A%gqC)0rgkp&PM(BrrcTb5_I89!2*iX6PWD!ih3Z5<&pgvh(h(mp?!J^*>{#5?lac4hniul{;`{@5Qb-F5_cmhKy+3rsJcpLaTB zyPr*~Hl3f_He5#)?Y^Do+Nak9{;3X;V?CBz?rH8~7GYFc_LCP5)^Z^WAu7o=ldmc9 zSO$?|9gL{FQfe#uZnh`8Z!K8AvW|u?J>)MMWh9pJiE4otm%t0{`K=4!I{OxR(a*U1 zt@E$z`(&HFrH_Ie_C409Co{~)(7Y}CuZ`W!$+bZ3c`LckcK|A-mCGXb;DVsY<;SCk zJ;f(JrB&0_A2WB(ZvCtU)x=2(%RypAm5WQd7S@ni+=9X-Pk#=@v^8+i(0g0yt!jKq zYut~hWQ)L(f%oBEj}<)veY&)>4~MNS?COi^1dS*gMeu~%pIX{k;_dmVD};(K`6)}B z(O%`y?g-C&gxc=mzoxfWZ(#?sZ+s+h^v`bLo z!#C?!_1LeL$Gx4q@vygfX-1>`MebZoSJ$j5dvqs+16|Ry6Df&KR%~> zBqhpnT(-8_?!>yXh;?(?9leO@kH`@7x()xa^zOu^w?}TB4U+DN0Zy3iw;9_{mZ)~U z(3_GZ@`c}3x8u_-PcE(>so2cj_^h(qUUcQz+jVA0d3D>@wz7sn=egox(|tDLL`2Ki zWvnMvuYdS?0f)9x;Wm%9ffuvOsEFu7oj7DrTA3L~x7Y08&}lAFE!H6WMK^ihN)LJX zsEe2NL!5mBU$R?~ zB)k-O_57RcrB^RGY|uPjQM{b#MR%>aEWxXf3ZM6&$LuehAkO=EA%Uwm!OSB9zw*fhh`_utk-UauWCyL0Q_*!FD}M%#Vs z?75VY)91bQ9Z5)tRELZfiN{X(1)nu!e%4@-DIOOG;N(un6&DU_Kg) zC|U8K@cb)mIRr=AE>1zoBqaF;M=CmuG|Fx#@%t|lC4-&Bjic~wEY94RqcB1Y&fLa3 zut$}15%BPfOYtEjBW1xOnvc=AVg~cUe>>}_*JrzgJY1nyw-s>jC&~97AY@4f?X#R-xP% zOxFXilo+R5WVaHUb)MYUfX};IzJsA^ooFAZxN@(OD;Dn>0pAI&G%Jv#0WGH`}jP(=GmuFIf=lq^Bt;N4#=f3hlLC1Rqt5T&NP zGt0d*3!X9wXJwFwHzg*V??|v@Q%`r)0m+U74uQ$6Pmg%brxE9&B#l3W$W%pGRD3w@ zlj(_*2sMQ;FtTAZ2{Dl3&qoX!VB{>51vJAYbW}!!PR8kv{0iuMlb?<}-ozVafxlbq zd;@3Nbt;94(>pj$3U*{w<3Hm2N^^7IQ0h{(NJs||9C~z|LVh~?^{_;UhurHQO20T( zprsg6%uAw2nVfj5S)Pf^_e-oK3rL5{ZKl)w36$7Nc92FYaVBAy;hwzUB=roc=1!rT zgG;Sx_S?q%*!#l-0QAt%bGJ8ipnl6Z#F8`ZYs9KS9lF!q_PN+rUD6) zXp^?`)y8TP1z3fQTy%xdR+S1B*|6q?bdgC^D~q9dmU#JguS6EIG^eOy3kswu-xzAZ zcL^sr9%+J74zlcmJsF1)65ZZ2O*?;<35ekNShukzif;>H6#X!(=%beaAN^N2M&D zICk;ltNziTPy(cj`+P4uN>t+4&8o|KFc`0ejl@Clj`3jBPHE;|gY+|J;@hp_fImNS z2}k4M`8_I&MIl~fViohjRH?j49pmW|hEORa9-Ml)E-%4gGh3x!GdOf>-hOj4QXSr% z?Oym@z*bt-ng!NBUHoV~ans7&)@<2 zboSu%((Os2WFL~1Y0E4y)-0i1afaSd@SveQ>6mkky-j~rtP&+6rF-0^70!mS?l|4! zxw#d0Zk!HZdin1A$s?CGgWFfS1-!V~s*^VXTlP9>!D|s6pH$Ybs$1!g4_Ly8Fsli` z)~a(HPv}6kn{z6z34xK~R9HMo?H`~&MXjPN`0F5MiQqeFWPH+}sFda)r^b5@PSx0L z*m-gD%g#2Ib&(FR{^%grv=`E=ZTFd3vH-t$J-4gARAXH4&m6^`$HL@J_?A?%~pSIW0VUzQ^GhMn7 z3n^id!xTso#ZAvI$Miw!xLDB*-Q|+T3}dipKiSR zjp6(p@t?JIA+2WybJHFnV zEo?_x>|wH;Yx=mM{S?5?(7VnZmqc_8zzN+GEjiU;b3@DEDg4Bba$K?QtGOC4r$mS| zTpuT_l$%rFbWMkpWT5L;JyS8$u0q?0S`5jDJGWl=2CCC|Ufcr1!@ z|2du``$M?Qjy>fmnwo9@caIbA;RH**@QcBxY2fJ%aG>0 zKh@d)|8WP~as+D=6rg)<`6{D9ZTc`xc~fuJjjP(C%-K$BcYI6xQ~hU!erRWX_A6c0 zVb9%{_A3hvAeh1T`0o;;@UgvDOPOcf%{wo4RV|m}M*9{bqI%~VtA#(2uRPKVgs1a= z+!M+dRo53{`$JU2rLkVztm$f-Z~x%r3JA>S@*vB-o47V$D|%+b)N zB++T6LNXSj&Qun@CN#(=yb2Ox*;&3^)eSb_K5^T`_T^z-0>Vt%N=|x_QOBKju7Wdg zJd6fxe>FZx^mwJEdjVcXNs>%CpYkl67Hr_pI+FXGcdQkNwn+5D#K|pR>};jdIDeQx zMIzj%!$!NIE+@&V$*1yyYk(1V!`6}k8`~O{$cn4_v!j?GOrc#0uTV*;zLh;4aVUmz zwzqU{=)6s3Kj7tar>1i5G}2PS+lP{t*vNfgz+c@w*?SRy96PEpK|`Ypzyon z_YK5k^laGi2wY7d-Uj|peU7&rxgTQ=l8xMPM@x@?pR6aaTFllEUH_JGH;7!=!4EyI zWCQ<-O(0ZIcH_rxUN5a#kQlHwzdk!iYm|paV2flr!$=`ap1i|QsUxGbyCpgYCai33 zGPX?6GBCYn+GQQBH2n#}LDduxtv2=^&tz7>5bS+@J%lf{+)?pBVr?o{BOJD}3cu@l4h;25FLmT0*@JPVkPWnmB1+lOywEHqnT?@@G~psglxZ2g?L`{-04F1)x^I0C#ruA%b-L z2!Fu(3Isa-E_VRQM{?t5i~l=8)@JMLGtf>0sWSYp5^mR8wpCj6HPshfMLhCovg|?m z$xEj#XI8G^F{|?*tbz1aPEAYjElUyBpuW0!a*+EZW)dupI${@Tn1L}wm_#KnGW}h?VUhyPMO&qB@<|s z*@21@Xqnjn$pS1=YN&akfXJ@n!FWMo{L6)Jg5kM>^v8ns`f0ljWD=D;KZ(-T;phxR zS$U#!1&H$2H)ud@JGA-$jKz&JDx1tB!D@wXvzbJ!#Po%%qE>d=BG!?k7{)|K_YNZ>61k|3eyAs zxaV?#GvQ%WosYBF~25IFHuuF591bvTddmoM$PI7ljU?5w9v7EZGe3Z$VPs(wX(gQAUR39xwybzqhs4hn{ z^jCP48DEN8jAE2mNHPIMY7fK-x$Go*9EG)5?IZ#ng(Kr|65TiA)naj!EH(r#2?ka2 zmWfYA7SYVGGX5IhM~Ips#3+hKjktU*kfXV4&_~`p|PSglUmn3CnU!wVhl;xW$@wXXL)H(O^O0BEGBG2VqIR29AZzh{H>Up`` z6KiCCAKbeZ5mL42noBmQ+&9_s>auFw@`+h9zs)SX)1*g4% zH-C+=j6i5Bw3I8F!pw*vlTM@1+b} z6Twr88yU{$%Y8S_R)r51I=!IBM|`*=wL;4v_2YhP76%90jp5gIjH$sL7F}yHR zG)~vukZ1&=>xeCZ#~vi!*2+pWK7=Hf!nl27XbF8DRj6O3@~XCyS&`-)976?1k*$mG zxpZkiJn2LZGU((StFSDzpVUZaa%X5q8?<-YX^Ey?93zD%9rI7^bI?ndBmB{9z~|U! zsMa6^w~tM|Unx1)6}?Rg=gGZNY_!vYY;~QQU5VD*Eicu&$T4hj&Qxb~@F^`IYDnxQ zG~==l9VHmQyi#RjL|3ZUpAIe&^>UR=Ov~kaMjVXZlVqPr=E}$qWZ=6E=nDxCg$v8$ z$9*=vv0Azg0Lc%36pbqlqu0pbHAC_kAx>p~el8pC>MEoBFGQEU z$!X>fr@{KQ?cKACEj5k4z;$=(#DE58D=l&&g3p6Wu`oG@F-BNoUI0mPKa|{rpH^Uy zN`!9{Rp<;^;wNk14Cy?ODPo3vS&@ircaX-M#WDo8+YZ$ki@m0iI4RyQKX3)@0)nw5 zGdK{RbyRC0kgO3+wPa?kNB#RbAI6NGr&3x@uBt{zaOY(Gqc6gYMiwN{8{tVn+2HC9 zy>FH+d}W)GvCDP}hj(tTY?&0H;KGY|BI6eKsHWDThCBT4DfLDxPbP561c+Y(2ucO;payIr{p0Di@XMj=(dX}5+ z8T89gGIM&CAurI1{US>ZI&6M%mBqFAkM9YX&RfNz0CBx~VugG{)h0BBzmTd%u=#(% z#wMotQ;4iTIY_*T%Aw0;mha^wT2Q7n+C0kJU z+c!?}fA7Y0IrIGSbi2<4S(e}X!58kgRE`#}b1ohA>!pp2e`bVw#1D|GGR;x?Qt%32 zzrX9!rpa$pt|W7T-bNqMLtm4ZIjnMg*e#1Ct}Y+DL^WEyNFRRGrru%fn-K!wGGqne z<(Vy2aUm3!BM3q3I__(Q}VZvpRdFLzIepP0fNt}T&|GhFSAz_ejZoB!tP9O%e zMgm=%^%;E;aNS)k_oT(0T)4v-Ft7vWs;8{%H5_-Z>zQ~TFV`PcIfzh;RZbNzu5JOP zna0&7)K_U`=Ef7Afh}WfmgB=nY@pX1Hl|f$Oph2_#h3FKY8~P7xZLoIi|b#4h~J{0 zKmr~&>t~^=cjNQxJI!#yNA&G7;+JDFUkD)$mKB1k6F@@MBh`UGWw0OBDpn z5K}oz3aU{)et$c1zy*qlr1MMec2trzR#Z8dbQW}+1K_IrxV+g9y+T(wR$Q^F0xr(B z#-wfosk>*NS;qg6$Dr?D zl>)2p@z9LsX^`_+RPI}eTwZtWIak>JxbysyZRGKplbH2pfg|GbJysekbv*@2(xHHr{4lsY+HlmyOm16K;qNZ?#B3CUyAd5Y72-!Z`4HiLdYI zOboSs>J{l7=#@eylaAKP9UitoM0AW}PFjYn6x`KHs7BR@aWztE?f;z|U>kve2)`>c z8^>S?hCaRlMh}(;(iFPxh+Q}W!Nb=+5KZ-0a~G+?oZxW#0ikk#eS8Slc!^M=v~+rs z4i#bJ3RLdCQo*l7@?-QgRCK*~RIWdw=3J@eZSoGYnt`I!yLZ}%k6P|qi}iJ(+?^!> zFR4B=fZxd$zyZixmlTAk(uK)JRjCmB#2kLjl7Pnf%cFKG(xA+}F!DS&ic4p?oN7g) z_Y~u}GpJl9*6BrxZxbX`9I8cq4$7(5A_(B3azC5^if{_{vI5KzHIT?EFlvt*w$^?# z?FCyqE2rmBc=cI&e|fVzDD;*|@Vk?G1cu4PHeT1Qzvl&+ySFYI@Wo7C+Sc~_yrgcf z>IEyGb0q?}HYkw*HIJES?suFCmdMWH-htP^`xQPtC%<9T2fRBHk`dlXu1Ay^SlgdD zO?5!#v~Nr?hL>h^C^ANn7p8OqCY6v^CUgcix4|pJZ><*>+RnC*{JOQ;wD5_BG=AJ+ z+isush%XpC3Z$siT+kN#O_5_@V}un%e*#N$lu%|%_uPCg|8|lv$V}E(vcAUX_mDu6 z8~14o%hH-Xk%D?#0oiLFf@-nYOuTY!ccZhG({^qATLNX<5}|s-!X2FV+#Cz%PKsCS zIpmiKMpkG!X_*F8OnFLyhSqz?ma=si^gwD~cG$WK_f8wR$rC42{X2O5@{ji}dq0Zp z)*hJwXZ>94N{d~3*-(|_zBE!$`uj1B1jMxxRCr2>=;?0k=HtWZC#Pl$%xAuMIZ(QQ zQ&-NyJ7dvVYw6!$5jmfbGza}qjYz&nOvX@v;0mw6cCb(rHl;0eZxk5AR-^L#x0E^b zf<*Xa&;SgokmRAz|KYgAcdu`cJ0bS)Dz3jei%nbsLbn~!xR+prO0A?bbDj=VQZzPN zYGF~CAI3&t({494dIunKn|0o3nF;HD9D~@(ae{iry~l`5zwp z=RZ8QE&-UwuyG>@qQUpuuo0%5*TDYttaOH5w!u{|68&yznQmu1SCa-B*iSUs*i2eO z-858>uRcgpgINa|4h<5SJ=$4wL(l0To-<>N&#)$`BhRMEtLdaA0r5X(o6fTcL213y zwE+6*eJ*lgs2JA=vj5glMJB4o31S)7=Ob=U6nqtyQQfLb>Ofse#zCq~ovUG`w7_~K z#f@sPY_|q>v2-=K9!jl3OqH>1RObV3ptlTn&gfu+a6;)MRY)i{wY1ZB_VxQ2?IBp$-G*Wc8fPs$QO z@9Ahcg#Bs%f(la0eY!{rR4YqGQ_3%T7613;ZMNQzhtIc%WjR1|sB3V)n&sOxKcGDE zUFU}Upv$jX9r)m1=%n*6QNURZN)!a(s)Z$DoM$hhlH3w=QjI{#>Bx(IF?g*eX#ZI#nm~;1g9!TFC!T%5;G%Nx6f9Mq ztthi11#P zB6i7Ij} zm=6MV4EPpcgCD!`#`Dsy6(NZhHYyDuH9r>lmI|E(gnhk>sJ%|b|JX@$5JtM9z?dyD z;;!;b&)bI2XKIhDg=1$C&eMyPZ%-u9n<&}H&ePQkcGlk?Ygf$MfT;Psnm3AD_FI8q z6x4p^OJJLJ>yPP(URKS3;SfL5QfbueLt-tQotW+TK5K%oBXrgJ`Ig2DzW^>Z^>|Ue z>ffGiAKvA@<=r12OP_-{SRUhAqD9@{728H{|e1{Q=0i z0SWV*d85TCy{f(rU_~J$pYK)hoC~>MQhi@K>U3p|Q84Fr!HAkM>u`dAq;AaN$N&j! zO2JG+1(z4w&$ppeqw4@?b7a-rMuOu>(n=Qj?U@u!70%d?Lh|WyMK$10b#uIWxqSV0 zD%c2CwR={65@JaUUmKIzUmLojeA*S?mhP2>+oe;+A9YV;N`u^i=FeTFLU2IGB2Bs2 z%X47Om?tWBPmco!q}8n>5&CR*ZY*EB6wvGC<>WHDYT)j1^W?1xbQ$2;rdrJ5@#bWs zI?Vn46)!_4bQkwao#&>ldQzBQWJljl1Z76+_-tu&K+ycBd@Ei3$@1+3^}{-fI8Zrf z{q)fG^KDIUpm}@UjLURH>TvCC6#HNTEM*jl485xW`(!H7XDsEc5>;nxav90h!r{_d zhm*Y&R(-&gwNYAa#|5LbQx(+SBUZ|Hr9FaF96(~-c=}d#?s zAG2z;;GncPUkJu_foX4>Z58;7hc-c&@|$FF3Ic@~(QDf;qJ)Wc?_KWF22FY|X1;0x zZf`%QY?a+^!>HOi4cNVJU`f)iEaFXg**jhvpt6FBGY7pbe8%z6fZ^p08-xt}veu(H zEB)X!_6FYAaDXIh)^FD?82a6tuq-o5wzCza%AyC?Bd-m$#bu$seVpI5V}a;oe0ut6 zHgWr7FItiwUHcD<99qIxCVTsAa5clUYWB%RTrxggTQsZq!zmA?iPs*(XEBZe5n~lK zEORJux@SMDt#6(9&N@nAPp-I2G4vA-J|c^o^%KxvBa5%qNjQ6nEEm;DpnHfc-_=P( zdx;MEiAnf(UNjCVxAuEw?1NKSeco1BPCTu@I$F&0%i&l(yik>Ewo3Vu4rOPm4qaI+;F z47sSivPjDNE&sBfv(vd#+l_`=%cg< zs)c$Ka%Px03mcsXmoor61Sy5yv%P#iK%O%2xR#W{P;DBu^`|TGzYt$_lg6ll7Wq%! zf7HXjM=d6be-(AN`&dEjg%WX*WWl~}(*aI4ug>qu^C)z)U5Q%@7X`sqo@lQpwZGLn zb`MFT&h+X&hU0xoAv)wg`+9fX0Sm;LBS*mva*fcH^OZqwd;S_J$!H5nQBE|zix5LTR*+9?bo#}n6z2I zZ@FG#1;ny0n=u;2X&6{z))Ujzp+s+eVr)Jhu3sE(9f)3DAlRNbogYNn@7!LlBiJrG zozEfIOcer6L|cuX-3;2<^%7pIh1RQZJAdzGRd#t-2x*t&a+g8ilpgykU0x_2)RfPd zQ4HgkKP{18#g@&8kq>{AvaVA|KtZqunH%=rGE(l3VcIcrM44>r-2)@k43(14yyd5v?zM{+8*!?)JY> zr-5cwwckd|ch*>mL(oc8Qj1sRjtg1udHBenBZH>qdLS%5M5ipR1#y39->vCn-Nj~S zrtcJ6l`B&=S`H&0D>;FDuMnP875Xm|Rrf^oXpu)p6j36q7ro93l5aw!g5Iy}!~z&w z-jf*OH7Qq>M>I=@8gF&k-VdIKZ|T;pJRXb=`e=PZV`$@k-ko_yTf8X`*xzA%MqGa@ zv#m@TrxJzO&eGt@pI7-YDs| zij$5g&i)0{tGy7_#g}Og|HJ?E-DVq{HmLI%s-DX86 zZoTqF>ilrVqW;C|;&SHt<|Xpc+af#VA!QA`5M}=X;{qOqJLBN!Th^Il)FO`c_OGzG zWt^rYk^QPF_Ju9f7|dFBi`IxiM|poEs}(t zM-0i`S_vmV(YeZ62?QU}xtCgrNIy}YbpwX~LgMzm^mv0#ml8VC|5ej z@Dmoz>+Nm~Q(*O>YiGnefKwY(&m?;Z{F!hi?9_`K;X|MUiSyqy@88B(%l5L#%eHru z3vKG3TQ%7e#o20ZmmH+#B$t=?YK~&xF2QcCwtn%Eq1r>muIeO=dWdipa%DLoy2-La zPbHlx9U+QkY%BZJIxNp-rw; zd}X{NjsI%|rcMim_8yMA!BGSIszpydU|1D73zE-Ft6DD^8V+{(_ zTfV?^*Hp|T22rF<^0Z3{u#Qdhl@e~$0K412S~iVy z?Od58S<>y$*hF&wr9;n5Vobvd?(CMRaWnGZw#;@50#h8ip_62j7Q#_^ALwu`beF^c zjVdu2OE@U)v@@I~4`Ej=N+G_VuA3tYm+4#>pc${xRaLUF`FSYWp}Kvg+)@#!!1=oc z#g@b8eiCOI(tq_`?i@wje^vl?rshsi?;E=|mxy;fq{)z23O)3wceGMlt;~-0=1yHX z@I5)BuWn?Q7x&SJq%b9K4yUKnd6{3Q5;VrwNsj%{o;eS*cAt)}B@ey!z>^#UyFQfwo-7G}o<<)Y zo~T`}d_Y*u{^a7(Ylp=-O*)v{HucJQqzo#S$N>3DX4_ftIRcPG9$l+dv0zS??KW#73Y3LT5v8~Iu8!aia z+kn3yNLaQdP9dR=X_5aMh~zEfSFjxSKYS5ED8c*nIXRm-_YNK^a>9KTw}@6A5cnGG z1&+mWKgG4RbWqD5QO%!g-z#|k#A8Ia=lleCzyEl$Ygq3*57Y7kMyhqzmA z;ga85xM$d2VKM(Q9Y1elq+>hObv_1imvrk8@S}l@7WDl`e`?MLb z4*#~L-`^vSAul8My|t703o)Wv^%L^i9?pCPRN|0hPEbH&R#IAbAA?-n65`QB(qk1l zc+8Nk6s|6&Ca809aWem+NoJ;@e_EKy*#Dx*he<6gk%M4vPfpC^n>#)P_~W}fCXj7( zW+Dom`Fn>15jf+zjmCo37yx7SQ}>hSj)W=(=plmJ_b%9boIzZ#cAO>jzGV*o8DKAc zyv*k6b&RwB0WFu)ajK2>p(-c5C%otIBHqhOlyT$i6Fi~+L}PG11|RshT=_RSI%>t0 zZ8H_o?w{&H1&Lz6W3DY7T8Eu+-5CjFVE10n9vX{F?NhBMGIGy)O)Hn^sp{UDY88M` z!B;P?9PLKugGp7thW_S9!xo?8tY4@AfS12KPH;rj2m#0*phA+m=!>lMKR+MJZ#I)Z zZ)fc#5D9g4agIc5(Ij4F-b8pOcQ6|eaDIE|=Za7{9>q-tKc|};3z@`$l;(ZFO)+CB z|HvRH;Pwn{{cW3C@0;2Jq03mll$LgI`5lbvQ6%>L_hWfzaTtu%!yi?GZyJVz8j8U) z?IBc_wn&9?6e=0iR`K@5_ayDeG=o%4z)C%d{Lh4?rqvv!3GXbv z{BGIZM>amG@6bd&ajrFcIa@8pzs}s;U+2@tpIdmdvwj=9d>N_Qc0iv!d3Um#V(&E; zGv^I2avjLU%6Y(zb%pmfb6H}p?wmqzljFHmk`VC!*u0m3##pT)=C@c{txB^WnE*k2 zE-bA7h0Z|3AJc#69&8E%<39v?|6rXD=GP=wL$KICc;1w>9xUJ8cfXDKtnBdrxdvjp zM(%UioR&{dIU+@H5sjs`_pOnZLpbpp_5ujK;G@ql9$Zc71P;Dcw@ud47UMWZjj=sB zu+b0~6aM`XzDlS|^|1tVn)1UPE)wRv%RIcF&eCT!45BqNjY^nzlFO{x=^IYF=|)+Z zYLd0lu0z4m7w&r@M3X4JkdZ{MtwN!u>O+|R?~t9v94VhT51)|MJ^qlY8g8o51kWbK z+YL`{L}eNrxg#(|7y|@Yfc;Oo(H03Uh+ z;OS{EhZ2=7KE~->HGw0rD#jQXIS6mUj_WNQv25=+&>W$4QhSsAY&E>*AJurNwH;(1$6R!-(P{6v zq-&l3?n-+$>=S3LrJALb&sJ^oKFSLQbyvT(e&@3}{^W`0j~>`=3K+A=0{+}48`iST z|Mo5yxVX+X&P#uxHI1aP)qdKCU_XJ>$~~BAKcTaT5N};*+v1(eT_=U@yv!FW5I4}B zoxXe{zMD&oT*dNtqgnpv%(5f>=%MSIqR&LD!K6B&@5p+(T35^o-NyFV4K&FX;ML0NvJ->IclvyJ^xIm8W{%Zi1|#=`W{5SSquiFRJxp ztP7#HJ}ZS(uhfStyr#T!&33xk#mS-~iEVg%{bOI)Wp6^y7~C&?7!OW^KnH#PvE_Amq&lm%WvE3$Cr&=CB*%x@;YPsLP?dEvu!6{4gE#U+W=YTRv)TX9MUqx=bR#0P;TeLAS}{vsLEmLb?dH z<=W-L$N?VyJe4-bU=30HP))^~;t_ASqXf_&>YJ{9j5rr_;W>RMy(uo?e&rD_yhHgn zfU$bni`<4pX>VMz(rm^E7A+F^(ZecDMK(aqVS`g{tF*1uZE;1?otSO>t%mjrd~q z02QCn&^Vae1$9AYj23byV|6PwLiU(?p9;8++|@E!iP`jnn&{h{29p8TAU=bVK3_{y*j_5>_1WAgbEMsG!h@V^H_Dpe1|*D?CtETB{iowDXr zc2doRR4b)^&;2N9F@ahv6zZIvzAgfBZ!L={e{@zn0!|ctu7c@R4@@g(?riKSCh@c| zPs%#!tlch-Ehm%X7Gj|mn5%xoO2p#UeENUenr<}@{_2+APdr=cea$~>m27zNaZh=Dsw=zl}` z(e~4OkMDeS+`Q2${tEUpAC7xV*75~sTM9EhI6>rpY_;BVI)pLI0;7JB@$ z-s=v%!XzrWq+rin+omxVgZ*8b%-9d~P;I-kkJM7pcLTs3FVN0ZX1D=? zQNubsG;rP3%*{l^Ia%r%J6;Xuvo9F*k0(;sYjGZ>D!{UkQ@K;u=NCR0>1#4CKGFqa zJ54IF9c$)bD$A4cTN=m5VnnrzvHPOj8N*%j`%GJH;duF}gMK70|JM8p^%Fn4nY>;~Hn9G^sdrpMmUlQpRQYxPo{l2empJJ&* zA#5M^kjwyBJxiF^_i6iN(25`3LzPSbod?~%CEj}w8Cqp-bfHQH;;Ite=9C!3;)OMp zn^FZ$O|R>ZkJaxwiPnTr_XBbi%@??6!fc925V9DD7ApSGO{X+VTeuKZ_DE`z#g$pa z3X>Q!m0240Uw-M@TG!c;sjT(p0Vk0c+9vZuAK%19(G~)rE7ekRpA?{S?-46SO31mB z^T|5|R4ez;e7>*B+rcar?j>O>LHD|1K|l2&*c>S&uZmq$rW!0t`IUZw@@axrb510< zhX}}XhhM5nF6$M^mr^iLB`=VA^OA7j9SPBdllM=8?kCO@Oewzq^@@6JK`v84!8_Ii z#yfzeA{7~DLs3t#7*c^ADttdq)x}gXO-1o?!cb#G&D%!>!#DruNWwd5 z#HZUpj${vQ8tgHc9^^<=kS@!Bu$o^Gj^|1!m~;#x(yLJMVGvvuvlF{tgyA;pr2yUT_kX=HcD>6g?WMws^pYYCz0c?+VD`6SGmWxvu0&&v^&%s|yJpY6y*6o>&=L-Z ziy4aO;{eUW588v=yHz$?M<6`Ma+ZffD?P@at`uS}mZMT-{c1MVv|EmWsPHJC=5^wLGEn;I$N^Vj$FHzNdmM;hVujMnfrD8njwslnsWK+wM_i?kN5xd1h{%!z7;``63v0 zf(gb?+y~mcW@`n9J{705$9IKI@oVr(0&jlz1)_~!o7&KGSkR9oPlBS_pRbSYdL61+ zc9PJ%0&cI>f_E4F5AaBVpS5>~hi+|nS)a1up>AtyB4ep*&6S(6_@F4_H`7DG{1V%n_?K~;~$7|5WpKF1Gcov2Yh3~tdo9@<_nvy zc^XX@L=*)(`aU3(_!= z%&2%QP@CE}Dl)2o^(_C|00YU+HZ^!SY>E-^SDVMPQy0)wWzj*a7KGqQ^E}}DCh1HV z$~p=9$r|4+6n#QfZ3Yi-m%PP?rboo|?79gH&AD-chH8A3jhO1{SrMZ8jyJyjmx!uXfHDUf zZa4Q+ES5U*#oSSkf`TCBa|-iW5MyL`|J2$5no4NnEZy%%AFtd(hN%Tt;@1ezbnG~I zao^;HTH*RYPCf9jJIY65iL(LLtMZ%7=+XByPV+~l`-`;>uhXEl?nnNKdQRQPePl2f z(LC~)>Bhf+(7yorC_q83Fu%w{#k%I}?Z)3Tq~d))Kc_pe+{*V_hd~i;tLkUZ_AHI= zCi+Hi@4(u;PF3&=BpmtsWzSxke8`)(ZccZ8Le{Nj*liQCAMrZx+$FUo_n}Cl~ zry7S{-tO9@cLMH5CLC+1H>O;J^a{G)Zno+f7e8FB6lw3uupZNJGHxy*(EZ8=eF4q@4`iNV7jku;1>Q74g&jn3{Y`gT~O; zVRWe+Y>>8ot$6(M@*MHv)7xA-SY5~K0^8AIG@kdzvy$&7?`5Q6x&8Ie+b-6}X0iM@ zun|`&#q zqzuVAXeeXw)N-i({`ukBt#_)|mKdI%;rXWjZu`sZhmIi#BHh~fBHENHZk37hRj?Zr zjEG-Fvs0lIZu&OcpOQASg^Rj&*)!ispY1lby&aveo^#&YkAHs`9jecSX3mqK9e28X zzaRa8vs4-bj6G?jAoZ5&kiGq#PI+Nu3cWSceKwHXCee0%vslcl+G{KvnaHa?FDmg( zqQN*p7@uB}8GS^gZg}o7GVQ%lYSJgJ_=Tjc7e!mg=_yB0i5-Pl)D`Shv0}Tfocx04 z`wY`d>Ri7ojiO-(kH#Kp>ZGhBt(?`UH+NK2lG;`;l#s%17$A$?yy`UBagt1H*Q(a@ z8$b6P6_^F$$2yhPj8K(V&s8kr*B%;hzV?4spZIGx z`s$u*6Yrco-(eGD;=FepMxr`8=_LsJ5;~3sb`uFY&w2YEVnevP3Xg-}DT&{CO0Ew&Fxz3{gzUsPCjPm*&MRaO*N48~9WR(ABr z4ld17pW(`U7H^}ydxLEm;$#-aX004rsNkf9wQ(R9`{4EDLF2%*@3@uf`LzC-Shj4Y zm&=)*@mc)|1O!(8V&S)wUB^qAOP7v;Pc3_&)0|e8NK+MOh&E3*H#YZ%vZ&H_sp-a z`)U+#Q$Xv>yOXWSZCWN9e{JHLxP}tLnDP5g9>eqI`{&c^l31UQ)viruI0NXdDXFj0 zNfB6r2esvu-PAqKwq%D#p~C{D*@>A*r{AS7V{fOqOT3f#=@%<6XT}1_R;Kd4Da1$F zUAlVUX2Lds$Q19X^0VGAWthCO4igKmf|u$x7~%J}{7ome!2YH%7U|~ePp_t`9TVl_ zYZMErWnahE&*73MwXDo<_r`k+Z*=}*+Z9_c+YO|4an}iLnBEftJ~^A$maLM_ta(23 zu$gamMn3pHyq(_TPam%yJ-NKLli5$M=GnCSlh3`^A_dPJPZ+qQ#+?4irw?Y@Xe$B> ziW`fMfVWwFg1o36E`c^tAD?bo-*a24<*yU`)z^@jq??M`2ePWVlTW$~1PHbUhR=?^ zq2gEct;XEBZ)>$@C;hyxo%g_C;3tcnZnvG~R&G@>G9Nxay?lOIr*;~2I~nY={g@|@ zwzzVu&s@6wlb?nE-n3QF?il&w$#L(DjJ#skQe@1`R0`)@+DAR(*>9fPsB^DMH=a)DG`Y85!JphkCzqT*ka+ zV*RjFfrHOa=Jsipo#vjFiv{g96C7bR;(RCQ%d5nS`gZE>d*j z6hHd6&%~`=d-M>*qWqflrbgDY&cO}qPHWW<; z=aJ@GssG1RgFb7f)43zLu%DK?K>^-^}O$^_4Tpt`=l=P6HHT1F4m9c z&=9bdjF1 znA!QYI@xjQw&lDB{+p=l#fs{!=-ik!%kw)iL|e)nJo3#dgNe-`(DmC*nk!*L5=B1b zt$^mt7Q;Q3)3zWNBl*n2sk_@IcKZ3aeVtwZ+AdT$M7L8Vq;+v=oJkE&t4r&_fH!6DFP6oa4$M0Oy;q=r=_7l6m+I{&D2&3O@gM2-#CqvCEW`l8lcs!xt zY_p2HMfw2v&Nx3WBYn?{vbKXGt4*K0Cvig8UwLiH#qv7{(=J|HKHL{t8ExlBUkIdM zJK%e!gx;1oA(M}0_g~w_d@Vj3&j+rn-dCL*+7|zOoqT$9mk9Ae;Gcv_x6>mtdOEQNmyC{IrRQiCgJKe9rAE<0x%J$GXDS(O6s|2ukO>N>S@+q z^vtxG<_MfdhqVtq(#W&y{r1sA!&fva?Xl4OQB6k+{19o+hDH{Wfa5HWe(V~-wsZM;S<9LZHBNP@D4P*(hpK?+&{nlo{4-~c!$OVw2- z+g*Bnt^)3C`*2`P(Fn=6?IZZYKa8e!?2!QAZb(Gu>rwG9GY_)>O0#?tWH%BGg@5Vo z>2em>d3E^ggN<^Z3hSK;*h@a5s{d@8n zqU6N)K7(9h7u*Seh<;rCFoYlOPd*p%(w$eIi}Dgo=OLqUL2GYM+yHqzw=?b2U>V*kDsl$T-- zf%YeoHMjkmTUSPRM8bc?vL=la!2LxJvu~TN?6t~v?+PYQ3yv|O((hnRwb3$_L0Nlv zrjhHGMRdtpE4)LSS{Q$8fla6sGdlbi{#h&&utbI?-YxGC5_g12g zM)-*g8;JmG;r&MVh-tRs-8sHn;rBzVjWX7s1MUXJ^BiAD*wX}{S-!WxM~l5#{;I$S z2JUi^=gO5$o-+x0dR0ag0y{#UgH(Qy=<|J><@@MOh@Xlw5*Qq`{l7g~Y7xnip^OFx z7_UwoM3X3DGr&PI0yIfygLKkWr9qmx7&Y{>SWA(b^$k0V!e3XdsNYK5>2@ldX=Rd@Fwnh&+U$e73sGzcR_)j^?G{72|1JhZtt&i= z1>N*?l0m=}<@TK~6=!i5Hk?pL&Xxb$cGk{3UrQx@#5Xm6VirVAI!gH`vzeoc%Fq?p$HAJLRB^ykcQQ61$XSHEc;Dl3bp8|AvTU;z`M` zncadvlec+Yym4)2v+PI6qKs$?jzBu2x&hLoVtStu8O&oSFeW{SbqK;CnYZzh90GvC zh6P(d>vw0od~tBpG1efXsD}<#jaKCP2KeyjL&b?4-|bh?;Laf&{hJxoP;%eIpXfk1 z1>ASD%)Ti&de8r=lQH!bf}o6@cxFNI&Wv!+#0sq)MurVDP(MDbREJ)!3O-LUb{!!V z^m`xNB4T_BX8r7FzhRT`{x z6{=;1Oox^RuH;&-n5^cB?=yMTlCUOMCQ|$-6B>1}h>`^}kh1mgdso9DSDBcPC|pir(PH|AoUu^O=;3(>*_xBI$ZU*s z%Ng8IW_M5SjM(7k=U7oo4P3J!_MIS>w`#>ssN40teg{SMRsPfs>pTYQ zJdE`2|6^}+hU}HUzm#@_zQ~}O#IKT%oSKRap@A}l9b^oV4{uLRsFzr%JO!0pLWPC^ z*M!<_K?mPX9nX7~xK~=m_(jc>Aeb&Z1QUlJ`%lDHM(nObBW6BB?hbxFn@i{Ku)#E8 zT?{uO16~=YKT3V5A8#@Z(4@Zp@296{H02lxux1KIo&&MFSHzSIj-X&)w4lAj+lano zBBVJxGYwqCs26T*GDh7i^=%&koL^x%@5C> zY+pP42q*0M%1tOn+|9NWfK@=HytbK!GoIpIq-VM1Vj8yCM-Jc`yWRLY&26R_yb|9g z!)9KW#%3{quB!HLz13Lo`>~4`f1;}4XjLg-_@<}tx~(nr9=E=7N5R_NX9xcpUXvT5 z`ivDdP48bT@6Nbk3DC^end3BqpE^vjb+NZ>snG+`L_lQN%PXezUK$DHAN0FtBUWTq8FhlLP^ax`e^=&uJw!7F_LheuvB!93PWekoz^fXqiOPXOAaDh<(Jk& zg)JFh1$f*1Dht^5~C zC87Z*ux>=zM8~F2@F}{eMl#Td%e1zk6H|p0@6toBF2q@>C@VyiPt8K&XXlO7>~69x zRL`K5Wo;kd*Dj?Ak-2!z1um{2-y+=(SPw>nGx2N9Yy`J%!vi z?(H#pzSb_B4mcmCLyi>GW1=To-0SnM6A%}8!h_IG%E`<2udbPi>w}bd{2bTI%kkFB zH^Csf?55ms_vFXYbJ^_Io7?;7>A5l!_N#IVyvR0Iv5GgFwU10lHXwlQh)aBf1D^7FU+rd*`GGJjLWD`=e7sKk0~f(Vw5OQL%tR_1Sj zn6RhRFS)gUMPF?Z9-6vXog9&o#3`QI=w~uyq|y}_-Yd7zL-Og({;ulK`->#YgF6Ri zx-a;u9287~cn2s2WxBl8JXhfc5&Ha@#R?2}2s$~K?W-zb?wr@R3tohf4%mz{C#<$k)iY(U;+ z`hg9%5e!DjECj^28vYpx>S-VZyUKUs{)>F)J!?Rjr}{8b+N-gTwQjnF^BVi)M*TQ~ zXhMM)-?duP$pH6Q!U>ubG7}A4%m5yM(XLt~BL^9BMqnIia)O9rb>jd4l}W(F)xXpF zV09NuYwQ=-5oUB%pBgH+U{7fetQjZ#0~0p{3o#mY2os9MaP0oOE*2ew@XZ}PG@7{a zmo*aR*0@b?OzxT^ITS4);5B?P5en(_94!vFK0HpzCTzgh=qna)zx5rWNE*OiIY1@^B|D z8T4>5?her~J`e|PQ~`pC^a$-BG@I&mG)( z&d%5$AXg9ntL*B=gS>t#AvJa&cfH)BjpK6tM88##zV>6I1OCfqXD4Ta$7|JfX8X~m z$<1u`LU*0fOWkeqiL3w@%V-7o#-koY&a9U<6)h%Zi#mVC8-1vi*w|5xj0_zM4=FtO z{iqIG%LBXbX*q4N@1CrXhWov(2O>O!x>I^{;`&bS?rYW?L?U>Vk8onqaF@Z=wEU0I zS4wRKlpQ8zLSaxNYd!;;GA2o(TFoNrR-U4f(WpwK(Om(JKfh;60k!UHSZyis2Z}nY z%7cRMiY4_4e#ujnl4`-O&_|+5KoxGYeq1KZZBV=~6E%%Oa>skor;4&FWjiBhEUr3d zxkt3Lr>iC>jYFCrVzxvcU1klDZ_JI65?ivPj=Yo z1zCBMTKLk0ae5-FWs3(q%?=K|LbQ0v)NFohF0sshP6`BC`mF3U4d-f)3$#=-Hr>!l z9^%Qp;mNJwu~E>cVhTQ!kKv}b_z(Zd$!VgTUrG*J22uG2B~^j6{No zf*(UL_VP`Sweg_Z{*s(CG~=-}DXE!pdl*?c90H?ct*QvytGk#AimsKJ@(9CUV95E4 zpLMUtKT{5p$~VcpzW-={(MUKtfB>S>m?3Ri^dA$Yxgv4NJ0HQCzuDV%Pk<|=5~FW% z!RhS38UoZko|Z-5UT(?{i^}NnO7<^Rr0%k9vQE|;4pZ=_^zkhpg$nkZwsvjD*5|*{ zr957oYStOfP0sF-H7Xe-$Ic>R?EEd{bXJwqzx$fYLsauB(OqAv92E5NIB?YDIoPYqHjP6B5r?RDg*Z# zc98bfOYL7U(^S*WZgoAfo0J}Sk}sUuD`x1>HUjIpnhiW2=pC@}C~@J4;^JrpCOMsG zkW~)ed8+$1ZhHUu(%jA&|EJLG<%;1-(=lzmo$62|Q?DyA(QfPf0SCuNNW4#xu%nVke!iLOjQ|i`E!2wc& zZsW5B)tUg53yx9zs4)seF+=JRU1C5`{^@DtX1o`M(tSMaE~bPrs#5@Z-x0rsK`3Gd zi}W9U>D+4pc>o9H><9WmXrIK+PSpKr(I@pVeT4RL%&42|3+k7NW$H zGvxM8u)3KB=iz-qr=~CWPiVV~NwyI&5^J`;2s@|5^<&bxV|z#^NsZ0Q_Hw2JfF0wZ zXQ_W%G_XK~`%NTx7DSQa3Lso#Zj+UR5w3!Q7Ua^mK`sCZ%Et^EJ$}vg;8{%2(ywX z8mw^Dn9&3^p+`&DzCQjiPwQtO^6%eyttYGjH_ZT>UI%m4f1ZW)N7>|pSASQlMZ z`d?GLJj&z?YM=3h%UI%ltVd~@#s7~yt>Zw3@&60cfG?5es3>79AOrk|CLigLp@cN2 z7ziU;KFMLh3Tr;D{UQ>yTU3P8a$PE{!PJ0`7$*d@P5`Ov(q7ETq;#~q9_XSg7Y3Dx zpgqiGgHBNn)|puG4Tq(JZ))rI&HxT0I@xJxh%v~Jz`d0bsI`q1jn6xTdd zGf{)1QG+b3wk|z)w&LHzQ7%S_mHW6!&xSJ}42CKg+Ae=SCY!aRTBbIP)~(*CQqEtp zh;E3aa3{3=*O_i+O7r&bV(pH*+<)yHX^S%uE8hgB^r%<^xfJz1@TeErM9+-Msl_O8 zuVT)3ehZ3SnNHRR?lo%MpA{Nqrohp7$&O@V;LfsF{7e#Sm zYIijO@TF*q7qC~zG2S}EVU?aY4%`q*h+>0^__du7gI5v%<2upbr0p6YH{tDvrpQ?B zp4uJu)S1|_AuNHnBS19)#@#l~Es--%_8kga4#Fat$g?rNluOK%NHtm{;@@HZ?_l*Y zeSPa?*xrp5`cJWVZhFNL4&f3cnEG&Y*c`DP{Lf>eM3D}Z8u}8>+J^VMz#Erha(8}U zHhf4FuSm_31Dj`9zzQNUQlW`S4+4(31Y$5F32Oq?IQw2%yV4@v+y&~P zKFaMF!+0RZ@*0a)IMu4~PoANN>6H>sDxyNlXcJ7T2^STS!KKvWEg8rfu0w4JQ$!R_ zt;Fk1X#BhYq z0|+ESN1^Yxk5P+l@jg=3hV{35O%-e|Bt&BmO>jCYSPhjNzP5X@Uder?5s`lx2!zUUTX$dbO zGSt(tFtj#*>OVm6Q_LViQy)w;e0d|Jnu367WSFfZw=zU_G7j4TR~f9s$HF95E<9Z7 zCb{Jw(8AQJ66DZHUNV{KOcwj2#S@%xGVYk^>4pX{(S6A5Us4w@G@@hr6HH%HwYTap zF@4C~Us4}0G$TKCtY1@tUVN0`;aG@jz znF6@Kn*?~=o5CzgRz9fa_q0RooQ@P!+L5&Rz2uJzNF%W&LmNS$w$R@~Ic!Dwl~20R zutZ~sgt34hUVZg}utebrf6BNE$G&{{a$(v{Cm(5W%f8Uef0MqyD9*kp?!L@9)LoL( zbvW9!TPXmp$6ZV)yW&ivA zvLLk!X6}!&{>B^abM~i&f~B$h-HCq@!WU|ON`dc%x!U$;#{Iv9Oj&)(j(FH$Q|C)F zItYBC-XKw%R77Bh>QfY$J2TEo*Tg$xW2Cj;D*a$K7G8>qX83BOeq$6vj(JNAla0=hF2<7Vit7dU{h^` z-*e0w&AwJZlstu$mGL<|>{Vd*wzkH}O$+jC3=xDb{@NVmV^ak?R~sy-kPmLK_Z3?j zJR*MGn|0N5iTDxITAwN0Ynn}xSo$VxJ)zter$~puT4kznmDe_gNMsIRGD_v8; zyWCijg-6PY`vfTjFIuF1EW->)loW$I3Bvy@k|BUo*Ec|l^D~?=amGc6@=#$P$7_I3 z;m3(DI5;2gxx+x#$U(B;Cbx6(4lRteuG7+?zR$J7oxuRTZn*A2%q>2=V)L#R)U!z= z9FOwBnh8fht#}9Ibmf$3xi{LlwVla$&9ofW1{v6-qJr^3umyF32=un*+(T&$Cj}ZH z_=_5}%I3%UkzvWiU)ACGJkd;qgJE?Q#L{>VvykQuluVL+SDv4vXZ!Wi5Ky ztR42PLH=%u%zlze_}6|DLmcPHDrw2FB3MVx9I`KAO}GNThv3n|VTn45REN$e8Yp3c zI$C4j!+n}EU?+75PP7Ai=5q6fvb~n3t7=qD!K9u@>Pt?R0ic4ODkilgC$j)hN#;pP ze#l5Mn=2uwOYS{ENomZ(@L|wXg(yBaN>mZXQ!VocghgUg0)U#CrFa!pC|jb#MU_V#3XM8U z#cMd2f6b{Njwfpm1b9w$qTU>xp11dq2KIhzhKFpN}99V3wo^fzyO&A`W zt8Fq<*%UyC>^T#~Sv~_1D4}$kOZt>c`jzVr2#zH=qvU~Nz|Ewf6_>b@<6hJ~;X0dG z9g?gMOA5!2C2l!*_tRN#26qh-^SZ|lj3bSUjy|wOzQO7xy7CnV3poOG5=jW@-_8=tUlvF#nEe< zJYLGCSHFwN-mN?c9+&y{-Dc-6XX_E8uRar+2XEc_&v3nY*05w-qkIf2r4y4g`}&z8 zOpab5!{3)w1gea7XQb%rXH*|?wSUEEis~zj^VCc)kTfzkqa<@FsfkI?ya_g91#hJq zCbIZB!HR{7G(i(6$Vz^|LZt!0LUI*&qqC+L42RJoq> ze?MG;d|8oy2O?Vs;-V~~LuO>9T|82BH!x&{Gb$mP-4Q7s{3(v1N#d(LB#$DiJ_V@@ z#Ni^d`kir6K$iYAEzr`+IKiFV-?0UvCOHY{5XQ>wr*lZ@X4ZXwK4B>P5p}J%lXeM> zcm`G;p>u`y&!;)p`ad731MfOVB^pDdy=oLRj(iq%sMDmF{4;re$#P5hYTv2n>cb zYEA*;2*G)87$0q4?GcY10TAJW1S>dOAkk(@FD zARLtj2(c73l;Kzxyl9qW`Vaud5(!!f<5~%)T6@yH#`HL-_xr^HF|s-_veq#!NBKl4 z(cvAO1Nkrhrv}+UMm)G?5Q7tdKN1GX3A>a*(^gfelbJnw>hc^&pfMuwECvwWqm`jX zeBQu>3;W1g_lt>#uuw@f7<-vziJadpo0R<~Q#8AS<E24>yE%Mgy_ADX|-`vD3y zv?kqoWM-va5f!56Q%?$rSH*P&p|i+{|!Y1weO z;iwOENTh{%hyG$TWtbxAcxGfA0vnpdQwWf0n?;B9HD(xL>1L#7?BNG84`P)sVF3D- zq2Joo1SIu7(h*9;Lft@A5>3V0zN>O3bOoe1iJUgS@l34&3RKi)zsr!*GinkN1F|D> zA}h?xO!TT6H$cp_U^S@fOw`Jl-S0zWET7yoQ#rnw2x2OXtF)4c&NZZ{7lGK+KJbU3L$WF*=jH)OOB>odDk{Scj)3h-_3gaTx+sQk;h z6bFE`saagi69%S~ddAvo*j;x%@s!THmmY?}gC`I*OPYfRKejdo{%@hY>4JU?GZ-Ou z_-HN7UUYQsP*sT~h19+Mmxq8FA^R9RUTh9Eo{i;jD^ggJ6`gnHtwGGR zRF3I<+!A_NUdUL&-2Gp_aHs|j>O*6UhjG40h955b`l~H|vEjZuF4ju>)Z5~%FrG)s z*4@`$n%A50uGybY%5pn9M}@M>j2LT6DXeB}G?o5TUrefYwRYK?Wpia4EudAr-RNK< zRdY<34}RSHdiveuIV1J3paNGKA9~Hqr=*|Ob&T)v9jC(t0r-xHx1Y&Q$PDs_-E@v? zpq4NQQPN)nrVSenKRt3Lb@bJ<$g>XYtYSmpo8VTbkIXzqcg^%U?&DPT z4@V^Zl;SXWT7>?$q`p+PAEEc%DpYw6z)`-}f&O|iiiqn-yg}n2Y2#bs0u@v7=`~G1 zU{Tfr8V!|WFVV198Y|m}*UE($R9Vv9N7F%y%At&M<=-JDYGq-rMVEvK;&Mxu3?X%W zHEH*WuN(4noUPuiuYV;%oOS=xftU-xd zb+0Lqky|Dq$W-n#10wFsK?c#d+L_5o`**h3R3N(-zjV~anSlzL>-SQ_l6!z&iF9Ny zP%D4M9se$fQGgf7sLwczEo9*XJ|Md5JbcYnLZ@uLFrHUTY7nhzSzX0LM;vM4RUn4m zXoS<*&tA+GGnQU-?}3pVqE@?n!JbqsjB$v$M=-zuGXDt_fVvKy%;^dw^30H)BVtWQ zFJG%v!qF8`J4H5d8+>*y;<=EKz8|qTKT_~bfZhH|}8JCguaR>6%Gmp`ME!yR%w?aAK76 zv3AtX^|t`5Cg{8eEWK9LTEE`$ZYBQ)6e8s^0uhdQU(-yeAB6(nNJMFtJO%z2yg=aV z?_sl{q%exE$(C1?on`giC`{B~OYGD61ZOhJ);4md@?I>#kb!@n^jOztrktb(`R$M; zH)>#Ku<_7SXRoM?>-A^LaHjubTIT?s}Ja#0z|4nMPtpPf%-}M&e6PF!BLLsaZW9wQ+ZsbA?tc zQAar93I11;gES`waEBh2b$WQwN!oONmsTK}zgPm&3n%1X-do!pJE-{K@MH#77(5M9 z<`H3$VNR4HL0KOemrJh!RGvw;3oozXS3aN?p!)GZv<$M_Ay!q#AfTe(D6U_CCSSGF z>tFAtdY*$ZQkr&BtHmn{T=@33?ensNa_!}~v~04v9DG)J;6%y{r++8KJIk`iKJu06 zZ4o=>$Fk|%$7Qz5qJ$L?3Th}~zM+8xkXfC|96U5%!USg4VGJs*{{Wcd6EQnGmdY5{ zA@CwI6I51>nIP57+3!#Z7a^!Xv(=2$E+Gp(mXQXURy|isEm^$SrM)Kwfw&La!>JV2 zCMcll+{-<_{G6_P{*+37rlRGb1UjRd%Tb64F5JxpS*J*$QiD>vZXWKa3|Ns*VO-nL zhDXOm1yY4S)oT(HQnX(tyy4vC1G}Ig^w16xX@-cfgjdREmC&(@Ut8(_F*mTFM4oN3 zU!4$Pla=}IdoOBx*LOH1q)x{h>g?rTsyBjr_>eAaJFxqamQ~pLNk%@sQQ^_ss^|3) z|2Jf$SntTK5A9oSxdPU`p51sa+Jm1(0`UoRjJsDr_%CU-Z}Rbfj0kgq$dSVh2Qv(v zbNFVb32sAQp#pk)v-ko2><;(b>F>wpq==wy_g%HAKl&W^A@5)T{hjGNtp2R_SG*~o zdjN8HK-ViuWbY?n2+9B=<7(n{o9tto?6^nz>Y1MDT6cfD3)SNq`KR_~yJe?)^Rc(f zB`Nqn`E>e&mlny zJ}USh^vaEpIAL{wFf2XRf%Coi7v8QZI^8knQVwQ$E(je>NeT&V}EDX7A2} zT71~(CWs-SMQt~H6G<=qr_Bx1{?TyD5-%NV*cY6^^q2m9DAtx9qIr)SNM`JM^B|{p zo_Fo$e6m5;@s-SkvQKKuztRVq#~34k*d3M<;P1=u?|&>2afHN}1IO)MF>mpCi3~$d zFJ@PH)ZOssDg+$Ndyj+P?uy~iSay;y+G&EGAf+KWbE%I!eV7xG6hZ+*r-?~dj6Y?u zpRzhdT(C90(GW`NoHMPXWAx;vVjDH#c~HkvQvucuIr#a)$gUAzjcRJ;1`A z58?Ow;m@*T#&59?E3h97vG)KhJmTgra#P{B$%46Yf&@`W-0(qsU_%a1A>ZS$XT`90 z{;=O2=t~ahhg9eTLo_b{8Xj>~clmNcgwp((qHtVc!CXE;0xl#zt3jvX;A@kJwE*M? zPUP4F65=wk_%P8qbCIcjhP3f zWG+_H#Z}S>+{o=JM~Ya~jJU2!Rdtm1NTTb|B(+L0@;uV3^MNsuyffEI!~n!A zaGmN+2uz=p&#|#fO1w&WJ6R#g9hxd}(PD#Vl?Z>VzK<6f8nsEpX}I^u<@Bj@_4a1h zG0Lv>$JVrOWtD5WXuL~#x~V14*I1ayclhX+y-0828M)hJJP4ies3c91%opRd<;{Ov zInuKOt_rp{`qr1$5`%C;l}S&^#KVx0o(@ zVKBrTyeLKXyGQ{+aTX;m(nTo)2>Dq*l+#l<%&!@DVsTc};(cEsP?iA-j-n;vxA^{? zP*|9D!;<-(!ZQ1zyBdt#QwFn4F%5L zOr|Vmyf{K&nEbiw<{rDraZ}<(PhYYBs^yuW8z1w=usbMY;L3r} zt%^6KM!cwT!}W5tPO37D@`!|(ilB>z7$A`_K`N?Lnnn*il>HzuB>tUsM9f_Wz21pw zdCXk0tBjV0MFmSvqRhen?oTU1J@7gbovJQb0jd&`afw&rx#+a|RmKNw)q43=!a0gR z`g?g1bJyK_%erl6AJiFU`{B)>!*}O7E6IS~tNdTh_p<%ciLQN0?0jVxQ~&L_ibVu_ zPpGOVaDb|3Smt&&^<@%cyVTh4<*lD6CY8;@S$ad%J^uaFJ;JhfdMPl=Qe>7T$ZbkQ z+7-h!D)DO6?lfp^DN=J%M>oFSVlXQQ&KRHam7ny$CXH>-I=5_s>2fr8x&F4{Mu5CT z;SxRsR#XfMelot4Patxk0{1V#o+{K481Y~^9yymN2J$sg$G$)51q=XJ(?a7Jr#DMz z;QT7^6B!iB&$MpWrEfs`6*#zWQthU5XV>NtsBlAm$#I{J#N<&*rzcQ_;g(vN1Sq$K z*v|Fx3%L|97Ef{~qvQ{HR07GqfJvH%^WqIV%qW3L9EAj*z{kyGKn|BEDg?RM|HnwQ zk_tv2?2LuQ2q*zJFHTK!&)z1UQ1VTomT&;D#D|t}m{Zw$b1I4JA1CEJd#q7>6CW!s zlJalNm6pZXmx8!x;R1yh9h83qR8t@XBFu*t+j)hYxCr}lksTY9=jc)y$zr?14px8B zFDPjj2z)i;tZ#+L;a8Nj)U*EehkNkY(emTY&2LVT!R6BTI=3^PLF2oAr_-MsALq!l z-BkD*=BPf`w--D2-NZJCyX)xb_Cd+F3zO>Dbn3f@?U3-0$8jJKEFwkB1AD|MGtKXo zVqP2y-Dw6WXa>Y<2B?^U51NA~PQZ|6p+O~}L8YKc$f^;Vs1Z7=5iV;6m^6Y+n1T;$ zex=8rO+D;8hodvQ-2VFVYp?m^ZTrn(D|b28YB`ByWupeP0;ErD6p+|3oJy)y2zMI6 z`X^enRppf0)WobqNi~IBF>>p+ANEQjz7?Ttq8&GeWZQk}*69Qge#uTiE7V&O1qY>! zi~^!#Tg`BBtSnS&EX-z9V}Fu^WYwIAO=R=;93;p1H?SUzPQad*Kjh3^N!`;gegtui zT8wj&SeU@QhW_^2hU?VdU}G)!J&8y#(mBWOV-0D9kNK+yhHiD3rLArt0IHPS6sigvw`q6`;zEIB@Xtm? ziV?$lARHnhu}v>^`4J)C;W6P+=pSe>Oc!S&A{cy#MVqcamyB)I78(3&wXyYMvQLjz z*>r8|=FpH)>a`i$)FB2bWn6AO(5#P*Ayd3Jib0=QoPaHWiv8h zlz3;uy%&NpcEGx`|lwNH zJpB91ENaYB`@~}B%KlyXDE>UIZ@);6UK?pT{`(HEo5;bf8s-VqBvpGR2lzQcPs$Kv zpheXc0uK28EBIz*3zy~>HmA^LWmlV6fV*$R=mFi{G*YUvrFXR0sJjd*^PD8^DHybK zAS9OqXbxC_+_(URLp}=W91^Sw_P|p#uX5p*6y^gdf@cIgH-dahfbD8VU{xu9$21pM z%Dntc^h*vGVa$AXHp@}lzj)_LTIpn>ikyWh`IZ}aE?}M&i0Q$PElwEHhbZ~v{Vhfa zxCMW4Gi&uQQ258)#Ta*t5a1vdlQYt(<@sqK6vm_;5^Z1^!s1{bF5A)=YfuIMj4~AR zq0{pVXbz0U-QQxvOp*_H18=eUK4G%V^J)3?>549LmRtvs$!z!ckGgj!lU?Q<1gx6M zbmWXmiPIv6G`&jHur1~82r!xgXppaEq6ba#e~>Hjr+8#Nd)|^Qh3HZoI%U*#vu#pu zC|9!!e6B5XH3jl%l}+1oFX5aZf{5!TU{w7TG5*l1hF0~@P@6OM;&(?cfI&$0TQBUk zQ+LZaLLBCXq=;4$_H%#Jc7M$OoMN7bj+V9;LGILtT3`S>#}Mf~y%8c)vAMAkp7T93 zkLc^Z-k#ydjguY0Ci-n$iCkQed7BNlYpfOIEkkj;j%f(F2ybQt@!uU6Fy%t7G1ixR z;_c}@1(d6dm0e*6dTcfRq&XK_mT=a@g>>BnM6ihcpqVrLtT~8KigVHQKbI!Gfy50t zIgjk@V+9pqG7otA7GVbZ<&6<@ZU-?uM#sOLc+w`4ki6K>LPhxX{8TdsUcW@gdn*TH z6Rmxa-qV74ql56n?kn??!=ml0NqAfwBzjOl=GSi26F2k{XN)b4I`RRX(M>T+J9GU*q$|VS`*?g)IOS z1{LaZ{kN{?*7n)QzR?9*lxB=6jK=4SQ{SS%oF*W0%KIh6r5=Q4j46l4=ZjPSAi%6H zAacqV7{78OS9Z*jd9SI7N4hztAi9O>LYEv473B9mR zY6pYEb9BYK7slXlR#sv?zxtf(0f6@n7#zp9zh__sgx}d497luyzJ3G*-`1-P$G`Wc zegX^M4J-J-v;JOq0%B|4dp~c$Tn&7`gL)j;*NFGxCd*L~y%X1==Y)EHhgmxmm$xLHP&SV>|4O};zbxeshnFnMGF9V%{%nU41hNN~%b21}Q zxq(I|GZ_eYc5=r@8iFjP2SNKQ4Nl^4-My%0);Z6jpYV@S_(Pix8aeCir|=A%F@~bLSZsQiso@M}%BA!RFKxFrg~n zO}r0ggakriWj6`GpMkLm!TD~2FI*@DP+?7)N+zguYAO{Yop2+aup^zMM>=6fI^jk- zsT%2o9qEK0>7;(7lhjBj$&oI-uBGx}sj1GA4>iJ$$o{HV)6JTX&GYFWKOXj{X0vaP z_?lP1ovI7qn6}}P>fPI6-|kPex`K`9D+rjv;o{}2!h($`EC`sw;kwrm)A4A)`|4xmO~hZzA6$Cu5%Ikl;ds*)X5Djt(Zt*#*k5Sj7Xn#v*`XF-A_ z!4DK%SM#ZeByUyC!iPDOM?^*G8I*;FM$w3jN`uDGI|E$%@u`S3Z{^3rryixX?&D!` zN$E%Ftx!aGOdhyC;ZqT5-s*&fPd!R&ZNkIilG2aTn?*->OkTxc#0^9203`WvAyl{! zGF(VDTnG^^gbEkLJTIoB@-h!J-4TS0Y2XwubE8f~Hs!&0>}U+?lsjSokr|(AS6OiC z7+hvz;V>EaG4GI#2n&vNYZUz0aL7g!2FHXoN=19)S{mENq^jzKtvcbWjyS;>(`k)Z zHC9}2LR$lhz+QL)nMmDyQe`<+Qv5Cy!d$-n@wcO-jATof7-6uBQ($6JIenE%+G?s~ z*ySp)sdR)UuUp|QWDE5dgpq{;$YP;`zMCa&HC0aRwiejbf=!f7$mok)AR9}@{K{xw z9p@8wj8xc7l@YylBx~&amz4IrR9VjzC0(%VNp;tg1-f2c%Fo_jk}%yM0iXd|FQ$TfFiX5vI*E^&S?N z#BDDCkK0FhPF}X#geUP44lb2@yAK}HkMNwls+uGRK;R(1#o}JBg9qv(JSVTJCdsiH zICO8ZDkCHx8#7T+YC4XP9Y^SnQ?l~bAZ=dW*f7}cx8#?>%bC*a( zz!S|Jn=VK)IdKj<#|%~^yG@fk2aWPFva=yBI3kU)GJJypdLGZGLUH7e%M{)8V*jw!Qhk{eAs$z^(`EYIk_q>|feHOVZo<>Gs1Q>*L|&ecP^o zzWiskZ%@xJuTTAn*VpE`^&S4wo__rB)B28Hb(&uf$6d3(GOtxP`uE`T)8ijA&O_;h z)j2G9-#6QX9NxYcPwDaBtEcF@$ z;H$TD*PixIzqiN7^=Ph_e|606AD6SwXF0VySsmM^dy>CBU3zNQY69P%2lV=N({5kZ zhvRy9p}cLPlL!A|GC*V$EWA}mi4FKo6g^_+vwqa>51zHaeXJQq?>9!e=qsN z|E?m2-#<0KwHQx{X3i>{~9Gw>zcsOuYb^!QeCct1{ik=ByF^tjb}!Wu-TpZiS^(EyuYZ+L+v*K|?cB3Un|6$U-*Kxyj+?$|oDNSf8~LyA=syE^eLAc! L;MM;DfZX`{xg599 literal 0 HcmV?d00001 diff --git a/docs/1.9.0.1/performance.html b/docs/1.9.0.1/performance.html new file mode 100644 index 0000000000..d43f939656 --- /dev/null +++ b/docs/1.9.0.1/performance.html @@ -0,0 +1,204 @@ + + + + + + + Performance — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Performance

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +
+

Memory

+

When a dataset is read using cfdm.read, lazy loading is employed for all +data arrays, which means that no data is read into memory until the +data is required for inspection or to modify the array contents. This +maximises the number of field constructs +that may be read within a session, and makes the read operation +fast. If a subspace of data still in the file is +requested then only that subspace is read into memory. These +behaviours are inherited from the netCDF4 python package.

+

When an instance is copied with its copy method, all data are +copied with a copy-on-write technique. This means +that a copy takes up very little memory, even when the original data +comprises a very large array in memory, and the copy operation is +fast.

+
+
+
+

In-place operations

+

Some methods that create new a instance have an option to perform the +operation in-place, rather than creating a new independent object. The +in-place operation can be considerably faster. These methods have the +inplace keyword parameter, such as the squeeze, +transpose, insert_dimension, compress, and +uncompress methods of a field construct.

+

For example, in one particular test, transposing the data dimensions +of the field construct was ~10 times faster when done in-place, +compared with creating a new independent field construct:

+
+
*Calculate the speed-up of performing the “transpose” +operation in-place.
+
>>> import timeit
+>>> import cfdm
+>>> f = cfdm.example_field(0)
+>>> print(f)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> min(timeit.repeat('g = f.transpose()',
+...                   globals=globals(), number=1000))
+1.2819487630004005
+>>> min(timeit.repeat('f.transpose(inplace=True)',
+...                   globals=globals(), number=1000))
+0.13453567200122052
+
+
+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/philosophy.html b/docs/1.9.0.1/philosophy.html new file mode 100644 index 0000000000..7692a4d8ea --- /dev/null +++ b/docs/1.9.0.1/philosophy.html @@ -0,0 +1,214 @@ + + + + + + + Philosophy — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Philosophy

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+ +
+

Two levels of implementation

+

The basic requirement of the reference implementation is to represent +the logical CF data model in memory with a +package of Python classes, with no further features. However, in order +to be useful the implementation must also have the practical +functionality to read and write netCDF datasets, and inspect CF +data model constructs.

+

In order to satisfy both needs there is a stand-alone core +implementation, the cfdm.core package, that +includes no functionality beyond that mandated by the CF data model +(and therefore excludes any information about the netCDF encoding of +constructs). The core implementation provides the basis (via +inheritance) for the cfdm package that allows, +in addition, the reading and writing of netCDF datasets, as well as +comprehensive inspection capabilities and extra field and domain +construct modification capabilities.

+
+
+
+

CF conventions

+

The CF data model does not enforce the CF conventions. CF-compliance +is the responsibility of the user. For example, a “units” property +whose value is not a valid UDUNITS string is not +CF-compliant, but is allowed by the CF data model. This is also true, +in general, for the cfdm package. The few exceptions to this occur +when field and domain constructs are read from, or written to, a +netCDF file: it may not be possible to parse a non-CF-compliant netCDF +variable or attribute to create an unambiguous CF data model +construct; or create an unambiguous netCDF variable or attribute from +a non-CF-compliant CF data model construct.

+
+
+
+

Functionality

+

The cfdm package has, with few exceptions, only the functionality +required to read and write datasets, and to create, modify and inspect +field and domain constructs in memory.

+

The cfdm package is not, and is not meant to be, a general analysis +package. Therefore it can’t, for example, regrid field constructs to +new domains, perform statistical collapses, combine field constructs +arithmetically, etc. It has, however, been designed to be +extensible to facilitate the creation of other +packages that build on this cfdm implementation whilst also adding +extra, higher level functionality.

+

The cf-python and cf-plot packages, that are built on top +of the cfdm package, include much more higher level functionality.

+
+
+
+

API

+

The design of an application programming interface (API) needs to +strike a balance between being verbose and terse. A verbose API is +easier to understand and is more memorable, but usually involves more +typing; whilst a terse API is more efficient for the experienced +user. The cfdm package has aimed for an API that is more at the +verbose end of the spectrum: in general it does not use abbreviations +for method and parameter names, and each method performs a sole +function.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/releases.html b/docs/1.9.0.1/releases.html new file mode 100644 index 0000000000..e4cc5c0b7c --- /dev/null +++ b/docs/1.9.0.1/releases.html @@ -0,0 +1,260 @@ + + + + + + + Releases — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Releases

+
+

Documentation for all versions of cfdm.

+ +
+

CF-1.9

+ +
+
+
+

CF-1.8

+ +
+
+
+

CF-1.7

+ +
+
+
+

Versioning

+
+

Finding versions

+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+

The version of the CF conventions and the CF data model being used may +be found with the cfdm.CF function:

+
+
Retrieve the version of the CF conventions.
+
>>> import cfdm
+>>> cfdm.CF()
+'1.9'
+
+
+
+

This indicates which version of the CF conventions are represented by +this release of the cfdm package, and therefore the version can not be +changed.

+

The version identifier of the cfdm package is based on the version of +the CF conventions to which it applies, with the addition of extra +integer values for updates that apply to the same version of CF:

+
+
Retrieve the version of the cfdm package.
+
>>> cfdm.__version__
+'1.9.0.0'
+
+
+
+

The next section outlines the scheme used to set version identifiers.

+
+
+

Versioning strategy

+

A CF.major.minor numeric version scheme is used, where CF is +the version of the CF conventions (e.g. 1.9) to which a particular +version of cfdm applies.

+

Major changes comprise:

+
    +
  • changes to the API, such as:

    +
      +
    • changing the name of an existing function or method;

    • +
    • changing the behaviour of an existing function or method;

    • +
    • changing the name of an existing keyword parameter;

    • +
    • changing the default value of an existing keyword parameter;

    • +
    • changing the meaning of a value of an existing keyword parameter.

    • +
    • introducing a new function or method;

    • +
    • introducing a new keyword parameter;

    • +
    • introducing a new permitted value of a keyword parameter;

    • +
    +
  • +
  • changes to required versions of the dependencies.

  • +
+

Minor changes comprise:

+
    +
  • bug fixes that do not change the API;

  • +
  • changes to the documentation;

  • +
  • code tidying.

  • +
+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/sample_datasets.html b/docs/1.9.0.1/sample_datasets.html new file mode 100644 index 0000000000..cfc0781eed --- /dev/null +++ b/docs/1.9.0.1/sample_datasets.html @@ -0,0 +1,162 @@ + + + + + + + Sample datasets — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Sample datasets

+

This tutorial uses a number of small sample datasets, all of which can +be found in the zip file cfdm_tutorial_files.zip +(download, +8kB):

+
+
Unpack the sample datasets.
+
$ unzip -q cfdm_tutorial_files.zip
+$ ls -1
+cfdm_tutorial_files.zip
+contiguous.nc
+external.nc
+file.nc
+gathered.nc
+geometry.nc
+parent.nc
+
+
+
+

The tutorial examples assume that the Python session is being run from +the directory that contains the zip file and its unpacked contents, +and no other files.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/search.html b/docs/1.9.0.1/search.html new file mode 100644 index 0000000000..e7bb3052b5 --- /dev/null +++ b/docs/1.9.0.1/search.html @@ -0,0 +1,151 @@ + + + + + + + Search — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ +

Search

+
+ +

+ Please activate JavaScript to enable the search + functionality. +

+
+

+ From here you can search these documents. Enter your search + words into the box below and click "search". Note that the search + function will automatically search for all of the words. Pages + containing fewer words won't appear in the result list. +

+
+ + + +
+ +
+ +
+ +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/searchindex.js b/docs/1.9.0.1/searchindex.js new file mode 100644 index 0000000000..36f7a314fd --- /dev/null +++ b/docs/1.9.0.1/searchindex.js @@ -0,0 +1 @@ +Search.setIndex({docnames:["Changelog","api_reference","attribute/cfdm.Array.array","attribute/cfdm.Array.dtype","attribute/cfdm.Array.ndim","attribute/cfdm.Array.shape","attribute/cfdm.Array.size","attribute/cfdm.AuxiliaryCoordinate.bounds","attribute/cfdm.AuxiliaryCoordinate.construct_type","attribute/cfdm.AuxiliaryCoordinate.data","attribute/cfdm.AuxiliaryCoordinate.dtype","attribute/cfdm.AuxiliaryCoordinate.interior_ring","attribute/cfdm.AuxiliaryCoordinate.ndim","attribute/cfdm.AuxiliaryCoordinate.shape","attribute/cfdm.AuxiliaryCoordinate.size","attribute/cfdm.Bounds.data","attribute/cfdm.Bounds.dtype","attribute/cfdm.Bounds.ndim","attribute/cfdm.Bounds.shape","attribute/cfdm.Bounds.size","attribute/cfdm.CellMeasure.construct_type","attribute/cfdm.CellMeasure.data","attribute/cfdm.CellMeasure.dtype","attribute/cfdm.CellMeasure.ndim","attribute/cfdm.CellMeasure.shape","attribute/cfdm.CellMeasure.size","attribute/cfdm.CellMethod.construct_type","attribute/cfdm.CompressedArray.array","attribute/cfdm.CompressedArray.compressed_array","attribute/cfdm.CompressedArray.dtype","attribute/cfdm.CompressedArray.ndim","attribute/cfdm.CompressedArray.shape","attribute/cfdm.CompressedArray.size","attribute/cfdm.Constant._func","attribute/cfdm.Constant.value","attribute/cfdm.CoordinateReference.construct_type","attribute/cfdm.CoordinateReference.coordinate_conversion","attribute/cfdm.CoordinateReference.datum","attribute/cfdm.Count.data","attribute/cfdm.Count.dtype","attribute/cfdm.Count.ndim","attribute/cfdm.Count.shape","attribute/cfdm.Count.size","attribute/cfdm.Data.array","attribute/cfdm.Data.compressed_array","attribute/cfdm.Data.datetime_array","attribute/cfdm.Data.datetime_as_string","attribute/cfdm.Data.dtype","attribute/cfdm.Data.mask","attribute/cfdm.Data.ndim","attribute/cfdm.Data.shape","attribute/cfdm.Data.size","attribute/cfdm.DimensionCoordinate.bounds","attribute/cfdm.DimensionCoordinate.construct_type","attribute/cfdm.DimensionCoordinate.data","attribute/cfdm.DimensionCoordinate.dtype","attribute/cfdm.DimensionCoordinate.interior_ring","attribute/cfdm.DimensionCoordinate.ndim","attribute/cfdm.DimensionCoordinate.shape","attribute/cfdm.DimensionCoordinate.size","attribute/cfdm.Domain.auxiliary_coordinates","attribute/cfdm.Domain.cell_measures","attribute/cfdm.Domain.construct_type","attribute/cfdm.Domain.constructs","attribute/cfdm.Domain.coordinate_references","attribute/cfdm.Domain.coordinates","attribute/cfdm.Domain.dimension_coordinates","attribute/cfdm.Domain.domain_ancillaries","attribute/cfdm.Domain.domain_axes","attribute/cfdm.DomainAncillary.bounds","attribute/cfdm.DomainAncillary.construct_type","attribute/cfdm.DomainAncillary.data","attribute/cfdm.DomainAncillary.dtype","attribute/cfdm.DomainAncillary.interior_ring","attribute/cfdm.DomainAncillary.ndim","attribute/cfdm.DomainAncillary.shape","attribute/cfdm.DomainAncillary.size","attribute/cfdm.DomainAxis.construct_type","attribute/cfdm.Field.auxiliary_coordinates","attribute/cfdm.Field.cell_measures","attribute/cfdm.Field.cell_methods","attribute/cfdm.Field.construct_type","attribute/cfdm.Field.constructs","attribute/cfdm.Field.coordinate_references","attribute/cfdm.Field.coordinates","attribute/cfdm.Field.data","attribute/cfdm.Field.dimension_coordinates","attribute/cfdm.Field.domain","attribute/cfdm.Field.domain_ancillaries","attribute/cfdm.Field.domain_axes","attribute/cfdm.Field.dtype","attribute/cfdm.Field.field_ancillaries","attribute/cfdm.Field.ndim","attribute/cfdm.Field.shape","attribute/cfdm.Field.size","attribute/cfdm.FieldAncillary.construct_type","attribute/cfdm.FieldAncillary.data","attribute/cfdm.FieldAncillary.dtype","attribute/cfdm.FieldAncillary.ndim","attribute/cfdm.FieldAncillary.shape","attribute/cfdm.FieldAncillary.size","attribute/cfdm.GatheredArray.array","attribute/cfdm.GatheredArray.compressed_array","attribute/cfdm.GatheredArray.dtype","attribute/cfdm.GatheredArray.ndim","attribute/cfdm.GatheredArray.shape","attribute/cfdm.GatheredArray.size","attribute/cfdm.Index.data","attribute/cfdm.Index.dtype","attribute/cfdm.Index.ndim","attribute/cfdm.Index.shape","attribute/cfdm.Index.size","attribute/cfdm.InteriorRing.data","attribute/cfdm.InteriorRing.dtype","attribute/cfdm.InteriorRing.ndim","attribute/cfdm.InteriorRing.shape","attribute/cfdm.InteriorRing.size","attribute/cfdm.List.data","attribute/cfdm.List.dtype","attribute/cfdm.List.ndim","attribute/cfdm.List.shape","attribute/cfdm.List.size","attribute/cfdm.NetCDFArray.array","attribute/cfdm.NetCDFArray.dtype","attribute/cfdm.NetCDFArray.ndim","attribute/cfdm.NetCDFArray.shape","attribute/cfdm.NetCDFArray.size","attribute/cfdm.NumpyArray.array","attribute/cfdm.NumpyArray.dtype","attribute/cfdm.NumpyArray.ndim","attribute/cfdm.NumpyArray.shape","attribute/cfdm.NumpyArray.size","attribute/cfdm.RaggedContiguousArray.array","attribute/cfdm.RaggedContiguousArray.compressed_array","attribute/cfdm.RaggedContiguousArray.dtype","attribute/cfdm.RaggedContiguousArray.ndim","attribute/cfdm.RaggedContiguousArray.shape","attribute/cfdm.RaggedContiguousArray.size","attribute/cfdm.RaggedIndexedArray.array","attribute/cfdm.RaggedIndexedArray.compressed_array","attribute/cfdm.RaggedIndexedArray.dtype","attribute/cfdm.RaggedIndexedArray.ndim","attribute/cfdm.RaggedIndexedArray.shape","attribute/cfdm.RaggedIndexedArray.size","attribute/cfdm.RaggedIndexedContiguousArray.array","attribute/cfdm.RaggedIndexedContiguousArray.compressed_array","attribute/cfdm.RaggedIndexedContiguousArray.dtype","attribute/cfdm.RaggedIndexedContiguousArray.ndim","attribute/cfdm.RaggedIndexedContiguousArray.shape","attribute/cfdm.RaggedIndexedContiguousArray.size","attribute/cfdm.core.Array.array","attribute/cfdm.core.Array.dtype","attribute/cfdm.core.Array.ndim","attribute/cfdm.core.Array.shape","attribute/cfdm.core.Array.size","attribute/cfdm.core.AuxiliaryCoordinate.bounds","attribute/cfdm.core.AuxiliaryCoordinate.construct_type","attribute/cfdm.core.AuxiliaryCoordinate.data","attribute/cfdm.core.AuxiliaryCoordinate.interior_ring","attribute/cfdm.core.Bounds.data","attribute/cfdm.core.CellMeasure.construct_type","attribute/cfdm.core.CellMeasure.data","attribute/cfdm.core.CellMethod.construct_type","attribute/cfdm.core.Coordinate.bounds","attribute/cfdm.core.Coordinate.data","attribute/cfdm.core.Coordinate.interior_ring","attribute/cfdm.core.CoordinateReference.construct_type","attribute/cfdm.core.CoordinateReference.coordinate_conversion","attribute/cfdm.core.CoordinateReference.datum","attribute/cfdm.core.Data.array","attribute/cfdm.core.Data.dtype","attribute/cfdm.core.Data.ndim","attribute/cfdm.core.Data.shape","attribute/cfdm.core.Data.size","attribute/cfdm.core.DimensionCoordinate.bounds","attribute/cfdm.core.DimensionCoordinate.construct_type","attribute/cfdm.core.DimensionCoordinate.data","attribute/cfdm.core.DimensionCoordinate.interior_ring","attribute/cfdm.core.Domain.construct_type","attribute/cfdm.core.Domain.constructs","attribute/cfdm.core.DomainAncillary.bounds","attribute/cfdm.core.DomainAncillary.construct_type","attribute/cfdm.core.DomainAncillary.data","attribute/cfdm.core.DomainAncillary.interior_ring","attribute/cfdm.core.DomainAxis.construct_type","attribute/cfdm.core.Field.construct_type","attribute/cfdm.core.Field.constructs","attribute/cfdm.core.Field.data","attribute/cfdm.core.Field.domain","attribute/cfdm.core.FieldAncillary.construct_type","attribute/cfdm.core.FieldAncillary.data","attribute/cfdm.core.InteriorRing.data","attribute/cfdm.core.NumpyArray.array","attribute/cfdm.core.NumpyArray.dtype","attribute/cfdm.core.NumpyArray.ndim","attribute/cfdm.core.NumpyArray.shape","attribute/cfdm.core.NumpyArray.size","attribute/cfdm.core.PropertiesData.data","attribute/cfdm.core.PropertiesDataBounds.bounds","attribute/cfdm.core.PropertiesDataBounds.data","attribute/cfdm.core.PropertiesDataBounds.interior_ring","attribute/cfdm.core.abstract.Coordinate.bounds","attribute/cfdm.core.abstract.Coordinate.data","attribute/cfdm.core.abstract.PropertiesDataBounds.bounds","attribute/cfdm.core.abstract.PropertiesDataBounds.data","cf_data_model","class","class/cfdm.Array","class/cfdm.AuxiliaryCoordinate","class/cfdm.Bounds","class/cfdm.CellMeasure","class/cfdm.CellMethod","class/cfdm.CompressedArray","class/cfdm.Configuration","class/cfdm.Constant","class/cfdm.Constructs","class/cfdm.CoordinateConversion","class/cfdm.CoordinateReference","class/cfdm.Count","class/cfdm.Data","class/cfdm.Datum","class/cfdm.DimensionCoordinate","class/cfdm.Domain","class/cfdm.DomainAncillary","class/cfdm.DomainAxis","class/cfdm.Field","class/cfdm.FieldAncillary","class/cfdm.GatheredArray","class/cfdm.Index","class/cfdm.InteriorRing","class/cfdm.List","class/cfdm.NetCDFArray","class/cfdm.NumpyArray","class/cfdm.RaggedContiguousArray","class/cfdm.RaggedIndexedArray","class/cfdm.RaggedIndexedContiguousArray","class/cfdm.core.Array","class/cfdm.core.AuxiliaryCoordinate","class/cfdm.core.Bounds","class/cfdm.core.CellMeasure","class/cfdm.core.CellMethod","class/cfdm.core.Constructs","class/cfdm.core.Container","class/cfdm.core.Coordinate","class/cfdm.core.CoordinateConversion","class/cfdm.core.CoordinateReference","class/cfdm.core.Data","class/cfdm.core.Datum","class/cfdm.core.DimensionCoordinate","class/cfdm.core.DocstringRewriteMeta","class/cfdm.core.Domain","class/cfdm.core.DomainAncillary","class/cfdm.core.DomainAxis","class/cfdm.core.Field","class/cfdm.core.FieldAncillary","class/cfdm.core.InteriorRing","class/cfdm.core.NumpyArray","class/cfdm.core.Parameters","class/cfdm.core.ParametersDomainAncillaries","class/cfdm.core.Properties","class/cfdm.core.PropertiesData","class/cfdm.core.PropertiesDataBounds","class_core","constant","contributing","extensions","function/cfdm.ATOL","function/cfdm.CF","function/cfdm.LOG_LEVEL","function/cfdm.RTOL","function/cfdm.abspath","function/cfdm.atol","function/cfdm.configuration","function/cfdm.environment","function/cfdm.example_domain","function/cfdm.example_field","function/cfdm.example_fields","function/cfdm.implementation","function/cfdm.is_log_level_debug","function/cfdm.is_log_level_detail","function/cfdm.is_log_level_info","function/cfdm.log_level","function/cfdm.read","function/cfdm.rtol","function/cfdm.unique_constructs","function/cfdm.write","functions","index","installation","introduction","method/cfdm.Array.__array__","method/cfdm.Array.__deepcopy__","method/cfdm.Array.__getitem__","method/cfdm.Array.__repr__","method/cfdm.Array.__str__","method/cfdm.Array._docstring_method_exclusions","method/cfdm.Array._docstring_package_depth","method/cfdm.Array._docstring_special_substitutions","method/cfdm.Array._docstring_substitutions","method/cfdm.Array.copy","method/cfdm.Array.get_compression_type","method/cfdm.Array.get_subspace","method/cfdm.AuxiliaryCoordinate.__deepcopy__","method/cfdm.AuxiliaryCoordinate.__getitem__","method/cfdm.AuxiliaryCoordinate.__repr__","method/cfdm.AuxiliaryCoordinate.__str__","method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions","method/cfdm.AuxiliaryCoordinate._docstring_package_depth","method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions","method/cfdm.AuxiliaryCoordinate._docstring_substitutions","method/cfdm.AuxiliaryCoordinate.apply_masking","method/cfdm.AuxiliaryCoordinate.clear_properties","method/cfdm.AuxiliaryCoordinate.copy","method/cfdm.AuxiliaryCoordinate.creation_commands","method/cfdm.AuxiliaryCoordinate.del_bounds","method/cfdm.AuxiliaryCoordinate.del_climatology","method/cfdm.AuxiliaryCoordinate.del_data","method/cfdm.AuxiliaryCoordinate.del_geometry","method/cfdm.AuxiliaryCoordinate.del_interior_ring","method/cfdm.AuxiliaryCoordinate.del_node_count","method/cfdm.AuxiliaryCoordinate.del_part_node_count","method/cfdm.AuxiliaryCoordinate.del_property","method/cfdm.AuxiliaryCoordinate.dump","method/cfdm.AuxiliaryCoordinate.equals","method/cfdm.AuxiliaryCoordinate.get_bounds","method/cfdm.AuxiliaryCoordinate.get_bounds_data","method/cfdm.AuxiliaryCoordinate.get_climatology","method/cfdm.AuxiliaryCoordinate.get_data","method/cfdm.AuxiliaryCoordinate.get_filenames","method/cfdm.AuxiliaryCoordinate.get_geometry","method/cfdm.AuxiliaryCoordinate.get_interior_ring","method/cfdm.AuxiliaryCoordinate.get_node_count","method/cfdm.AuxiliaryCoordinate.get_part_node_count","method/cfdm.AuxiliaryCoordinate.get_property","method/cfdm.AuxiliaryCoordinate.has_bounds","method/cfdm.AuxiliaryCoordinate.has_data","method/cfdm.AuxiliaryCoordinate.has_geometry","method/cfdm.AuxiliaryCoordinate.has_interior_ring","method/cfdm.AuxiliaryCoordinate.has_node_count","method/cfdm.AuxiliaryCoordinate.has_part_node_count","method/cfdm.AuxiliaryCoordinate.has_property","method/cfdm.AuxiliaryCoordinate.identities","method/cfdm.AuxiliaryCoordinate.identity","method/cfdm.AuxiliaryCoordinate.insert_dimension","method/cfdm.AuxiliaryCoordinate.is_climatology","method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups","method/cfdm.AuxiliaryCoordinate.nc_del_variable","method/cfdm.AuxiliaryCoordinate.nc_get_variable","method/cfdm.AuxiliaryCoordinate.nc_has_variable","method/cfdm.AuxiliaryCoordinate.nc_set_variable","method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups","method/cfdm.AuxiliaryCoordinate.nc_variable_groups","method/cfdm.AuxiliaryCoordinate.properties","method/cfdm.AuxiliaryCoordinate.set_bounds","method/cfdm.AuxiliaryCoordinate.set_climatology","method/cfdm.AuxiliaryCoordinate.set_data","method/cfdm.AuxiliaryCoordinate.set_geometry","method/cfdm.AuxiliaryCoordinate.set_interior_ring","method/cfdm.AuxiliaryCoordinate.set_node_count","method/cfdm.AuxiliaryCoordinate.set_part_node_count","method/cfdm.AuxiliaryCoordinate.set_properties","method/cfdm.AuxiliaryCoordinate.set_property","method/cfdm.AuxiliaryCoordinate.squeeze","method/cfdm.AuxiliaryCoordinate.transpose","method/cfdm.AuxiliaryCoordinate.uncompress","method/cfdm.Bounds.__deepcopy__","method/cfdm.Bounds.__getitem__","method/cfdm.Bounds.__repr__","method/cfdm.Bounds.__str__","method/cfdm.Bounds._docstring_method_exclusions","method/cfdm.Bounds._docstring_package_depth","method/cfdm.Bounds._docstring_special_substitutions","method/cfdm.Bounds._docstring_substitutions","method/cfdm.Bounds.apply_masking","method/cfdm.Bounds.clear_properties","method/cfdm.Bounds.copy","method/cfdm.Bounds.creation_commands","method/cfdm.Bounds.del_data","method/cfdm.Bounds.del_property","method/cfdm.Bounds.dump","method/cfdm.Bounds.equals","method/cfdm.Bounds.get_data","method/cfdm.Bounds.get_filenames","method/cfdm.Bounds.get_property","method/cfdm.Bounds.has_bounds","method/cfdm.Bounds.has_data","method/cfdm.Bounds.has_property","method/cfdm.Bounds.identities","method/cfdm.Bounds.identity","method/cfdm.Bounds.inherited_properties","method/cfdm.Bounds.insert_dimension","method/cfdm.Bounds.nc_clear_dimension_groups","method/cfdm.Bounds.nc_clear_variable_groups","method/cfdm.Bounds.nc_del_dimension","method/cfdm.Bounds.nc_del_variable","method/cfdm.Bounds.nc_dimension_groups","method/cfdm.Bounds.nc_get_dimension","method/cfdm.Bounds.nc_get_variable","method/cfdm.Bounds.nc_has_dimension","method/cfdm.Bounds.nc_has_variable","method/cfdm.Bounds.nc_set_dimension","method/cfdm.Bounds.nc_set_dimension_groups","method/cfdm.Bounds.nc_set_variable","method/cfdm.Bounds.nc_set_variable_groups","method/cfdm.Bounds.nc_variable_groups","method/cfdm.Bounds.properties","method/cfdm.Bounds.set_data","method/cfdm.Bounds.set_properties","method/cfdm.Bounds.set_property","method/cfdm.Bounds.squeeze","method/cfdm.Bounds.transpose","method/cfdm.Bounds.uncompress","method/cfdm.CellMeasure.__deepcopy__","method/cfdm.CellMeasure.__getitem__","method/cfdm.CellMeasure.__repr__","method/cfdm.CellMeasure.__str__","method/cfdm.CellMeasure._docstring_method_exclusions","method/cfdm.CellMeasure._docstring_package_depth","method/cfdm.CellMeasure._docstring_special_substitutions","method/cfdm.CellMeasure._docstring_substitutions","method/cfdm.CellMeasure.apply_masking","method/cfdm.CellMeasure.clear_properties","method/cfdm.CellMeasure.copy","method/cfdm.CellMeasure.creation_commands","method/cfdm.CellMeasure.del_data","method/cfdm.CellMeasure.del_measure","method/cfdm.CellMeasure.del_property","method/cfdm.CellMeasure.dump","method/cfdm.CellMeasure.equals","method/cfdm.CellMeasure.get_data","method/cfdm.CellMeasure.get_filenames","method/cfdm.CellMeasure.get_measure","method/cfdm.CellMeasure.get_property","method/cfdm.CellMeasure.has_bounds","method/cfdm.CellMeasure.has_data","method/cfdm.CellMeasure.has_measure","method/cfdm.CellMeasure.has_property","method/cfdm.CellMeasure.identities","method/cfdm.CellMeasure.identity","method/cfdm.CellMeasure.insert_dimension","method/cfdm.CellMeasure.nc_clear_variable_groups","method/cfdm.CellMeasure.nc_del_variable","method/cfdm.CellMeasure.nc_get_external","method/cfdm.CellMeasure.nc_get_variable","method/cfdm.CellMeasure.nc_has_variable","method/cfdm.CellMeasure.nc_set_external","method/cfdm.CellMeasure.nc_set_variable","method/cfdm.CellMeasure.nc_set_variable_groups","method/cfdm.CellMeasure.nc_variable_groups","method/cfdm.CellMeasure.properties","method/cfdm.CellMeasure.set_data","method/cfdm.CellMeasure.set_measure","method/cfdm.CellMeasure.set_properties","method/cfdm.CellMeasure.set_property","method/cfdm.CellMeasure.squeeze","method/cfdm.CellMeasure.transpose","method/cfdm.CellMeasure.uncompress","method/cfdm.CellMethod.__deepcopy__","method/cfdm.CellMethod.__repr__","method/cfdm.CellMethod.__str__","method/cfdm.CellMethod._docstring_method_exclusions","method/cfdm.CellMethod._docstring_package_depth","method/cfdm.CellMethod._docstring_special_substitutions","method/cfdm.CellMethod._docstring_substitutions","method/cfdm.CellMethod.copy","method/cfdm.CellMethod.creation_commands","method/cfdm.CellMethod.del_axes","method/cfdm.CellMethod.del_method","method/cfdm.CellMethod.del_qualifier","method/cfdm.CellMethod.dump","method/cfdm.CellMethod.equals","method/cfdm.CellMethod.get_axes","method/cfdm.CellMethod.get_method","method/cfdm.CellMethod.get_qualifier","method/cfdm.CellMethod.has_axes","method/cfdm.CellMethod.has_method","method/cfdm.CellMethod.has_qualifier","method/cfdm.CellMethod.identities","method/cfdm.CellMethod.identity","method/cfdm.CellMethod.qualifiers","method/cfdm.CellMethod.set_axes","method/cfdm.CellMethod.set_method","method/cfdm.CellMethod.set_qualifier","method/cfdm.CellMethod.sorted","method/cfdm.CompressedArray.__array__","method/cfdm.CompressedArray.__deepcopy__","method/cfdm.CompressedArray.__getitem__","method/cfdm.CompressedArray.__repr__","method/cfdm.CompressedArray.__str__","method/cfdm.CompressedArray._docstring_method_exclusions","method/cfdm.CompressedArray._docstring_package_depth","method/cfdm.CompressedArray._docstring_special_substitutions","method/cfdm.CompressedArray._docstring_substitutions","method/cfdm.CompressedArray.copy","method/cfdm.CompressedArray.get_compressed_axes","method/cfdm.CompressedArray.get_compressed_dimension","method/cfdm.CompressedArray.get_compression_type","method/cfdm.CompressedArray.get_subspace","method/cfdm.CompressedArray.source","method/cfdm.CompressedArray.to_memory","method/cfdm.Configuration.__enter__","method/cfdm.Configuration.__exit__","method/cfdm.Configuration.__repr__","method/cfdm.Configuration.clear","method/cfdm.Configuration.copy","method/cfdm.Configuration.fromkeys","method/cfdm.Configuration.get","method/cfdm.Configuration.items","method/cfdm.Configuration.keys","method/cfdm.Configuration.pop","method/cfdm.Configuration.popitem","method/cfdm.Configuration.setdefault","method/cfdm.Configuration.update","method/cfdm.Configuration.values","method/cfdm.Constant.__deepcopy__","method/cfdm.Constant.__enter__","method/cfdm.Constant.__exit__","method/cfdm.Constant.__repr__","method/cfdm.Constant.__str__","method/cfdm.Constant.copy","method/cfdm.Constructs.__call__","method/cfdm.Constructs.__contains__","method/cfdm.Constructs.__copy__","method/cfdm.Constructs.__deepcopy__","method/cfdm.Constructs.__getitem__","method/cfdm.Constructs.__iter__","method/cfdm.Constructs.__len__","method/cfdm.Constructs.__repr__","method/cfdm.Constructs.__str__","method/cfdm.Constructs._docstring_method_exclusions","method/cfdm.Constructs._docstring_package_depth","method/cfdm.Constructs._docstring_special_substitutions","method/cfdm.Constructs._docstring_substitutions","method/cfdm.Constructs.clear_filters_applied","method/cfdm.Constructs.construct_type","method/cfdm.Constructs.construct_types","method/cfdm.Constructs.copy","method/cfdm.Constructs.data_axes","method/cfdm.Constructs.domain_axes","method/cfdm.Constructs.domain_axis_identity","method/cfdm.Constructs.equals","method/cfdm.Constructs.filter","method/cfdm.Constructs.filter_by_axis","method/cfdm.Constructs.filter_by_data","method/cfdm.Constructs.filter_by_identity","method/cfdm.Constructs.filter_by_key","method/cfdm.Constructs.filter_by_measure","method/cfdm.Constructs.filter_by_method","method/cfdm.Constructs.filter_by_naxes","method/cfdm.Constructs.filter_by_ncdim","method/cfdm.Constructs.filter_by_ncvar","method/cfdm.Constructs.filter_by_property","method/cfdm.Constructs.filter_by_size","method/cfdm.Constructs.filter_by_type","method/cfdm.Constructs.filters_applied","method/cfdm.Constructs.get","method/cfdm.Constructs.get_data_axes","method/cfdm.Constructs.inverse_filter","method/cfdm.Constructs.items","method/cfdm.Constructs.key","method/cfdm.Constructs.keys","method/cfdm.Constructs.new_identifier","method/cfdm.Constructs.ordered","method/cfdm.Constructs.replace","method/cfdm.Constructs.shallow_copy","method/cfdm.Constructs.todict","method/cfdm.Constructs.unfilter","method/cfdm.Constructs.value","method/cfdm.Constructs.values","method/cfdm.CoordinateConversion.__bool__","method/cfdm.CoordinateConversion.__deepcopy__","method/cfdm.CoordinateConversion.__nonzero__","method/cfdm.CoordinateConversion.__repr__","method/cfdm.CoordinateConversion.__str__","method/cfdm.CoordinateConversion._docstring_method_exclusions","method/cfdm.CoordinateConversion._docstring_package_depth","method/cfdm.CoordinateConversion._docstring_special_substitutions","method/cfdm.CoordinateConversion._docstring_substitutions","method/cfdm.CoordinateConversion.clear_domain_ancillaries","method/cfdm.CoordinateConversion.clear_parameters","method/cfdm.CoordinateConversion.copy","method/cfdm.CoordinateConversion.del_domain_ancillary","method/cfdm.CoordinateConversion.del_parameter","method/cfdm.CoordinateConversion.domain_ancillaries","method/cfdm.CoordinateConversion.equals","method/cfdm.CoordinateConversion.get_domain_ancillary","method/cfdm.CoordinateConversion.get_parameter","method/cfdm.CoordinateConversion.has_domain_ancillary","method/cfdm.CoordinateConversion.has_parameter","method/cfdm.CoordinateConversion.parameters","method/cfdm.CoordinateConversion.set_domain_ancillaries","method/cfdm.CoordinateConversion.set_domain_ancillary","method/cfdm.CoordinateConversion.set_parameter","method/cfdm.CoordinateConversion.set_parameters","method/cfdm.CoordinateReference.__deepcopy__","method/cfdm.CoordinateReference.__repr__","method/cfdm.CoordinateReference.__str__","method/cfdm.CoordinateReference._docstring_method_exclusions","method/cfdm.CoordinateReference._docstring_package_depth","method/cfdm.CoordinateReference._docstring_special_substitutions","method/cfdm.CoordinateReference._docstring_substitutions","method/cfdm.CoordinateReference.clear_coordinates","method/cfdm.CoordinateReference.coordinates","method/cfdm.CoordinateReference.copy","method/cfdm.CoordinateReference.creation_commands","method/cfdm.CoordinateReference.del_coordinate","method/cfdm.CoordinateReference.del_coordinate_conversion","method/cfdm.CoordinateReference.del_datum","method/cfdm.CoordinateReference.dump","method/cfdm.CoordinateReference.equals","method/cfdm.CoordinateReference.get_coordinate_conversion","method/cfdm.CoordinateReference.get_datum","method/cfdm.CoordinateReference.has_coordinate","method/cfdm.CoordinateReference.identities","method/cfdm.CoordinateReference.identity","method/cfdm.CoordinateReference.nc_clear_variable_groups","method/cfdm.CoordinateReference.nc_del_variable","method/cfdm.CoordinateReference.nc_get_variable","method/cfdm.CoordinateReference.nc_has_variable","method/cfdm.CoordinateReference.nc_set_variable","method/cfdm.CoordinateReference.nc_set_variable_groups","method/cfdm.CoordinateReference.nc_variable_groups","method/cfdm.CoordinateReference.set_coordinate","method/cfdm.CoordinateReference.set_coordinate_conversion","method/cfdm.CoordinateReference.set_coordinates","method/cfdm.CoordinateReference.set_datum","method/cfdm.Count.__deepcopy__","method/cfdm.Count.__getitem__","method/cfdm.Count.__repr__","method/cfdm.Count.__str__","method/cfdm.Count._docstring_method_exclusions","method/cfdm.Count._docstring_package_depth","method/cfdm.Count._docstring_special_substitutions","method/cfdm.Count._docstring_substitutions","method/cfdm.Count.apply_masking","method/cfdm.Count.clear_properties","method/cfdm.Count.copy","method/cfdm.Count.creation_commands","method/cfdm.Count.del_data","method/cfdm.Count.del_property","method/cfdm.Count.dump","method/cfdm.Count.equals","method/cfdm.Count.get_data","method/cfdm.Count.get_filenames","method/cfdm.Count.get_property","method/cfdm.Count.has_bounds","method/cfdm.Count.has_data","method/cfdm.Count.has_property","method/cfdm.Count.identities","method/cfdm.Count.identity","method/cfdm.Count.insert_dimension","method/cfdm.Count.nc_clear_dimension_groups","method/cfdm.Count.nc_clear_sample_dimension_groups","method/cfdm.Count.nc_clear_variable_groups","method/cfdm.Count.nc_del_dimension","method/cfdm.Count.nc_del_sample_dimension","method/cfdm.Count.nc_del_variable","method/cfdm.Count.nc_dimension_groups","method/cfdm.Count.nc_get_dimension","method/cfdm.Count.nc_get_sample_dimension","method/cfdm.Count.nc_get_variable","method/cfdm.Count.nc_has_dimension","method/cfdm.Count.nc_has_sample_dimension","method/cfdm.Count.nc_has_variable","method/cfdm.Count.nc_sample_dimension_groups","method/cfdm.Count.nc_set_dimension","method/cfdm.Count.nc_set_dimension_groups","method/cfdm.Count.nc_set_sample_dimension","method/cfdm.Count.nc_set_sample_dimension_groups","method/cfdm.Count.nc_set_variable","method/cfdm.Count.nc_set_variable_groups","method/cfdm.Count.nc_variable_groups","method/cfdm.Count.properties","method/cfdm.Count.set_data","method/cfdm.Count.set_properties","method/cfdm.Count.set_property","method/cfdm.Count.squeeze","method/cfdm.Count.transpose","method/cfdm.Count.uncompress","method/cfdm.Data.__array__","method/cfdm.Data.__deepcopy__","method/cfdm.Data.__getitem__","method/cfdm.Data.__int__","method/cfdm.Data.__iter__","method/cfdm.Data.__repr__","method/cfdm.Data.__setitem__","method/cfdm.Data.__str__","method/cfdm.Data._docstring_method_exclusions","method/cfdm.Data._docstring_package_depth","method/cfdm.Data._docstring_special_substitutions","method/cfdm.Data._docstring_substitutions","method/cfdm.Data.any","method/cfdm.Data.apply_masking","method/cfdm.Data.copy","method/cfdm.Data.creation_commands","method/cfdm.Data.del_calendar","method/cfdm.Data.del_fill_value","method/cfdm.Data.del_units","method/cfdm.Data.empty","method/cfdm.Data.equals","method/cfdm.Data.filled","method/cfdm.Data.first_element","method/cfdm.Data.flatten","method/cfdm.Data.get_calendar","method/cfdm.Data.get_compressed_axes","method/cfdm.Data.get_compressed_dimension","method/cfdm.Data.get_compression_type","method/cfdm.Data.get_count","method/cfdm.Data.get_filenames","method/cfdm.Data.get_fill_value","method/cfdm.Data.get_index","method/cfdm.Data.get_list","method/cfdm.Data.get_units","method/cfdm.Data.has_calendar","method/cfdm.Data.has_fill_value","method/cfdm.Data.has_units","method/cfdm.Data.insert_dimension","method/cfdm.Data.last_element","method/cfdm.Data.max","method/cfdm.Data.maximum","method/cfdm.Data.min","method/cfdm.Data.minimum","method/cfdm.Data.nc_clear_hdf5_chunksizes","method/cfdm.Data.nc_hdf5_chunksizes","method/cfdm.Data.nc_set_hdf5_chunksizes","method/cfdm.Data.second_element","method/cfdm.Data.set_calendar","method/cfdm.Data.set_fill_value","method/cfdm.Data.set_units","method/cfdm.Data.source","method/cfdm.Data.squeeze","method/cfdm.Data.sum","method/cfdm.Data.to_memory","method/cfdm.Data.transpose","method/cfdm.Data.uncompress","method/cfdm.Data.unique","method/cfdm.Datum.__bool__","method/cfdm.Datum.__deepcopy__","method/cfdm.Datum.__nonzero__","method/cfdm.Datum.__repr__","method/cfdm.Datum.__str__","method/cfdm.Datum._docstring_method_exclusions","method/cfdm.Datum._docstring_package_depth","method/cfdm.Datum._docstring_special_substitutions","method/cfdm.Datum._docstring_substitutions","method/cfdm.Datum.clear_parameters","method/cfdm.Datum.copy","method/cfdm.Datum.del_parameter","method/cfdm.Datum.equals","method/cfdm.Datum.get_parameter","method/cfdm.Datum.has_parameter","method/cfdm.Datum.nc_clear_variable_groups","method/cfdm.Datum.nc_del_variable","method/cfdm.Datum.nc_get_variable","method/cfdm.Datum.nc_has_variable","method/cfdm.Datum.nc_set_variable","method/cfdm.Datum.nc_set_variable_groups","method/cfdm.Datum.nc_variable_groups","method/cfdm.Datum.parameters","method/cfdm.Datum.set_parameter","method/cfdm.Datum.set_parameters","method/cfdm.DimensionCoordinate.__deepcopy__","method/cfdm.DimensionCoordinate.__getitem__","method/cfdm.DimensionCoordinate.__repr__","method/cfdm.DimensionCoordinate.__str__","method/cfdm.DimensionCoordinate._docstring_method_exclusions","method/cfdm.DimensionCoordinate._docstring_package_depth","method/cfdm.DimensionCoordinate._docstring_special_substitutions","method/cfdm.DimensionCoordinate._docstring_substitutions","method/cfdm.DimensionCoordinate.apply_masking","method/cfdm.DimensionCoordinate.clear_properties","method/cfdm.DimensionCoordinate.copy","method/cfdm.DimensionCoordinate.creation_commands","method/cfdm.DimensionCoordinate.del_bounds","method/cfdm.DimensionCoordinate.del_climatology","method/cfdm.DimensionCoordinate.del_data","method/cfdm.DimensionCoordinate.del_geometry","method/cfdm.DimensionCoordinate.del_interior_ring","method/cfdm.DimensionCoordinate.del_node_count","method/cfdm.DimensionCoordinate.del_part_node_count","method/cfdm.DimensionCoordinate.del_property","method/cfdm.DimensionCoordinate.dump","method/cfdm.DimensionCoordinate.equals","method/cfdm.DimensionCoordinate.get_bounds","method/cfdm.DimensionCoordinate.get_bounds_data","method/cfdm.DimensionCoordinate.get_climatology","method/cfdm.DimensionCoordinate.get_data","method/cfdm.DimensionCoordinate.get_filenames","method/cfdm.DimensionCoordinate.get_geometry","method/cfdm.DimensionCoordinate.get_interior_ring","method/cfdm.DimensionCoordinate.get_node_count","method/cfdm.DimensionCoordinate.get_part_node_count","method/cfdm.DimensionCoordinate.get_property","method/cfdm.DimensionCoordinate.has_bounds","method/cfdm.DimensionCoordinate.has_data","method/cfdm.DimensionCoordinate.has_geometry","method/cfdm.DimensionCoordinate.has_interior_ring","method/cfdm.DimensionCoordinate.has_node_count","method/cfdm.DimensionCoordinate.has_part_node_count","method/cfdm.DimensionCoordinate.has_property","method/cfdm.DimensionCoordinate.identities","method/cfdm.DimensionCoordinate.identity","method/cfdm.DimensionCoordinate.insert_dimension","method/cfdm.DimensionCoordinate.is_climatology","method/cfdm.DimensionCoordinate.nc_clear_variable_groups","method/cfdm.DimensionCoordinate.nc_del_variable","method/cfdm.DimensionCoordinate.nc_get_variable","method/cfdm.DimensionCoordinate.nc_has_variable","method/cfdm.DimensionCoordinate.nc_set_variable","method/cfdm.DimensionCoordinate.nc_set_variable_groups","method/cfdm.DimensionCoordinate.nc_variable_groups","method/cfdm.DimensionCoordinate.properties","method/cfdm.DimensionCoordinate.set_bounds","method/cfdm.DimensionCoordinate.set_climatology","method/cfdm.DimensionCoordinate.set_data","method/cfdm.DimensionCoordinate.set_geometry","method/cfdm.DimensionCoordinate.set_interior_ring","method/cfdm.DimensionCoordinate.set_node_count","method/cfdm.DimensionCoordinate.set_part_node_count","method/cfdm.DimensionCoordinate.set_properties","method/cfdm.DimensionCoordinate.set_property","method/cfdm.DimensionCoordinate.squeeze","method/cfdm.DimensionCoordinate.transpose","method/cfdm.DimensionCoordinate.uncompress","method/cfdm.Domain.__deepcopy__","method/cfdm.Domain.__repr__","method/cfdm.Domain.__str__","method/cfdm.Domain._docstring_method_exclusions","method/cfdm.Domain._docstring_package_depth","method/cfdm.Domain._docstring_special_substitutions","method/cfdm.Domain._docstring_substitutions","method/cfdm.Domain.apply_masking","method/cfdm.Domain.auxiliary_coordinates","method/cfdm.Domain.cell_measures","method/cfdm.Domain.clear_properties","method/cfdm.Domain.climatological_time_axes","method/cfdm.Domain.construct","method/cfdm.Domain.construct_item","method/cfdm.Domain.construct_key","method/cfdm.Domain.coordinate_references","method/cfdm.Domain.coordinates","method/cfdm.Domain.copy","method/cfdm.Domain.creation_commands","method/cfdm.Domain.dataset_compliance","method/cfdm.Domain.del_construct","method/cfdm.Domain.del_data_axes","method/cfdm.Domain.del_property","method/cfdm.Domain.dimension_coordinates","method/cfdm.Domain.domain_ancillaries","method/cfdm.Domain.domain_axes","method/cfdm.Domain.domain_axis_key","method/cfdm.Domain.dump","method/cfdm.Domain.equals","method/cfdm.Domain.fromconstructs","method/cfdm.Domain.get_construct","method/cfdm.Domain.get_data_axes","method/cfdm.Domain.get_filenames","method/cfdm.Domain.get_property","method/cfdm.Domain.has_bounds","method/cfdm.Domain.has_construct","method/cfdm.Domain.has_data","method/cfdm.Domain.has_data_axes","method/cfdm.Domain.has_geometry","method/cfdm.Domain.has_property","method/cfdm.Domain.identities","method/cfdm.Domain.identity","method/cfdm.Domain.nc_clear_component_dimension_groups","method/cfdm.Domain.nc_clear_component_sample_dimension_groups","method/cfdm.Domain.nc_clear_component_variable_groups","method/cfdm.Domain.nc_clear_geometry_variable_groups","method/cfdm.Domain.nc_clear_global_attributes","method/cfdm.Domain.nc_clear_group_attributes","method/cfdm.Domain.nc_clear_variable_groups","method/cfdm.Domain.nc_del_component_dimension","method/cfdm.Domain.nc_del_component_sample_dimension","method/cfdm.Domain.nc_del_component_variable","method/cfdm.Domain.nc_del_geometry_variable","method/cfdm.Domain.nc_del_variable","method/cfdm.Domain.nc_geometry_variable_groups","method/cfdm.Domain.nc_get_geometry_variable","method/cfdm.Domain.nc_get_variable","method/cfdm.Domain.nc_global_attributes","method/cfdm.Domain.nc_group_attributes","method/cfdm.Domain.nc_has_geometry_variable","method/cfdm.Domain.nc_has_variable","method/cfdm.Domain.nc_set_component_dimension","method/cfdm.Domain.nc_set_component_dimension_groups","method/cfdm.Domain.nc_set_component_sample_dimension","method/cfdm.Domain.nc_set_component_sample_dimension_groups","method/cfdm.Domain.nc_set_component_variable","method/cfdm.Domain.nc_set_component_variable_groups","method/cfdm.Domain.nc_set_geometry_variable","method/cfdm.Domain.nc_set_geometry_variable_groups","method/cfdm.Domain.nc_set_global_attribute","method/cfdm.Domain.nc_set_global_attributes","method/cfdm.Domain.nc_set_group_attribute","method/cfdm.Domain.nc_set_group_attributes","method/cfdm.Domain.nc_set_variable","method/cfdm.Domain.nc_set_variable_groups","method/cfdm.Domain.nc_variable_groups","method/cfdm.Domain.properties","method/cfdm.Domain.set_construct","method/cfdm.Domain.set_data_axes","method/cfdm.Domain.set_properties","method/cfdm.Domain.set_property","method/cfdm.DomainAncillary.__deepcopy__","method/cfdm.DomainAncillary.__getitem__","method/cfdm.DomainAncillary.__repr__","method/cfdm.DomainAncillary.__str__","method/cfdm.DomainAncillary._docstring_method_exclusions","method/cfdm.DomainAncillary._docstring_package_depth","method/cfdm.DomainAncillary._docstring_special_substitutions","method/cfdm.DomainAncillary._docstring_substitutions","method/cfdm.DomainAncillary.apply_masking","method/cfdm.DomainAncillary.clear_properties","method/cfdm.DomainAncillary.copy","method/cfdm.DomainAncillary.creation_commands","method/cfdm.DomainAncillary.del_bounds","method/cfdm.DomainAncillary.del_data","method/cfdm.DomainAncillary.del_geometry","method/cfdm.DomainAncillary.del_interior_ring","method/cfdm.DomainAncillary.del_node_count","method/cfdm.DomainAncillary.del_part_node_count","method/cfdm.DomainAncillary.del_property","method/cfdm.DomainAncillary.dump","method/cfdm.DomainAncillary.equals","method/cfdm.DomainAncillary.get_bounds","method/cfdm.DomainAncillary.get_bounds_data","method/cfdm.DomainAncillary.get_data","method/cfdm.DomainAncillary.get_filenames","method/cfdm.DomainAncillary.get_geometry","method/cfdm.DomainAncillary.get_interior_ring","method/cfdm.DomainAncillary.get_node_count","method/cfdm.DomainAncillary.get_part_node_count","method/cfdm.DomainAncillary.get_property","method/cfdm.DomainAncillary.has_bounds","method/cfdm.DomainAncillary.has_data","method/cfdm.DomainAncillary.has_geometry","method/cfdm.DomainAncillary.has_interior_ring","method/cfdm.DomainAncillary.has_node_count","method/cfdm.DomainAncillary.has_part_node_count","method/cfdm.DomainAncillary.has_property","method/cfdm.DomainAncillary.identities","method/cfdm.DomainAncillary.identity","method/cfdm.DomainAncillary.insert_dimension","method/cfdm.DomainAncillary.nc_clear_variable_groups","method/cfdm.DomainAncillary.nc_del_variable","method/cfdm.DomainAncillary.nc_get_variable","method/cfdm.DomainAncillary.nc_has_variable","method/cfdm.DomainAncillary.nc_set_variable","method/cfdm.DomainAncillary.nc_set_variable_groups","method/cfdm.DomainAncillary.nc_variable_groups","method/cfdm.DomainAncillary.properties","method/cfdm.DomainAncillary.set_bounds","method/cfdm.DomainAncillary.set_data","method/cfdm.DomainAncillary.set_geometry","method/cfdm.DomainAncillary.set_interior_ring","method/cfdm.DomainAncillary.set_node_count","method/cfdm.DomainAncillary.set_part_node_count","method/cfdm.DomainAncillary.set_properties","method/cfdm.DomainAncillary.set_property","method/cfdm.DomainAncillary.squeeze","method/cfdm.DomainAncillary.transpose","method/cfdm.DomainAncillary.uncompress","method/cfdm.DomainAxis.__deepcopy__","method/cfdm.DomainAxis.__repr__","method/cfdm.DomainAxis.__str__","method/cfdm.DomainAxis._docstring_method_exclusions","method/cfdm.DomainAxis._docstring_package_depth","method/cfdm.DomainAxis._docstring_special_substitutions","method/cfdm.DomainAxis._docstring_substitutions","method/cfdm.DomainAxis.copy","method/cfdm.DomainAxis.creation_commands","method/cfdm.DomainAxis.del_size","method/cfdm.DomainAxis.equals","method/cfdm.DomainAxis.get_size","method/cfdm.DomainAxis.has_size","method/cfdm.DomainAxis.identities","method/cfdm.DomainAxis.identity","method/cfdm.DomainAxis.nc_clear_dimension_groups","method/cfdm.DomainAxis.nc_del_dimension","method/cfdm.DomainAxis.nc_dimension_groups","method/cfdm.DomainAxis.nc_get_dimension","method/cfdm.DomainAxis.nc_has_dimension","method/cfdm.DomainAxis.nc_is_unlimited","method/cfdm.DomainAxis.nc_set_dimension","method/cfdm.DomainAxis.nc_set_dimension_groups","method/cfdm.DomainAxis.nc_set_unlimited","method/cfdm.DomainAxis.set_size","method/cfdm.Field.__deepcopy__","method/cfdm.Field.__getitem__","method/cfdm.Field.__repr__","method/cfdm.Field.__str__","method/cfdm.Field._docstring_method_exclusions","method/cfdm.Field._docstring_package_depth","method/cfdm.Field._docstring_special_substitutions","method/cfdm.Field._docstring_substitutions","method/cfdm.Field.apply_masking","method/cfdm.Field.auxiliary_coordinates","method/cfdm.Field.cell_measures","method/cfdm.Field.cell_methods","method/cfdm.Field.clear_properties","method/cfdm.Field.climatological_time_axes","method/cfdm.Field.compress","method/cfdm.Field.construct","method/cfdm.Field.construct_item","method/cfdm.Field.construct_key","method/cfdm.Field.convert","method/cfdm.Field.coordinate_references","method/cfdm.Field.coordinates","method/cfdm.Field.copy","method/cfdm.Field.creation_commands","method/cfdm.Field.dataset_compliance","method/cfdm.Field.del_construct","method/cfdm.Field.del_data","method/cfdm.Field.del_data_axes","method/cfdm.Field.del_property","method/cfdm.Field.dimension_coordinates","method/cfdm.Field.domain_ancillaries","method/cfdm.Field.domain_axes","method/cfdm.Field.domain_axis_key","method/cfdm.Field.dump","method/cfdm.Field.equals","method/cfdm.Field.field_ancillaries","method/cfdm.Field.get_construct","method/cfdm.Field.get_data","method/cfdm.Field.get_data_axes","method/cfdm.Field.get_domain","method/cfdm.Field.get_filenames","method/cfdm.Field.get_property","method/cfdm.Field.has_bounds","method/cfdm.Field.has_construct","method/cfdm.Field.has_data","method/cfdm.Field.has_data_axes","method/cfdm.Field.has_geometry","method/cfdm.Field.has_property","method/cfdm.Field.identities","method/cfdm.Field.identity","method/cfdm.Field.insert_dimension","method/cfdm.Field.nc_clear_component_dimension_groups","method/cfdm.Field.nc_clear_component_sample_dimension_groups","method/cfdm.Field.nc_clear_component_variable_groups","method/cfdm.Field.nc_clear_geometry_variable_groups","method/cfdm.Field.nc_clear_global_attributes","method/cfdm.Field.nc_clear_group_attributes","method/cfdm.Field.nc_clear_variable_groups","method/cfdm.Field.nc_del_component_dimension","method/cfdm.Field.nc_del_component_sample_dimension","method/cfdm.Field.nc_del_component_variable","method/cfdm.Field.nc_del_geometry_variable","method/cfdm.Field.nc_del_variable","method/cfdm.Field.nc_geometry_variable_groups","method/cfdm.Field.nc_get_geometry_variable","method/cfdm.Field.nc_get_variable","method/cfdm.Field.nc_global_attributes","method/cfdm.Field.nc_group_attributes","method/cfdm.Field.nc_has_geometry_variable","method/cfdm.Field.nc_has_variable","method/cfdm.Field.nc_set_component_dimension","method/cfdm.Field.nc_set_component_dimension_groups","method/cfdm.Field.nc_set_component_sample_dimension","method/cfdm.Field.nc_set_component_sample_dimension_groups","method/cfdm.Field.nc_set_component_variable","method/cfdm.Field.nc_set_component_variable_groups","method/cfdm.Field.nc_set_geometry_variable","method/cfdm.Field.nc_set_geometry_variable_groups","method/cfdm.Field.nc_set_global_attribute","method/cfdm.Field.nc_set_global_attributes","method/cfdm.Field.nc_set_group_attribute","method/cfdm.Field.nc_set_group_attributes","method/cfdm.Field.nc_set_variable","method/cfdm.Field.nc_set_variable_groups","method/cfdm.Field.nc_variable_groups","method/cfdm.Field.properties","method/cfdm.Field.set_construct","method/cfdm.Field.set_data","method/cfdm.Field.set_data_axes","method/cfdm.Field.set_properties","method/cfdm.Field.set_property","method/cfdm.Field.squeeze","method/cfdm.Field.transpose","method/cfdm.Field.uncompress","method/cfdm.FieldAncillary.__deepcopy__","method/cfdm.FieldAncillary.__getitem__","method/cfdm.FieldAncillary.__repr__","method/cfdm.FieldAncillary.__str__","method/cfdm.FieldAncillary._docstring_method_exclusions","method/cfdm.FieldAncillary._docstring_package_depth","method/cfdm.FieldAncillary._docstring_special_substitutions","method/cfdm.FieldAncillary._docstring_substitutions","method/cfdm.FieldAncillary.apply_masking","method/cfdm.FieldAncillary.clear_properties","method/cfdm.FieldAncillary.copy","method/cfdm.FieldAncillary.creation_commands","method/cfdm.FieldAncillary.del_data","method/cfdm.FieldAncillary.del_property","method/cfdm.FieldAncillary.dump","method/cfdm.FieldAncillary.equals","method/cfdm.FieldAncillary.get_data","method/cfdm.FieldAncillary.get_filenames","method/cfdm.FieldAncillary.get_property","method/cfdm.FieldAncillary.has_bounds","method/cfdm.FieldAncillary.has_data","method/cfdm.FieldAncillary.has_property","method/cfdm.FieldAncillary.identities","method/cfdm.FieldAncillary.identity","method/cfdm.FieldAncillary.insert_dimension","method/cfdm.FieldAncillary.nc_clear_variable_groups","method/cfdm.FieldAncillary.nc_del_variable","method/cfdm.FieldAncillary.nc_get_variable","method/cfdm.FieldAncillary.nc_has_variable","method/cfdm.FieldAncillary.nc_set_variable","method/cfdm.FieldAncillary.nc_set_variable_groups","method/cfdm.FieldAncillary.nc_variable_groups","method/cfdm.FieldAncillary.properties","method/cfdm.FieldAncillary.set_data","method/cfdm.FieldAncillary.set_properties","method/cfdm.FieldAncillary.set_property","method/cfdm.FieldAncillary.squeeze","method/cfdm.FieldAncillary.transpose","method/cfdm.FieldAncillary.uncompress","method/cfdm.GatheredArray.__array__","method/cfdm.GatheredArray.__deepcopy__","method/cfdm.GatheredArray.__getitem__","method/cfdm.GatheredArray.__repr__","method/cfdm.GatheredArray.__str__","method/cfdm.GatheredArray.copy","method/cfdm.GatheredArray.get_compressed_axes","method/cfdm.GatheredArray.get_compressed_dimension","method/cfdm.GatheredArray.get_compression_type","method/cfdm.GatheredArray.get_list","method/cfdm.GatheredArray.get_subspace","method/cfdm.GatheredArray.source","method/cfdm.GatheredArray.to_memory","method/cfdm.Index.__deepcopy__","method/cfdm.Index.__getitem__","method/cfdm.Index.__repr__","method/cfdm.Index.__str__","method/cfdm.Index._docstring_method_exclusions","method/cfdm.Index._docstring_package_depth","method/cfdm.Index._docstring_special_substitutions","method/cfdm.Index._docstring_substitutions","method/cfdm.Index.apply_masking","method/cfdm.Index.clear_properties","method/cfdm.Index.copy","method/cfdm.Index.creation_commands","method/cfdm.Index.del_data","method/cfdm.Index.del_property","method/cfdm.Index.dump","method/cfdm.Index.equals","method/cfdm.Index.get_data","method/cfdm.Index.get_filenames","method/cfdm.Index.get_property","method/cfdm.Index.has_bounds","method/cfdm.Index.has_data","method/cfdm.Index.has_property","method/cfdm.Index.identities","method/cfdm.Index.identity","method/cfdm.Index.insert_dimension","method/cfdm.Index.nc_clear_dimension_groups","method/cfdm.Index.nc_clear_sample_dimension_groups","method/cfdm.Index.nc_clear_variable_groups","method/cfdm.Index.nc_del_dimension","method/cfdm.Index.nc_del_sample_dimension","method/cfdm.Index.nc_del_variable","method/cfdm.Index.nc_dimension_groups","method/cfdm.Index.nc_get_dimension","method/cfdm.Index.nc_get_sample_dimension","method/cfdm.Index.nc_get_variable","method/cfdm.Index.nc_has_dimension","method/cfdm.Index.nc_has_sample_dimension","method/cfdm.Index.nc_has_variable","method/cfdm.Index.nc_sample_dimension_groups","method/cfdm.Index.nc_set_dimension","method/cfdm.Index.nc_set_dimension_groups","method/cfdm.Index.nc_set_sample_dimension","method/cfdm.Index.nc_set_sample_dimension_groups","method/cfdm.Index.nc_set_variable","method/cfdm.Index.nc_set_variable_groups","method/cfdm.Index.nc_variable_groups","method/cfdm.Index.properties","method/cfdm.Index.set_data","method/cfdm.Index.set_properties","method/cfdm.Index.set_property","method/cfdm.Index.squeeze","method/cfdm.Index.transpose","method/cfdm.Index.uncompress","method/cfdm.InteriorRing.__deepcopy__","method/cfdm.InteriorRing.__getitem__","method/cfdm.InteriorRing.__repr__","method/cfdm.InteriorRing.__str__","method/cfdm.InteriorRing._docstring_method_exclusions","method/cfdm.InteriorRing._docstring_package_depth","method/cfdm.InteriorRing._docstring_special_substitutions","method/cfdm.InteriorRing._docstring_substitutions","method/cfdm.InteriorRing.apply_masking","method/cfdm.InteriorRing.clear_properties","method/cfdm.InteriorRing.copy","method/cfdm.InteriorRing.creation_commands","method/cfdm.InteriorRing.del_data","method/cfdm.InteriorRing.del_property","method/cfdm.InteriorRing.dump","method/cfdm.InteriorRing.equals","method/cfdm.InteriorRing.get_data","method/cfdm.InteriorRing.get_filenames","method/cfdm.InteriorRing.get_property","method/cfdm.InteriorRing.has_bounds","method/cfdm.InteriorRing.has_data","method/cfdm.InteriorRing.has_property","method/cfdm.InteriorRing.identities","method/cfdm.InteriorRing.identity","method/cfdm.InteriorRing.insert_dimension","method/cfdm.InteriorRing.nc_clear_dimension_groups","method/cfdm.InteriorRing.nc_clear_variable_groups","method/cfdm.InteriorRing.nc_del_dimension","method/cfdm.InteriorRing.nc_del_variable","method/cfdm.InteriorRing.nc_dimension_groups","method/cfdm.InteriorRing.nc_get_dimension","method/cfdm.InteriorRing.nc_get_variable","method/cfdm.InteriorRing.nc_has_dimension","method/cfdm.InteriorRing.nc_has_variable","method/cfdm.InteriorRing.nc_set_dimension","method/cfdm.InteriorRing.nc_set_dimension_groups","method/cfdm.InteriorRing.nc_set_variable","method/cfdm.InteriorRing.nc_set_variable_groups","method/cfdm.InteriorRing.nc_variable_groups","method/cfdm.InteriorRing.properties","method/cfdm.InteriorRing.set_data","method/cfdm.InteriorRing.set_properties","method/cfdm.InteriorRing.set_property","method/cfdm.InteriorRing.squeeze","method/cfdm.InteriorRing.transpose","method/cfdm.InteriorRing.uncompress","method/cfdm.List.__deepcopy__","method/cfdm.List.__getitem__","method/cfdm.List.__repr__","method/cfdm.List.__str__","method/cfdm.List._docstring_method_exclusions","method/cfdm.List._docstring_package_depth","method/cfdm.List._docstring_special_substitutions","method/cfdm.List._docstring_substitutions","method/cfdm.List.apply_masking","method/cfdm.List.clear_properties","method/cfdm.List.copy","method/cfdm.List.creation_commands","method/cfdm.List.del_data","method/cfdm.List.del_property","method/cfdm.List.dump","method/cfdm.List.equals","method/cfdm.List.get_data","method/cfdm.List.get_filenames","method/cfdm.List.get_property","method/cfdm.List.has_bounds","method/cfdm.List.has_data","method/cfdm.List.has_property","method/cfdm.List.identities","method/cfdm.List.identity","method/cfdm.List.insert_dimension","method/cfdm.List.nc_clear_variable_groups","method/cfdm.List.nc_del_variable","method/cfdm.List.nc_get_variable","method/cfdm.List.nc_has_variable","method/cfdm.List.nc_set_variable","method/cfdm.List.nc_set_variable_groups","method/cfdm.List.nc_variable_groups","method/cfdm.List.properties","method/cfdm.List.set_data","method/cfdm.List.set_properties","method/cfdm.List.set_property","method/cfdm.List.squeeze","method/cfdm.List.transpose","method/cfdm.List.uncompress","method/cfdm.NetCDFArray.__getitem__","method/cfdm.NetCDFArray._docstring_method_exclusions","method/cfdm.NetCDFArray._docstring_package_depth","method/cfdm.NetCDFArray._docstring_special_substitutions","method/cfdm.NetCDFArray._docstring_substitutions","method/cfdm.NetCDFArray.close","method/cfdm.NetCDFArray.copy","method/cfdm.NetCDFArray.get_compression_type","method/cfdm.NetCDFArray.get_filename","method/cfdm.NetCDFArray.get_group","method/cfdm.NetCDFArray.get_mask","method/cfdm.NetCDFArray.get_ncvar","method/cfdm.NetCDFArray.get_subspace","method/cfdm.NetCDFArray.get_varid","method/cfdm.NetCDFArray.open","method/cfdm.NetCDFArray.to_memory","method/cfdm.NumpyArray.__getitem__","method/cfdm.NumpyArray._docstring_method_exclusions","method/cfdm.NumpyArray._docstring_package_depth","method/cfdm.NumpyArray._docstring_special_substitutions","method/cfdm.NumpyArray._docstring_substitutions","method/cfdm.NumpyArray.copy","method/cfdm.NumpyArray.get_compression_type","method/cfdm.NumpyArray.get_subspace","method/cfdm.NumpyArray.to_memory","method/cfdm.RaggedContiguousArray.__array__","method/cfdm.RaggedContiguousArray.__deepcopy__","method/cfdm.RaggedContiguousArray.__getitem__","method/cfdm.RaggedContiguousArray.__repr__","method/cfdm.RaggedContiguousArray.__str__","method/cfdm.RaggedContiguousArray._docstring_method_exclusions","method/cfdm.RaggedContiguousArray._docstring_package_depth","method/cfdm.RaggedContiguousArray._docstring_special_substitutions","method/cfdm.RaggedContiguousArray._docstring_substitutions","method/cfdm.RaggedContiguousArray.copy","method/cfdm.RaggedContiguousArray.get_compressed_axes","method/cfdm.RaggedContiguousArray.get_compressed_dimension","method/cfdm.RaggedContiguousArray.get_compression_type","method/cfdm.RaggedContiguousArray.get_count","method/cfdm.RaggedContiguousArray.get_subspace","method/cfdm.RaggedContiguousArray.source","method/cfdm.RaggedContiguousArray.to_memory","method/cfdm.RaggedIndexedArray.__array__","method/cfdm.RaggedIndexedArray.__deepcopy__","method/cfdm.RaggedIndexedArray.__getitem__","method/cfdm.RaggedIndexedArray.__repr__","method/cfdm.RaggedIndexedArray.__str__","method/cfdm.RaggedIndexedArray._docstring_method_exclusions","method/cfdm.RaggedIndexedArray._docstring_package_depth","method/cfdm.RaggedIndexedArray._docstring_special_substitutions","method/cfdm.RaggedIndexedArray._docstring_substitutions","method/cfdm.RaggedIndexedArray.copy","method/cfdm.RaggedIndexedArray.get_compressed_axes","method/cfdm.RaggedIndexedArray.get_compressed_dimension","method/cfdm.RaggedIndexedArray.get_compression_type","method/cfdm.RaggedIndexedArray.get_index","method/cfdm.RaggedIndexedArray.get_subspace","method/cfdm.RaggedIndexedArray.source","method/cfdm.RaggedIndexedArray.to_memory","method/cfdm.RaggedIndexedContiguousArray.__array__","method/cfdm.RaggedIndexedContiguousArray.__deepcopy__","method/cfdm.RaggedIndexedContiguousArray.__getitem__","method/cfdm.RaggedIndexedContiguousArray.__repr__","method/cfdm.RaggedIndexedContiguousArray.__str__","method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions","method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth","method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions","method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions","method/cfdm.RaggedIndexedContiguousArray.copy","method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes","method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension","method/cfdm.RaggedIndexedContiguousArray.get_compression_type","method/cfdm.RaggedIndexedContiguousArray.get_count","method/cfdm.RaggedIndexedContiguousArray.get_index","method/cfdm.RaggedIndexedContiguousArray.get_subspace","method/cfdm.RaggedIndexedContiguousArray.source","method/cfdm.RaggedIndexedContiguousArray.to_memory","method/cfdm.core.Array.__deepcopy__","method/cfdm.core.Array._docstring_method_exclusions","method/cfdm.core.Array._docstring_package_depth","method/cfdm.core.Array._docstring_special_substitutions","method/cfdm.core.Array._docstring_substitutions","method/cfdm.core.Array.copy","method/cfdm.core.AuxiliaryCoordinate.__deepcopy__","method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions","method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth","method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions","method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions","method/cfdm.core.AuxiliaryCoordinate.clear_properties","method/cfdm.core.AuxiliaryCoordinate.copy","method/cfdm.core.AuxiliaryCoordinate.del_bounds","method/cfdm.core.AuxiliaryCoordinate.del_climatology","method/cfdm.core.AuxiliaryCoordinate.del_data","method/cfdm.core.AuxiliaryCoordinate.del_geometry","method/cfdm.core.AuxiliaryCoordinate.del_interior_ring","method/cfdm.core.AuxiliaryCoordinate.del_property","method/cfdm.core.AuxiliaryCoordinate.get_bounds","method/cfdm.core.AuxiliaryCoordinate.get_climatology","method/cfdm.core.AuxiliaryCoordinate.get_data","method/cfdm.core.AuxiliaryCoordinate.get_geometry","method/cfdm.core.AuxiliaryCoordinate.get_interior_ring","method/cfdm.core.AuxiliaryCoordinate.get_property","method/cfdm.core.AuxiliaryCoordinate.has_bounds","method/cfdm.core.AuxiliaryCoordinate.has_data","method/cfdm.core.AuxiliaryCoordinate.has_geometry","method/cfdm.core.AuxiliaryCoordinate.has_interior_ring","method/cfdm.core.AuxiliaryCoordinate.has_property","method/cfdm.core.AuxiliaryCoordinate.is_climatology","method/cfdm.core.AuxiliaryCoordinate.properties","method/cfdm.core.AuxiliaryCoordinate.set_bounds","method/cfdm.core.AuxiliaryCoordinate.set_climatology","method/cfdm.core.AuxiliaryCoordinate.set_data","method/cfdm.core.AuxiliaryCoordinate.set_geometry","method/cfdm.core.AuxiliaryCoordinate.set_interior_ring","method/cfdm.core.AuxiliaryCoordinate.set_properties","method/cfdm.core.AuxiliaryCoordinate.set_property","method/cfdm.core.Bounds.__deepcopy__","method/cfdm.core.Bounds.clear_properties","method/cfdm.core.Bounds.copy","method/cfdm.core.Bounds.del_data","method/cfdm.core.Bounds.del_property","method/cfdm.core.Bounds.get_data","method/cfdm.core.Bounds.get_property","method/cfdm.core.Bounds.has_bounds","method/cfdm.core.Bounds.has_data","method/cfdm.core.Bounds.has_property","method/cfdm.core.Bounds.properties","method/cfdm.core.Bounds.set_data","method/cfdm.core.Bounds.set_properties","method/cfdm.core.Bounds.set_property","method/cfdm.core.CellMeasure.__deepcopy__","method/cfdm.core.CellMeasure._docstring_method_exclusions","method/cfdm.core.CellMeasure._docstring_package_depth","method/cfdm.core.CellMeasure._docstring_special_substitutions","method/cfdm.core.CellMeasure._docstring_substitutions","method/cfdm.core.CellMeasure.clear_properties","method/cfdm.core.CellMeasure.copy","method/cfdm.core.CellMeasure.del_data","method/cfdm.core.CellMeasure.del_measure","method/cfdm.core.CellMeasure.del_property","method/cfdm.core.CellMeasure.get_data","method/cfdm.core.CellMeasure.get_measure","method/cfdm.core.CellMeasure.get_property","method/cfdm.core.CellMeasure.has_bounds","method/cfdm.core.CellMeasure.has_data","method/cfdm.core.CellMeasure.has_measure","method/cfdm.core.CellMeasure.has_property","method/cfdm.core.CellMeasure.properties","method/cfdm.core.CellMeasure.set_data","method/cfdm.core.CellMeasure.set_measure","method/cfdm.core.CellMeasure.set_properties","method/cfdm.core.CellMeasure.set_property","method/cfdm.core.CellMethod.__deepcopy__","method/cfdm.core.CellMethod._docstring_method_exclusions","method/cfdm.core.CellMethod._docstring_package_depth","method/cfdm.core.CellMethod._docstring_special_substitutions","method/cfdm.core.CellMethod._docstring_substitutions","method/cfdm.core.CellMethod.copy","method/cfdm.core.CellMethod.del_axes","method/cfdm.core.CellMethod.del_method","method/cfdm.core.CellMethod.del_qualifier","method/cfdm.core.CellMethod.get_axes","method/cfdm.core.CellMethod.get_method","method/cfdm.core.CellMethod.get_qualifier","method/cfdm.core.CellMethod.has_axes","method/cfdm.core.CellMethod.has_method","method/cfdm.core.CellMethod.has_qualifier","method/cfdm.core.CellMethod.qualifiers","method/cfdm.core.CellMethod.set_axes","method/cfdm.core.CellMethod.set_method","method/cfdm.core.CellMethod.set_qualifier","method/cfdm.core.Constructs.__call__","method/cfdm.core.Constructs.__contains__","method/cfdm.core.Constructs.__copy__","method/cfdm.core.Constructs.__deepcopy__","method/cfdm.core.Constructs.__getitem__","method/cfdm.core.Constructs.__iter__","method/cfdm.core.Constructs.__len__","method/cfdm.core.Constructs._docstring_method_exclusions","method/cfdm.core.Constructs._docstring_package_depth","method/cfdm.core.Constructs._docstring_special_substitutions","method/cfdm.core.Constructs._docstring_substitutions","method/cfdm.core.Constructs.construct_type","method/cfdm.core.Constructs.construct_types","method/cfdm.core.Constructs.copy","method/cfdm.core.Constructs.data_axes","method/cfdm.core.Constructs.filter_by_type","method/cfdm.core.Constructs.get","method/cfdm.core.Constructs.get_data_axes","method/cfdm.core.Constructs.items","method/cfdm.core.Constructs.key","method/cfdm.core.Constructs.keys","method/cfdm.core.Constructs.new_identifier","method/cfdm.core.Constructs.ordered","method/cfdm.core.Constructs.replace","method/cfdm.core.Constructs.shallow_copy","method/cfdm.core.Constructs.todict","method/cfdm.core.Constructs.value","method/cfdm.core.Constructs.values","method/cfdm.core.Container.__deepcopy__","method/cfdm.core.Container._del_component","method/cfdm.core.Container._docstring_method_exclusions","method/cfdm.core.Container._docstring_package_depth","method/cfdm.core.Container._docstring_special_substitutions","method/cfdm.core.Container._docstring_substitutions","method/cfdm.core.Container._get_component","method/cfdm.core.Container._has_component","method/cfdm.core.Container._set_component","method/cfdm.core.Container.copy","method/cfdm.core.Coordinate.__deepcopy__","method/cfdm.core.Coordinate._docstring_method_exclusions","method/cfdm.core.Coordinate._docstring_package_depth","method/cfdm.core.Coordinate._docstring_special_substitutions","method/cfdm.core.Coordinate._docstring_substitutions","method/cfdm.core.Coordinate.clear_properties","method/cfdm.core.Coordinate.copy","method/cfdm.core.Coordinate.del_bounds","method/cfdm.core.Coordinate.del_climatology","method/cfdm.core.Coordinate.del_data","method/cfdm.core.Coordinate.del_geometry","method/cfdm.core.Coordinate.del_interior_ring","method/cfdm.core.Coordinate.del_property","method/cfdm.core.Coordinate.get_bounds","method/cfdm.core.Coordinate.get_climatology","method/cfdm.core.Coordinate.get_data","method/cfdm.core.Coordinate.get_geometry","method/cfdm.core.Coordinate.get_interior_ring","method/cfdm.core.Coordinate.get_property","method/cfdm.core.Coordinate.has_bounds","method/cfdm.core.Coordinate.has_data","method/cfdm.core.Coordinate.has_geometry","method/cfdm.core.Coordinate.has_interior_ring","method/cfdm.core.Coordinate.has_property","method/cfdm.core.Coordinate.is_climatology","method/cfdm.core.Coordinate.properties","method/cfdm.core.Coordinate.set_bounds","method/cfdm.core.Coordinate.set_climatology","method/cfdm.core.Coordinate.set_data","method/cfdm.core.Coordinate.set_geometry","method/cfdm.core.Coordinate.set_interior_ring","method/cfdm.core.Coordinate.set_properties","method/cfdm.core.Coordinate.set_property","method/cfdm.core.CoordinateConversion.__deepcopy__","method/cfdm.core.CoordinateConversion._docstring_method_exclusions","method/cfdm.core.CoordinateConversion._docstring_package_depth","method/cfdm.core.CoordinateConversion._docstring_special_substitutions","method/cfdm.core.CoordinateConversion._docstring_substitutions","method/cfdm.core.CoordinateConversion.clear_domain_ancillaries","method/cfdm.core.CoordinateConversion.clear_parameters","method/cfdm.core.CoordinateConversion.copy","method/cfdm.core.CoordinateConversion.del_domain_ancillary","method/cfdm.core.CoordinateConversion.del_parameter","method/cfdm.core.CoordinateConversion.domain_ancillaries","method/cfdm.core.CoordinateConversion.get_domain_ancillary","method/cfdm.core.CoordinateConversion.get_parameter","method/cfdm.core.CoordinateConversion.has_domain_ancillary","method/cfdm.core.CoordinateConversion.has_parameter","method/cfdm.core.CoordinateConversion.parameters","method/cfdm.core.CoordinateConversion.set_domain_ancillaries","method/cfdm.core.CoordinateConversion.set_domain_ancillary","method/cfdm.core.CoordinateConversion.set_parameter","method/cfdm.core.CoordinateConversion.set_parameters","method/cfdm.core.CoordinateReference.__deepcopy__","method/cfdm.core.CoordinateReference._docstring_method_exclusions","method/cfdm.core.CoordinateReference._docstring_package_depth","method/cfdm.core.CoordinateReference._docstring_special_substitutions","method/cfdm.core.CoordinateReference._docstring_substitutions","method/cfdm.core.CoordinateReference.clear_coordinates","method/cfdm.core.CoordinateReference.coordinates","method/cfdm.core.CoordinateReference.copy","method/cfdm.core.CoordinateReference.del_coordinate","method/cfdm.core.CoordinateReference.del_coordinate_conversion","method/cfdm.core.CoordinateReference.del_datum","method/cfdm.core.CoordinateReference.get_coordinate_conversion","method/cfdm.core.CoordinateReference.get_datum","method/cfdm.core.CoordinateReference.has_coordinate","method/cfdm.core.CoordinateReference.set_coordinate","method/cfdm.core.CoordinateReference.set_coordinate_conversion","method/cfdm.core.CoordinateReference.set_coordinates","method/cfdm.core.CoordinateReference.set_datum","method/cfdm.core.Data.__deepcopy__","method/cfdm.core.Data.__repr__","method/cfdm.core.Data.__str__","method/cfdm.core.Data._docstring_method_exclusions","method/cfdm.core.Data._docstring_package_depth","method/cfdm.core.Data._docstring_special_substitutions","method/cfdm.core.Data._docstring_substitutions","method/cfdm.core.Data.copy","method/cfdm.core.Data.del_calendar","method/cfdm.core.Data.del_fill_value","method/cfdm.core.Data.del_units","method/cfdm.core.Data.get_calendar","method/cfdm.core.Data.get_fill_value","method/cfdm.core.Data.get_units","method/cfdm.core.Data.has_calendar","method/cfdm.core.Data.has_fill_value","method/cfdm.core.Data.has_units","method/cfdm.core.Data.set_calendar","method/cfdm.core.Data.set_fill_value","method/cfdm.core.Data.set_units","method/cfdm.core.Data.source","method/cfdm.core.Datum.__deepcopy__","method/cfdm.core.Datum._docstring_method_exclusions","method/cfdm.core.Datum._docstring_package_depth","method/cfdm.core.Datum._docstring_special_substitutions","method/cfdm.core.Datum._docstring_substitutions","method/cfdm.core.Datum.clear_parameters","method/cfdm.core.Datum.copy","method/cfdm.core.Datum.del_parameter","method/cfdm.core.Datum.get_parameter","method/cfdm.core.Datum.has_parameter","method/cfdm.core.Datum.parameters","method/cfdm.core.Datum.set_parameter","method/cfdm.core.Datum.set_parameters","method/cfdm.core.DimensionCoordinate.__deepcopy__","method/cfdm.core.DimensionCoordinate._docstring_method_exclusions","method/cfdm.core.DimensionCoordinate._docstring_package_depth","method/cfdm.core.DimensionCoordinate._docstring_special_substitutions","method/cfdm.core.DimensionCoordinate._docstring_substitutions","method/cfdm.core.DimensionCoordinate.clear_properties","method/cfdm.core.DimensionCoordinate.copy","method/cfdm.core.DimensionCoordinate.del_bounds","method/cfdm.core.DimensionCoordinate.del_climatology","method/cfdm.core.DimensionCoordinate.del_data","method/cfdm.core.DimensionCoordinate.del_geometry","method/cfdm.core.DimensionCoordinate.del_interior_ring","method/cfdm.core.DimensionCoordinate.del_property","method/cfdm.core.DimensionCoordinate.get_bounds","method/cfdm.core.DimensionCoordinate.get_climatology","method/cfdm.core.DimensionCoordinate.get_data","method/cfdm.core.DimensionCoordinate.get_geometry","method/cfdm.core.DimensionCoordinate.get_interior_ring","method/cfdm.core.DimensionCoordinate.get_property","method/cfdm.core.DimensionCoordinate.has_bounds","method/cfdm.core.DimensionCoordinate.has_data","method/cfdm.core.DimensionCoordinate.has_geometry","method/cfdm.core.DimensionCoordinate.has_interior_ring","method/cfdm.core.DimensionCoordinate.has_property","method/cfdm.core.DimensionCoordinate.is_climatology","method/cfdm.core.DimensionCoordinate.properties","method/cfdm.core.DimensionCoordinate.set_bounds","method/cfdm.core.DimensionCoordinate.set_climatology","method/cfdm.core.DimensionCoordinate.set_data","method/cfdm.core.DimensionCoordinate.set_geometry","method/cfdm.core.DimensionCoordinate.set_interior_ring","method/cfdm.core.DimensionCoordinate.set_properties","method/cfdm.core.DimensionCoordinate.set_property","method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions","method/cfdm.core.DocstringRewriteMeta._docstring_package_depth","method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions","method/cfdm.core.DocstringRewriteMeta._docstring_substitutions","method/cfdm.core.DocstringRewriteMeta.mro","method/cfdm.core.Domain.__deepcopy__","method/cfdm.core.Domain._docstring_method_exclusions","method/cfdm.core.Domain._docstring_package_depth","method/cfdm.core.Domain._docstring_special_substitutions","method/cfdm.core.Domain._docstring_substitutions","method/cfdm.core.Domain.clear_properties","method/cfdm.core.Domain.copy","method/cfdm.core.Domain.del_construct","method/cfdm.core.Domain.del_data_axes","method/cfdm.core.Domain.del_property","method/cfdm.core.Domain.fromconstructs","method/cfdm.core.Domain.get_construct","method/cfdm.core.Domain.get_data_axes","method/cfdm.core.Domain.get_property","method/cfdm.core.Domain.has_bounds","method/cfdm.core.Domain.has_construct","method/cfdm.core.Domain.has_data","method/cfdm.core.Domain.has_data_axes","method/cfdm.core.Domain.has_property","method/cfdm.core.Domain.properties","method/cfdm.core.Domain.set_construct","method/cfdm.core.Domain.set_data_axes","method/cfdm.core.Domain.set_properties","method/cfdm.core.Domain.set_property","method/cfdm.core.DomainAncillary.__deepcopy__","method/cfdm.core.DomainAncillary._docstring_method_exclusions","method/cfdm.core.DomainAncillary._docstring_package_depth","method/cfdm.core.DomainAncillary._docstring_special_substitutions","method/cfdm.core.DomainAncillary._docstring_substitutions","method/cfdm.core.DomainAncillary.clear_properties","method/cfdm.core.DomainAncillary.copy","method/cfdm.core.DomainAncillary.del_bounds","method/cfdm.core.DomainAncillary.del_data","method/cfdm.core.DomainAncillary.del_geometry","method/cfdm.core.DomainAncillary.del_interior_ring","method/cfdm.core.DomainAncillary.del_property","method/cfdm.core.DomainAncillary.get_bounds","method/cfdm.core.DomainAncillary.get_data","method/cfdm.core.DomainAncillary.get_geometry","method/cfdm.core.DomainAncillary.get_interior_ring","method/cfdm.core.DomainAncillary.get_property","method/cfdm.core.DomainAncillary.has_bounds","method/cfdm.core.DomainAncillary.has_data","method/cfdm.core.DomainAncillary.has_geometry","method/cfdm.core.DomainAncillary.has_interior_ring","method/cfdm.core.DomainAncillary.has_property","method/cfdm.core.DomainAncillary.properties","method/cfdm.core.DomainAncillary.set_bounds","method/cfdm.core.DomainAncillary.set_data","method/cfdm.core.DomainAncillary.set_geometry","method/cfdm.core.DomainAncillary.set_interior_ring","method/cfdm.core.DomainAncillary.set_properties","method/cfdm.core.DomainAncillary.set_property","method/cfdm.core.DomainAxis.__deepcopy__","method/cfdm.core.DomainAxis._docstring_method_exclusions","method/cfdm.core.DomainAxis._docstring_package_depth","method/cfdm.core.DomainAxis._docstring_special_substitutions","method/cfdm.core.DomainAxis._docstring_substitutions","method/cfdm.core.DomainAxis.copy","method/cfdm.core.DomainAxis.del_size","method/cfdm.core.DomainAxis.get_size","method/cfdm.core.DomainAxis.has_size","method/cfdm.core.DomainAxis.set_size","method/cfdm.core.Field.__deepcopy__","method/cfdm.core.Field._docstring_method_exclusions","method/cfdm.core.Field._docstring_package_depth","method/cfdm.core.Field._docstring_special_substitutions","method/cfdm.core.Field._docstring_substitutions","method/cfdm.core.Field.clear_properties","method/cfdm.core.Field.copy","method/cfdm.core.Field.del_construct","method/cfdm.core.Field.del_data","method/cfdm.core.Field.del_data_axes","method/cfdm.core.Field.del_property","method/cfdm.core.Field.get_construct","method/cfdm.core.Field.get_data","method/cfdm.core.Field.get_data_axes","method/cfdm.core.Field.get_domain","method/cfdm.core.Field.get_property","method/cfdm.core.Field.has_bounds","method/cfdm.core.Field.has_construct","method/cfdm.core.Field.has_data","method/cfdm.core.Field.has_data_axes","method/cfdm.core.Field.has_property","method/cfdm.core.Field.properties","method/cfdm.core.Field.set_construct","method/cfdm.core.Field.set_data","method/cfdm.core.Field.set_data_axes","method/cfdm.core.Field.set_properties","method/cfdm.core.Field.set_property","method/cfdm.core.FieldAncillary.__deepcopy__","method/cfdm.core.FieldAncillary._docstring_method_exclusions","method/cfdm.core.FieldAncillary._docstring_package_depth","method/cfdm.core.FieldAncillary._docstring_special_substitutions","method/cfdm.core.FieldAncillary._docstring_substitutions","method/cfdm.core.FieldAncillary.clear_properties","method/cfdm.core.FieldAncillary.copy","method/cfdm.core.FieldAncillary.del_data","method/cfdm.core.FieldAncillary.del_property","method/cfdm.core.FieldAncillary.get_data","method/cfdm.core.FieldAncillary.get_property","method/cfdm.core.FieldAncillary.has_bounds","method/cfdm.core.FieldAncillary.has_data","method/cfdm.core.FieldAncillary.has_property","method/cfdm.core.FieldAncillary.properties","method/cfdm.core.FieldAncillary.set_data","method/cfdm.core.FieldAncillary.set_properties","method/cfdm.core.FieldAncillary.set_property","method/cfdm.core.InteriorRing.__deepcopy__","method/cfdm.core.InteriorRing._docstring_method_exclusions","method/cfdm.core.InteriorRing._docstring_package_depth","method/cfdm.core.InteriorRing._docstring_special_substitutions","method/cfdm.core.InteriorRing._docstring_substitutions","method/cfdm.core.InteriorRing.clear_properties","method/cfdm.core.InteriorRing.copy","method/cfdm.core.InteriorRing.del_data","method/cfdm.core.InteriorRing.del_property","method/cfdm.core.InteriorRing.get_data","method/cfdm.core.InteriorRing.get_property","method/cfdm.core.InteriorRing.has_bounds","method/cfdm.core.InteriorRing.has_data","method/cfdm.core.InteriorRing.has_property","method/cfdm.core.InteriorRing.properties","method/cfdm.core.InteriorRing.set_data","method/cfdm.core.InteriorRing.set_properties","method/cfdm.core.InteriorRing.set_property","method/cfdm.core.NumpyArray._docstring_method_exclusions","method/cfdm.core.NumpyArray._docstring_package_depth","method/cfdm.core.NumpyArray._docstring_special_substitutions","method/cfdm.core.NumpyArray._docstring_substitutions","method/cfdm.core.NumpyArray.copy","method/cfdm.core.Parameters.__deepcopy__","method/cfdm.core.Parameters._docstring_method_exclusions","method/cfdm.core.Parameters._docstring_package_depth","method/cfdm.core.Parameters._docstring_special_substitutions","method/cfdm.core.Parameters._docstring_substitutions","method/cfdm.core.Parameters.clear_parameters","method/cfdm.core.Parameters.copy","method/cfdm.core.Parameters.del_parameter","method/cfdm.core.Parameters.get_parameter","method/cfdm.core.Parameters.has_parameter","method/cfdm.core.Parameters.parameters","method/cfdm.core.Parameters.set_parameter","method/cfdm.core.Parameters.set_parameters","method/cfdm.core.ParametersDomainAncillaries.__deepcopy__","method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries","method/cfdm.core.ParametersDomainAncillaries.clear_parameters","method/cfdm.core.ParametersDomainAncillaries.copy","method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary","method/cfdm.core.ParametersDomainAncillaries.del_parameter","method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries","method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary","method/cfdm.core.ParametersDomainAncillaries.get_parameter","method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary","method/cfdm.core.ParametersDomainAncillaries.has_parameter","method/cfdm.core.ParametersDomainAncillaries.parameters","method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries","method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary","method/cfdm.core.ParametersDomainAncillaries.set_parameter","method/cfdm.core.ParametersDomainAncillaries.set_parameters","method/cfdm.core.Properties.__deepcopy__","method/cfdm.core.Properties._docstring_method_exclusions","method/cfdm.core.Properties._docstring_package_depth","method/cfdm.core.Properties._docstring_special_substitutions","method/cfdm.core.Properties._docstring_substitutions","method/cfdm.core.Properties.clear_properties","method/cfdm.core.Properties.copy","method/cfdm.core.Properties.del_property","method/cfdm.core.Properties.get_property","method/cfdm.core.Properties.has_bounds","method/cfdm.core.Properties.has_data","method/cfdm.core.Properties.has_property","method/cfdm.core.Properties.properties","method/cfdm.core.Properties.set_properties","method/cfdm.core.Properties.set_property","method/cfdm.core.PropertiesData.__deepcopy__","method/cfdm.core.PropertiesData._docstring_method_exclusions","method/cfdm.core.PropertiesData._docstring_package_depth","method/cfdm.core.PropertiesData._docstring_special_substitutions","method/cfdm.core.PropertiesData._docstring_substitutions","method/cfdm.core.PropertiesData.clear_properties","method/cfdm.core.PropertiesData.copy","method/cfdm.core.PropertiesData.del_data","method/cfdm.core.PropertiesData.del_property","method/cfdm.core.PropertiesData.get_data","method/cfdm.core.PropertiesData.get_property","method/cfdm.core.PropertiesData.has_bounds","method/cfdm.core.PropertiesData.has_data","method/cfdm.core.PropertiesData.has_property","method/cfdm.core.PropertiesData.properties","method/cfdm.core.PropertiesData.set_data","method/cfdm.core.PropertiesData.set_properties","method/cfdm.core.PropertiesData.set_property","method/cfdm.core.PropertiesDataBounds.__deepcopy__","method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions","method/cfdm.core.PropertiesDataBounds._docstring_package_depth","method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions","method/cfdm.core.PropertiesDataBounds._docstring_substitutions","method/cfdm.core.PropertiesDataBounds.clear_properties","method/cfdm.core.PropertiesDataBounds.copy","method/cfdm.core.PropertiesDataBounds.del_bounds","method/cfdm.core.PropertiesDataBounds.del_data","method/cfdm.core.PropertiesDataBounds.del_geometry","method/cfdm.core.PropertiesDataBounds.del_interior_ring","method/cfdm.core.PropertiesDataBounds.del_property","method/cfdm.core.PropertiesDataBounds.get_bounds","method/cfdm.core.PropertiesDataBounds.get_data","method/cfdm.core.PropertiesDataBounds.get_geometry","method/cfdm.core.PropertiesDataBounds.get_interior_ring","method/cfdm.core.PropertiesDataBounds.get_property","method/cfdm.core.PropertiesDataBounds.has_bounds","method/cfdm.core.PropertiesDataBounds.has_data","method/cfdm.core.PropertiesDataBounds.has_geometry","method/cfdm.core.PropertiesDataBounds.has_interior_ring","method/cfdm.core.PropertiesDataBounds.has_property","method/cfdm.core.PropertiesDataBounds.properties","method/cfdm.core.PropertiesDataBounds.set_bounds","method/cfdm.core.PropertiesDataBounds.set_data","method/cfdm.core.PropertiesDataBounds.set_geometry","method/cfdm.core.PropertiesDataBounds.set_interior_ring","method/cfdm.core.PropertiesDataBounds.set_properties","method/cfdm.core.PropertiesDataBounds.set_property","method/cfdm.core.abstract.Container.__deepcopy__","method/cfdm.core.abstract.Container._del_component","method/cfdm.core.abstract.Container._get_component","method/cfdm.core.abstract.Container._has_component","method/cfdm.core.abstract.Container._set_component","method/cfdm.core.abstract.Container.copy","method/cfdm.core.abstract.Coordinate.__deepcopy__","method/cfdm.core.abstract.Coordinate.clear_properties","method/cfdm.core.abstract.Coordinate.copy","method/cfdm.core.abstract.Coordinate.del_bounds","method/cfdm.core.abstract.Coordinate.del_data","method/cfdm.core.abstract.Coordinate.del_property","method/cfdm.core.abstract.Coordinate.get_bounds","method/cfdm.core.abstract.Coordinate.get_data","method/cfdm.core.abstract.Coordinate.get_property","method/cfdm.core.abstract.Coordinate.has_bounds","method/cfdm.core.abstract.Coordinate.has_data","method/cfdm.core.abstract.Coordinate.has_property","method/cfdm.core.abstract.Coordinate.properties","method/cfdm.core.abstract.Coordinate.set_bounds","method/cfdm.core.abstract.Coordinate.set_data","method/cfdm.core.abstract.Coordinate.set_properties","method/cfdm.core.abstract.Coordinate.set_property","method/cfdm.core.abstract.Parameters.__deepcopy__","method/cfdm.core.abstract.Parameters.clear_parameters","method/cfdm.core.abstract.Parameters.copy","method/cfdm.core.abstract.Parameters.del_parameter","method/cfdm.core.abstract.Parameters.get_parameter","method/cfdm.core.abstract.Parameters.parameters","method/cfdm.core.abstract.Parameters.set_parameter","method/cfdm.core.abstract.Parameters.set_parameters","method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__","method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries","method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters","method/cfdm.core.abstract.ParametersDomainAncillaries.copy","method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary","method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter","method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries","method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary","method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter","method/cfdm.core.abstract.ParametersDomainAncillaries.parameters","method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries","method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary","method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter","method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters","method/cfdm.core.abstract.Properties.__deepcopy__","method/cfdm.core.abstract.Properties.clear_properties","method/cfdm.core.abstract.Properties.copy","method/cfdm.core.abstract.Properties.del_property","method/cfdm.core.abstract.Properties.get_property","method/cfdm.core.abstract.Properties.has_property","method/cfdm.core.abstract.Properties.properties","method/cfdm.core.abstract.Properties.set_properties","method/cfdm.core.abstract.Properties.set_property","method/cfdm.core.abstract.PropertiesData.__deepcopy__","method/cfdm.core.abstract.PropertiesData.clear_properties","method/cfdm.core.abstract.PropertiesData.copy","method/cfdm.core.abstract.PropertiesData.del_data","method/cfdm.core.abstract.PropertiesData.del_property","method/cfdm.core.abstract.PropertiesData.get_data","method/cfdm.core.abstract.PropertiesData.get_property","method/cfdm.core.abstract.PropertiesData.has_data","method/cfdm.core.abstract.PropertiesData.has_property","method/cfdm.core.abstract.PropertiesData.properties","method/cfdm.core.abstract.PropertiesData.set_data","method/cfdm.core.abstract.PropertiesData.set_properties","method/cfdm.core.abstract.PropertiesData.set_property","method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__","method/cfdm.core.abstract.PropertiesDataBounds.clear_properties","method/cfdm.core.abstract.PropertiesDataBounds.copy","method/cfdm.core.abstract.PropertiesDataBounds.del_bounds","method/cfdm.core.abstract.PropertiesDataBounds.del_data","method/cfdm.core.abstract.PropertiesDataBounds.del_property","method/cfdm.core.abstract.PropertiesDataBounds.get_bounds","method/cfdm.core.abstract.PropertiesDataBounds.get_data","method/cfdm.core.abstract.PropertiesDataBounds.get_property","method/cfdm.core.abstract.PropertiesDataBounds.has_bounds","method/cfdm.core.abstract.PropertiesDataBounds.has_data","method/cfdm.core.abstract.PropertiesDataBounds.has_property","method/cfdm.core.abstract.PropertiesDataBounds.properties","method/cfdm.core.abstract.PropertiesDataBounds.set_bounds","method/cfdm.core.abstract.PropertiesDataBounds.set_data","method/cfdm.core.abstract.PropertiesDataBounds.set_properties","method/cfdm.core.abstract.PropertiesDataBounds.set_property","performance","philosophy","releases","sample_datasets","support","tutorial"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.intersphinx":1,sphinx:56},filenames:["Changelog.rst","api_reference.rst","attribute/cfdm.Array.array.rst","attribute/cfdm.Array.dtype.rst","attribute/cfdm.Array.ndim.rst","attribute/cfdm.Array.shape.rst","attribute/cfdm.Array.size.rst","attribute/cfdm.AuxiliaryCoordinate.bounds.rst","attribute/cfdm.AuxiliaryCoordinate.construct_type.rst","attribute/cfdm.AuxiliaryCoordinate.data.rst","attribute/cfdm.AuxiliaryCoordinate.dtype.rst","attribute/cfdm.AuxiliaryCoordinate.interior_ring.rst","attribute/cfdm.AuxiliaryCoordinate.ndim.rst","attribute/cfdm.AuxiliaryCoordinate.shape.rst","attribute/cfdm.AuxiliaryCoordinate.size.rst","attribute/cfdm.Bounds.data.rst","attribute/cfdm.Bounds.dtype.rst","attribute/cfdm.Bounds.ndim.rst","attribute/cfdm.Bounds.shape.rst","attribute/cfdm.Bounds.size.rst","attribute/cfdm.CellMeasure.construct_type.rst","attribute/cfdm.CellMeasure.data.rst","attribute/cfdm.CellMeasure.dtype.rst","attribute/cfdm.CellMeasure.ndim.rst","attribute/cfdm.CellMeasure.shape.rst","attribute/cfdm.CellMeasure.size.rst","attribute/cfdm.CellMethod.construct_type.rst","attribute/cfdm.CompressedArray.array.rst","attribute/cfdm.CompressedArray.compressed_array.rst","attribute/cfdm.CompressedArray.dtype.rst","attribute/cfdm.CompressedArray.ndim.rst","attribute/cfdm.CompressedArray.shape.rst","attribute/cfdm.CompressedArray.size.rst","attribute/cfdm.Constant._func.rst","attribute/cfdm.Constant.value.rst","attribute/cfdm.CoordinateReference.construct_type.rst","attribute/cfdm.CoordinateReference.coordinate_conversion.rst","attribute/cfdm.CoordinateReference.datum.rst","attribute/cfdm.Count.data.rst","attribute/cfdm.Count.dtype.rst","attribute/cfdm.Count.ndim.rst","attribute/cfdm.Count.shape.rst","attribute/cfdm.Count.size.rst","attribute/cfdm.Data.array.rst","attribute/cfdm.Data.compressed_array.rst","attribute/cfdm.Data.datetime_array.rst","attribute/cfdm.Data.datetime_as_string.rst","attribute/cfdm.Data.dtype.rst","attribute/cfdm.Data.mask.rst","attribute/cfdm.Data.ndim.rst","attribute/cfdm.Data.shape.rst","attribute/cfdm.Data.size.rst","attribute/cfdm.DimensionCoordinate.bounds.rst","attribute/cfdm.DimensionCoordinate.construct_type.rst","attribute/cfdm.DimensionCoordinate.data.rst","attribute/cfdm.DimensionCoordinate.dtype.rst","attribute/cfdm.DimensionCoordinate.interior_ring.rst","attribute/cfdm.DimensionCoordinate.ndim.rst","attribute/cfdm.DimensionCoordinate.shape.rst","attribute/cfdm.DimensionCoordinate.size.rst","attribute/cfdm.Domain.auxiliary_coordinates.rst","attribute/cfdm.Domain.cell_measures.rst","attribute/cfdm.Domain.construct_type.rst","attribute/cfdm.Domain.constructs.rst","attribute/cfdm.Domain.coordinate_references.rst","attribute/cfdm.Domain.coordinates.rst","attribute/cfdm.Domain.dimension_coordinates.rst","attribute/cfdm.Domain.domain_ancillaries.rst","attribute/cfdm.Domain.domain_axes.rst","attribute/cfdm.DomainAncillary.bounds.rst","attribute/cfdm.DomainAncillary.construct_type.rst","attribute/cfdm.DomainAncillary.data.rst","attribute/cfdm.DomainAncillary.dtype.rst","attribute/cfdm.DomainAncillary.interior_ring.rst","attribute/cfdm.DomainAncillary.ndim.rst","attribute/cfdm.DomainAncillary.shape.rst","attribute/cfdm.DomainAncillary.size.rst","attribute/cfdm.DomainAxis.construct_type.rst","attribute/cfdm.Field.auxiliary_coordinates.rst","attribute/cfdm.Field.cell_measures.rst","attribute/cfdm.Field.cell_methods.rst","attribute/cfdm.Field.construct_type.rst","attribute/cfdm.Field.constructs.rst","attribute/cfdm.Field.coordinate_references.rst","attribute/cfdm.Field.coordinates.rst","attribute/cfdm.Field.data.rst","attribute/cfdm.Field.dimension_coordinates.rst","attribute/cfdm.Field.domain.rst","attribute/cfdm.Field.domain_ancillaries.rst","attribute/cfdm.Field.domain_axes.rst","attribute/cfdm.Field.dtype.rst","attribute/cfdm.Field.field_ancillaries.rst","attribute/cfdm.Field.ndim.rst","attribute/cfdm.Field.shape.rst","attribute/cfdm.Field.size.rst","attribute/cfdm.FieldAncillary.construct_type.rst","attribute/cfdm.FieldAncillary.data.rst","attribute/cfdm.FieldAncillary.dtype.rst","attribute/cfdm.FieldAncillary.ndim.rst","attribute/cfdm.FieldAncillary.shape.rst","attribute/cfdm.FieldAncillary.size.rst","attribute/cfdm.GatheredArray.array.rst","attribute/cfdm.GatheredArray.compressed_array.rst","attribute/cfdm.GatheredArray.dtype.rst","attribute/cfdm.GatheredArray.ndim.rst","attribute/cfdm.GatheredArray.shape.rst","attribute/cfdm.GatheredArray.size.rst","attribute/cfdm.Index.data.rst","attribute/cfdm.Index.dtype.rst","attribute/cfdm.Index.ndim.rst","attribute/cfdm.Index.shape.rst","attribute/cfdm.Index.size.rst","attribute/cfdm.InteriorRing.data.rst","attribute/cfdm.InteriorRing.dtype.rst","attribute/cfdm.InteriorRing.ndim.rst","attribute/cfdm.InteriorRing.shape.rst","attribute/cfdm.InteriorRing.size.rst","attribute/cfdm.List.data.rst","attribute/cfdm.List.dtype.rst","attribute/cfdm.List.ndim.rst","attribute/cfdm.List.shape.rst","attribute/cfdm.List.size.rst","attribute/cfdm.NetCDFArray.array.rst","attribute/cfdm.NetCDFArray.dtype.rst","attribute/cfdm.NetCDFArray.ndim.rst","attribute/cfdm.NetCDFArray.shape.rst","attribute/cfdm.NetCDFArray.size.rst","attribute/cfdm.NumpyArray.array.rst","attribute/cfdm.NumpyArray.dtype.rst","attribute/cfdm.NumpyArray.ndim.rst","attribute/cfdm.NumpyArray.shape.rst","attribute/cfdm.NumpyArray.size.rst","attribute/cfdm.RaggedContiguousArray.array.rst","attribute/cfdm.RaggedContiguousArray.compressed_array.rst","attribute/cfdm.RaggedContiguousArray.dtype.rst","attribute/cfdm.RaggedContiguousArray.ndim.rst","attribute/cfdm.RaggedContiguousArray.shape.rst","attribute/cfdm.RaggedContiguousArray.size.rst","attribute/cfdm.RaggedIndexedArray.array.rst","attribute/cfdm.RaggedIndexedArray.compressed_array.rst","attribute/cfdm.RaggedIndexedArray.dtype.rst","attribute/cfdm.RaggedIndexedArray.ndim.rst","attribute/cfdm.RaggedIndexedArray.shape.rst","attribute/cfdm.RaggedIndexedArray.size.rst","attribute/cfdm.RaggedIndexedContiguousArray.array.rst","attribute/cfdm.RaggedIndexedContiguousArray.compressed_array.rst","attribute/cfdm.RaggedIndexedContiguousArray.dtype.rst","attribute/cfdm.RaggedIndexedContiguousArray.ndim.rst","attribute/cfdm.RaggedIndexedContiguousArray.shape.rst","attribute/cfdm.RaggedIndexedContiguousArray.size.rst","attribute/cfdm.core.Array.array.rst","attribute/cfdm.core.Array.dtype.rst","attribute/cfdm.core.Array.ndim.rst","attribute/cfdm.core.Array.shape.rst","attribute/cfdm.core.Array.size.rst","attribute/cfdm.core.AuxiliaryCoordinate.bounds.rst","attribute/cfdm.core.AuxiliaryCoordinate.construct_type.rst","attribute/cfdm.core.AuxiliaryCoordinate.data.rst","attribute/cfdm.core.AuxiliaryCoordinate.interior_ring.rst","attribute/cfdm.core.Bounds.data.rst","attribute/cfdm.core.CellMeasure.construct_type.rst","attribute/cfdm.core.CellMeasure.data.rst","attribute/cfdm.core.CellMethod.construct_type.rst","attribute/cfdm.core.Coordinate.bounds.rst","attribute/cfdm.core.Coordinate.data.rst","attribute/cfdm.core.Coordinate.interior_ring.rst","attribute/cfdm.core.CoordinateReference.construct_type.rst","attribute/cfdm.core.CoordinateReference.coordinate_conversion.rst","attribute/cfdm.core.CoordinateReference.datum.rst","attribute/cfdm.core.Data.array.rst","attribute/cfdm.core.Data.dtype.rst","attribute/cfdm.core.Data.ndim.rst","attribute/cfdm.core.Data.shape.rst","attribute/cfdm.core.Data.size.rst","attribute/cfdm.core.DimensionCoordinate.bounds.rst","attribute/cfdm.core.DimensionCoordinate.construct_type.rst","attribute/cfdm.core.DimensionCoordinate.data.rst","attribute/cfdm.core.DimensionCoordinate.interior_ring.rst","attribute/cfdm.core.Domain.construct_type.rst","attribute/cfdm.core.Domain.constructs.rst","attribute/cfdm.core.DomainAncillary.bounds.rst","attribute/cfdm.core.DomainAncillary.construct_type.rst","attribute/cfdm.core.DomainAncillary.data.rst","attribute/cfdm.core.DomainAncillary.interior_ring.rst","attribute/cfdm.core.DomainAxis.construct_type.rst","attribute/cfdm.core.Field.construct_type.rst","attribute/cfdm.core.Field.constructs.rst","attribute/cfdm.core.Field.data.rst","attribute/cfdm.core.Field.domain.rst","attribute/cfdm.core.FieldAncillary.construct_type.rst","attribute/cfdm.core.FieldAncillary.data.rst","attribute/cfdm.core.InteriorRing.data.rst","attribute/cfdm.core.NumpyArray.array.rst","attribute/cfdm.core.NumpyArray.dtype.rst","attribute/cfdm.core.NumpyArray.ndim.rst","attribute/cfdm.core.NumpyArray.shape.rst","attribute/cfdm.core.NumpyArray.size.rst","attribute/cfdm.core.PropertiesData.data.rst","attribute/cfdm.core.PropertiesDataBounds.bounds.rst","attribute/cfdm.core.PropertiesDataBounds.data.rst","attribute/cfdm.core.PropertiesDataBounds.interior_ring.rst","attribute/cfdm.core.abstract.Coordinate.bounds.rst","attribute/cfdm.core.abstract.Coordinate.data.rst","attribute/cfdm.core.abstract.PropertiesDataBounds.bounds.rst","attribute/cfdm.core.abstract.PropertiesDataBounds.data.rst","cf_data_model.rst","class.rst","class/cfdm.Array.rst","class/cfdm.AuxiliaryCoordinate.rst","class/cfdm.Bounds.rst","class/cfdm.CellMeasure.rst","class/cfdm.CellMethod.rst","class/cfdm.CompressedArray.rst","class/cfdm.Configuration.rst","class/cfdm.Constant.rst","class/cfdm.Constructs.rst","class/cfdm.CoordinateConversion.rst","class/cfdm.CoordinateReference.rst","class/cfdm.Count.rst","class/cfdm.Data.rst","class/cfdm.Datum.rst","class/cfdm.DimensionCoordinate.rst","class/cfdm.Domain.rst","class/cfdm.DomainAncillary.rst","class/cfdm.DomainAxis.rst","class/cfdm.Field.rst","class/cfdm.FieldAncillary.rst","class/cfdm.GatheredArray.rst","class/cfdm.Index.rst","class/cfdm.InteriorRing.rst","class/cfdm.List.rst","class/cfdm.NetCDFArray.rst","class/cfdm.NumpyArray.rst","class/cfdm.RaggedContiguousArray.rst","class/cfdm.RaggedIndexedArray.rst","class/cfdm.RaggedIndexedContiguousArray.rst","class/cfdm.core.Array.rst","class/cfdm.core.AuxiliaryCoordinate.rst","class/cfdm.core.Bounds.rst","class/cfdm.core.CellMeasure.rst","class/cfdm.core.CellMethod.rst","class/cfdm.core.Constructs.rst","class/cfdm.core.Container.rst","class/cfdm.core.Coordinate.rst","class/cfdm.core.CoordinateConversion.rst","class/cfdm.core.CoordinateReference.rst","class/cfdm.core.Data.rst","class/cfdm.core.Datum.rst","class/cfdm.core.DimensionCoordinate.rst","class/cfdm.core.DocstringRewriteMeta.rst","class/cfdm.core.Domain.rst","class/cfdm.core.DomainAncillary.rst","class/cfdm.core.DomainAxis.rst","class/cfdm.core.Field.rst","class/cfdm.core.FieldAncillary.rst","class/cfdm.core.InteriorRing.rst","class/cfdm.core.NumpyArray.rst","class/cfdm.core.Parameters.rst","class/cfdm.core.ParametersDomainAncillaries.rst","class/cfdm.core.Properties.rst","class/cfdm.core.PropertiesData.rst","class/cfdm.core.PropertiesDataBounds.rst","class_core.rst","constant.rst","contributing.rst","extensions.rst","function/cfdm.ATOL.rst","function/cfdm.CF.rst","function/cfdm.LOG_LEVEL.rst","function/cfdm.RTOL.rst","function/cfdm.abspath.rst","function/cfdm.atol.rst","function/cfdm.configuration.rst","function/cfdm.environment.rst","function/cfdm.example_domain.rst","function/cfdm.example_field.rst","function/cfdm.example_fields.rst","function/cfdm.implementation.rst","function/cfdm.is_log_level_debug.rst","function/cfdm.is_log_level_detail.rst","function/cfdm.is_log_level_info.rst","function/cfdm.log_level.rst","function/cfdm.read.rst","function/cfdm.rtol.rst","function/cfdm.unique_constructs.rst","function/cfdm.write.rst","functions.rst","index.rst","installation.rst","introduction.rst","method/cfdm.Array.__array__.rst","method/cfdm.Array.__deepcopy__.rst","method/cfdm.Array.__getitem__.rst","method/cfdm.Array.__repr__.rst","method/cfdm.Array.__str__.rst","method/cfdm.Array._docstring_method_exclusions.rst","method/cfdm.Array._docstring_package_depth.rst","method/cfdm.Array._docstring_special_substitutions.rst","method/cfdm.Array._docstring_substitutions.rst","method/cfdm.Array.copy.rst","method/cfdm.Array.get_compression_type.rst","method/cfdm.Array.get_subspace.rst","method/cfdm.AuxiliaryCoordinate.__deepcopy__.rst","method/cfdm.AuxiliaryCoordinate.__getitem__.rst","method/cfdm.AuxiliaryCoordinate.__repr__.rst","method/cfdm.AuxiliaryCoordinate.__str__.rst","method/cfdm.AuxiliaryCoordinate._docstring_method_exclusions.rst","method/cfdm.AuxiliaryCoordinate._docstring_package_depth.rst","method/cfdm.AuxiliaryCoordinate._docstring_special_substitutions.rst","method/cfdm.AuxiliaryCoordinate._docstring_substitutions.rst","method/cfdm.AuxiliaryCoordinate.apply_masking.rst","method/cfdm.AuxiliaryCoordinate.clear_properties.rst","method/cfdm.AuxiliaryCoordinate.copy.rst","method/cfdm.AuxiliaryCoordinate.creation_commands.rst","method/cfdm.AuxiliaryCoordinate.del_bounds.rst","method/cfdm.AuxiliaryCoordinate.del_climatology.rst","method/cfdm.AuxiliaryCoordinate.del_data.rst","method/cfdm.AuxiliaryCoordinate.del_geometry.rst","method/cfdm.AuxiliaryCoordinate.del_interior_ring.rst","method/cfdm.AuxiliaryCoordinate.del_node_count.rst","method/cfdm.AuxiliaryCoordinate.del_part_node_count.rst","method/cfdm.AuxiliaryCoordinate.del_property.rst","method/cfdm.AuxiliaryCoordinate.dump.rst","method/cfdm.AuxiliaryCoordinate.equals.rst","method/cfdm.AuxiliaryCoordinate.get_bounds.rst","method/cfdm.AuxiliaryCoordinate.get_bounds_data.rst","method/cfdm.AuxiliaryCoordinate.get_climatology.rst","method/cfdm.AuxiliaryCoordinate.get_data.rst","method/cfdm.AuxiliaryCoordinate.get_filenames.rst","method/cfdm.AuxiliaryCoordinate.get_geometry.rst","method/cfdm.AuxiliaryCoordinate.get_interior_ring.rst","method/cfdm.AuxiliaryCoordinate.get_node_count.rst","method/cfdm.AuxiliaryCoordinate.get_part_node_count.rst","method/cfdm.AuxiliaryCoordinate.get_property.rst","method/cfdm.AuxiliaryCoordinate.has_bounds.rst","method/cfdm.AuxiliaryCoordinate.has_data.rst","method/cfdm.AuxiliaryCoordinate.has_geometry.rst","method/cfdm.AuxiliaryCoordinate.has_interior_ring.rst","method/cfdm.AuxiliaryCoordinate.has_node_count.rst","method/cfdm.AuxiliaryCoordinate.has_part_node_count.rst","method/cfdm.AuxiliaryCoordinate.has_property.rst","method/cfdm.AuxiliaryCoordinate.identities.rst","method/cfdm.AuxiliaryCoordinate.identity.rst","method/cfdm.AuxiliaryCoordinate.insert_dimension.rst","method/cfdm.AuxiliaryCoordinate.is_climatology.rst","method/cfdm.AuxiliaryCoordinate.nc_clear_variable_groups.rst","method/cfdm.AuxiliaryCoordinate.nc_del_variable.rst","method/cfdm.AuxiliaryCoordinate.nc_get_variable.rst","method/cfdm.AuxiliaryCoordinate.nc_has_variable.rst","method/cfdm.AuxiliaryCoordinate.nc_set_variable.rst","method/cfdm.AuxiliaryCoordinate.nc_set_variable_groups.rst","method/cfdm.AuxiliaryCoordinate.nc_variable_groups.rst","method/cfdm.AuxiliaryCoordinate.properties.rst","method/cfdm.AuxiliaryCoordinate.set_bounds.rst","method/cfdm.AuxiliaryCoordinate.set_climatology.rst","method/cfdm.AuxiliaryCoordinate.set_data.rst","method/cfdm.AuxiliaryCoordinate.set_geometry.rst","method/cfdm.AuxiliaryCoordinate.set_interior_ring.rst","method/cfdm.AuxiliaryCoordinate.set_node_count.rst","method/cfdm.AuxiliaryCoordinate.set_part_node_count.rst","method/cfdm.AuxiliaryCoordinate.set_properties.rst","method/cfdm.AuxiliaryCoordinate.set_property.rst","method/cfdm.AuxiliaryCoordinate.squeeze.rst","method/cfdm.AuxiliaryCoordinate.transpose.rst","method/cfdm.AuxiliaryCoordinate.uncompress.rst","method/cfdm.Bounds.__deepcopy__.rst","method/cfdm.Bounds.__getitem__.rst","method/cfdm.Bounds.__repr__.rst","method/cfdm.Bounds.__str__.rst","method/cfdm.Bounds._docstring_method_exclusions.rst","method/cfdm.Bounds._docstring_package_depth.rst","method/cfdm.Bounds._docstring_special_substitutions.rst","method/cfdm.Bounds._docstring_substitutions.rst","method/cfdm.Bounds.apply_masking.rst","method/cfdm.Bounds.clear_properties.rst","method/cfdm.Bounds.copy.rst","method/cfdm.Bounds.creation_commands.rst","method/cfdm.Bounds.del_data.rst","method/cfdm.Bounds.del_property.rst","method/cfdm.Bounds.dump.rst","method/cfdm.Bounds.equals.rst","method/cfdm.Bounds.get_data.rst","method/cfdm.Bounds.get_filenames.rst","method/cfdm.Bounds.get_property.rst","method/cfdm.Bounds.has_bounds.rst","method/cfdm.Bounds.has_data.rst","method/cfdm.Bounds.has_property.rst","method/cfdm.Bounds.identities.rst","method/cfdm.Bounds.identity.rst","method/cfdm.Bounds.inherited_properties.rst","method/cfdm.Bounds.insert_dimension.rst","method/cfdm.Bounds.nc_clear_dimension_groups.rst","method/cfdm.Bounds.nc_clear_variable_groups.rst","method/cfdm.Bounds.nc_del_dimension.rst","method/cfdm.Bounds.nc_del_variable.rst","method/cfdm.Bounds.nc_dimension_groups.rst","method/cfdm.Bounds.nc_get_dimension.rst","method/cfdm.Bounds.nc_get_variable.rst","method/cfdm.Bounds.nc_has_dimension.rst","method/cfdm.Bounds.nc_has_variable.rst","method/cfdm.Bounds.nc_set_dimension.rst","method/cfdm.Bounds.nc_set_dimension_groups.rst","method/cfdm.Bounds.nc_set_variable.rst","method/cfdm.Bounds.nc_set_variable_groups.rst","method/cfdm.Bounds.nc_variable_groups.rst","method/cfdm.Bounds.properties.rst","method/cfdm.Bounds.set_data.rst","method/cfdm.Bounds.set_properties.rst","method/cfdm.Bounds.set_property.rst","method/cfdm.Bounds.squeeze.rst","method/cfdm.Bounds.transpose.rst","method/cfdm.Bounds.uncompress.rst","method/cfdm.CellMeasure.__deepcopy__.rst","method/cfdm.CellMeasure.__getitem__.rst","method/cfdm.CellMeasure.__repr__.rst","method/cfdm.CellMeasure.__str__.rst","method/cfdm.CellMeasure._docstring_method_exclusions.rst","method/cfdm.CellMeasure._docstring_package_depth.rst","method/cfdm.CellMeasure._docstring_special_substitutions.rst","method/cfdm.CellMeasure._docstring_substitutions.rst","method/cfdm.CellMeasure.apply_masking.rst","method/cfdm.CellMeasure.clear_properties.rst","method/cfdm.CellMeasure.copy.rst","method/cfdm.CellMeasure.creation_commands.rst","method/cfdm.CellMeasure.del_data.rst","method/cfdm.CellMeasure.del_measure.rst","method/cfdm.CellMeasure.del_property.rst","method/cfdm.CellMeasure.dump.rst","method/cfdm.CellMeasure.equals.rst","method/cfdm.CellMeasure.get_data.rst","method/cfdm.CellMeasure.get_filenames.rst","method/cfdm.CellMeasure.get_measure.rst","method/cfdm.CellMeasure.get_property.rst","method/cfdm.CellMeasure.has_bounds.rst","method/cfdm.CellMeasure.has_data.rst","method/cfdm.CellMeasure.has_measure.rst","method/cfdm.CellMeasure.has_property.rst","method/cfdm.CellMeasure.identities.rst","method/cfdm.CellMeasure.identity.rst","method/cfdm.CellMeasure.insert_dimension.rst","method/cfdm.CellMeasure.nc_clear_variable_groups.rst","method/cfdm.CellMeasure.nc_del_variable.rst","method/cfdm.CellMeasure.nc_get_external.rst","method/cfdm.CellMeasure.nc_get_variable.rst","method/cfdm.CellMeasure.nc_has_variable.rst","method/cfdm.CellMeasure.nc_set_external.rst","method/cfdm.CellMeasure.nc_set_variable.rst","method/cfdm.CellMeasure.nc_set_variable_groups.rst","method/cfdm.CellMeasure.nc_variable_groups.rst","method/cfdm.CellMeasure.properties.rst","method/cfdm.CellMeasure.set_data.rst","method/cfdm.CellMeasure.set_measure.rst","method/cfdm.CellMeasure.set_properties.rst","method/cfdm.CellMeasure.set_property.rst","method/cfdm.CellMeasure.squeeze.rst","method/cfdm.CellMeasure.transpose.rst","method/cfdm.CellMeasure.uncompress.rst","method/cfdm.CellMethod.__deepcopy__.rst","method/cfdm.CellMethod.__repr__.rst","method/cfdm.CellMethod.__str__.rst","method/cfdm.CellMethod._docstring_method_exclusions.rst","method/cfdm.CellMethod._docstring_package_depth.rst","method/cfdm.CellMethod._docstring_special_substitutions.rst","method/cfdm.CellMethod._docstring_substitutions.rst","method/cfdm.CellMethod.copy.rst","method/cfdm.CellMethod.creation_commands.rst","method/cfdm.CellMethod.del_axes.rst","method/cfdm.CellMethod.del_method.rst","method/cfdm.CellMethod.del_qualifier.rst","method/cfdm.CellMethod.dump.rst","method/cfdm.CellMethod.equals.rst","method/cfdm.CellMethod.get_axes.rst","method/cfdm.CellMethod.get_method.rst","method/cfdm.CellMethod.get_qualifier.rst","method/cfdm.CellMethod.has_axes.rst","method/cfdm.CellMethod.has_method.rst","method/cfdm.CellMethod.has_qualifier.rst","method/cfdm.CellMethod.identities.rst","method/cfdm.CellMethod.identity.rst","method/cfdm.CellMethod.qualifiers.rst","method/cfdm.CellMethod.set_axes.rst","method/cfdm.CellMethod.set_method.rst","method/cfdm.CellMethod.set_qualifier.rst","method/cfdm.CellMethod.sorted.rst","method/cfdm.CompressedArray.__array__.rst","method/cfdm.CompressedArray.__deepcopy__.rst","method/cfdm.CompressedArray.__getitem__.rst","method/cfdm.CompressedArray.__repr__.rst","method/cfdm.CompressedArray.__str__.rst","method/cfdm.CompressedArray._docstring_method_exclusions.rst","method/cfdm.CompressedArray._docstring_package_depth.rst","method/cfdm.CompressedArray._docstring_special_substitutions.rst","method/cfdm.CompressedArray._docstring_substitutions.rst","method/cfdm.CompressedArray.copy.rst","method/cfdm.CompressedArray.get_compressed_axes.rst","method/cfdm.CompressedArray.get_compressed_dimension.rst","method/cfdm.CompressedArray.get_compression_type.rst","method/cfdm.CompressedArray.get_subspace.rst","method/cfdm.CompressedArray.source.rst","method/cfdm.CompressedArray.to_memory.rst","method/cfdm.Configuration.__enter__.rst","method/cfdm.Configuration.__exit__.rst","method/cfdm.Configuration.__repr__.rst","method/cfdm.Configuration.clear.rst","method/cfdm.Configuration.copy.rst","method/cfdm.Configuration.fromkeys.rst","method/cfdm.Configuration.get.rst","method/cfdm.Configuration.items.rst","method/cfdm.Configuration.keys.rst","method/cfdm.Configuration.pop.rst","method/cfdm.Configuration.popitem.rst","method/cfdm.Configuration.setdefault.rst","method/cfdm.Configuration.update.rst","method/cfdm.Configuration.values.rst","method/cfdm.Constant.__deepcopy__.rst","method/cfdm.Constant.__enter__.rst","method/cfdm.Constant.__exit__.rst","method/cfdm.Constant.__repr__.rst","method/cfdm.Constant.__str__.rst","method/cfdm.Constant.copy.rst","method/cfdm.Constructs.__call__.rst","method/cfdm.Constructs.__contains__.rst","method/cfdm.Constructs.__copy__.rst","method/cfdm.Constructs.__deepcopy__.rst","method/cfdm.Constructs.__getitem__.rst","method/cfdm.Constructs.__iter__.rst","method/cfdm.Constructs.__len__.rst","method/cfdm.Constructs.__repr__.rst","method/cfdm.Constructs.__str__.rst","method/cfdm.Constructs._docstring_method_exclusions.rst","method/cfdm.Constructs._docstring_package_depth.rst","method/cfdm.Constructs._docstring_special_substitutions.rst","method/cfdm.Constructs._docstring_substitutions.rst","method/cfdm.Constructs.clear_filters_applied.rst","method/cfdm.Constructs.construct_type.rst","method/cfdm.Constructs.construct_types.rst","method/cfdm.Constructs.copy.rst","method/cfdm.Constructs.data_axes.rst","method/cfdm.Constructs.domain_axes.rst","method/cfdm.Constructs.domain_axis_identity.rst","method/cfdm.Constructs.equals.rst","method/cfdm.Constructs.filter.rst","method/cfdm.Constructs.filter_by_axis.rst","method/cfdm.Constructs.filter_by_data.rst","method/cfdm.Constructs.filter_by_identity.rst","method/cfdm.Constructs.filter_by_key.rst","method/cfdm.Constructs.filter_by_measure.rst","method/cfdm.Constructs.filter_by_method.rst","method/cfdm.Constructs.filter_by_naxes.rst","method/cfdm.Constructs.filter_by_ncdim.rst","method/cfdm.Constructs.filter_by_ncvar.rst","method/cfdm.Constructs.filter_by_property.rst","method/cfdm.Constructs.filter_by_size.rst","method/cfdm.Constructs.filter_by_type.rst","method/cfdm.Constructs.filters_applied.rst","method/cfdm.Constructs.get.rst","method/cfdm.Constructs.get_data_axes.rst","method/cfdm.Constructs.inverse_filter.rst","method/cfdm.Constructs.items.rst","method/cfdm.Constructs.key.rst","method/cfdm.Constructs.keys.rst","method/cfdm.Constructs.new_identifier.rst","method/cfdm.Constructs.ordered.rst","method/cfdm.Constructs.replace.rst","method/cfdm.Constructs.shallow_copy.rst","method/cfdm.Constructs.todict.rst","method/cfdm.Constructs.unfilter.rst","method/cfdm.Constructs.value.rst","method/cfdm.Constructs.values.rst","method/cfdm.CoordinateConversion.__bool__.rst","method/cfdm.CoordinateConversion.__deepcopy__.rst","method/cfdm.CoordinateConversion.__nonzero__.rst","method/cfdm.CoordinateConversion.__repr__.rst","method/cfdm.CoordinateConversion.__str__.rst","method/cfdm.CoordinateConversion._docstring_method_exclusions.rst","method/cfdm.CoordinateConversion._docstring_package_depth.rst","method/cfdm.CoordinateConversion._docstring_special_substitutions.rst","method/cfdm.CoordinateConversion._docstring_substitutions.rst","method/cfdm.CoordinateConversion.clear_domain_ancillaries.rst","method/cfdm.CoordinateConversion.clear_parameters.rst","method/cfdm.CoordinateConversion.copy.rst","method/cfdm.CoordinateConversion.del_domain_ancillary.rst","method/cfdm.CoordinateConversion.del_parameter.rst","method/cfdm.CoordinateConversion.domain_ancillaries.rst","method/cfdm.CoordinateConversion.equals.rst","method/cfdm.CoordinateConversion.get_domain_ancillary.rst","method/cfdm.CoordinateConversion.get_parameter.rst","method/cfdm.CoordinateConversion.has_domain_ancillary.rst","method/cfdm.CoordinateConversion.has_parameter.rst","method/cfdm.CoordinateConversion.parameters.rst","method/cfdm.CoordinateConversion.set_domain_ancillaries.rst","method/cfdm.CoordinateConversion.set_domain_ancillary.rst","method/cfdm.CoordinateConversion.set_parameter.rst","method/cfdm.CoordinateConversion.set_parameters.rst","method/cfdm.CoordinateReference.__deepcopy__.rst","method/cfdm.CoordinateReference.__repr__.rst","method/cfdm.CoordinateReference.__str__.rst","method/cfdm.CoordinateReference._docstring_method_exclusions.rst","method/cfdm.CoordinateReference._docstring_package_depth.rst","method/cfdm.CoordinateReference._docstring_special_substitutions.rst","method/cfdm.CoordinateReference._docstring_substitutions.rst","method/cfdm.CoordinateReference.clear_coordinates.rst","method/cfdm.CoordinateReference.coordinates.rst","method/cfdm.CoordinateReference.copy.rst","method/cfdm.CoordinateReference.creation_commands.rst","method/cfdm.CoordinateReference.del_coordinate.rst","method/cfdm.CoordinateReference.del_coordinate_conversion.rst","method/cfdm.CoordinateReference.del_datum.rst","method/cfdm.CoordinateReference.dump.rst","method/cfdm.CoordinateReference.equals.rst","method/cfdm.CoordinateReference.get_coordinate_conversion.rst","method/cfdm.CoordinateReference.get_datum.rst","method/cfdm.CoordinateReference.has_coordinate.rst","method/cfdm.CoordinateReference.identities.rst","method/cfdm.CoordinateReference.identity.rst","method/cfdm.CoordinateReference.nc_clear_variable_groups.rst","method/cfdm.CoordinateReference.nc_del_variable.rst","method/cfdm.CoordinateReference.nc_get_variable.rst","method/cfdm.CoordinateReference.nc_has_variable.rst","method/cfdm.CoordinateReference.nc_set_variable.rst","method/cfdm.CoordinateReference.nc_set_variable_groups.rst","method/cfdm.CoordinateReference.nc_variable_groups.rst","method/cfdm.CoordinateReference.set_coordinate.rst","method/cfdm.CoordinateReference.set_coordinate_conversion.rst","method/cfdm.CoordinateReference.set_coordinates.rst","method/cfdm.CoordinateReference.set_datum.rst","method/cfdm.Count.__deepcopy__.rst","method/cfdm.Count.__getitem__.rst","method/cfdm.Count.__repr__.rst","method/cfdm.Count.__str__.rst","method/cfdm.Count._docstring_method_exclusions.rst","method/cfdm.Count._docstring_package_depth.rst","method/cfdm.Count._docstring_special_substitutions.rst","method/cfdm.Count._docstring_substitutions.rst","method/cfdm.Count.apply_masking.rst","method/cfdm.Count.clear_properties.rst","method/cfdm.Count.copy.rst","method/cfdm.Count.creation_commands.rst","method/cfdm.Count.del_data.rst","method/cfdm.Count.del_property.rst","method/cfdm.Count.dump.rst","method/cfdm.Count.equals.rst","method/cfdm.Count.get_data.rst","method/cfdm.Count.get_filenames.rst","method/cfdm.Count.get_property.rst","method/cfdm.Count.has_bounds.rst","method/cfdm.Count.has_data.rst","method/cfdm.Count.has_property.rst","method/cfdm.Count.identities.rst","method/cfdm.Count.identity.rst","method/cfdm.Count.insert_dimension.rst","method/cfdm.Count.nc_clear_dimension_groups.rst","method/cfdm.Count.nc_clear_sample_dimension_groups.rst","method/cfdm.Count.nc_clear_variable_groups.rst","method/cfdm.Count.nc_del_dimension.rst","method/cfdm.Count.nc_del_sample_dimension.rst","method/cfdm.Count.nc_del_variable.rst","method/cfdm.Count.nc_dimension_groups.rst","method/cfdm.Count.nc_get_dimension.rst","method/cfdm.Count.nc_get_sample_dimension.rst","method/cfdm.Count.nc_get_variable.rst","method/cfdm.Count.nc_has_dimension.rst","method/cfdm.Count.nc_has_sample_dimension.rst","method/cfdm.Count.nc_has_variable.rst","method/cfdm.Count.nc_sample_dimension_groups.rst","method/cfdm.Count.nc_set_dimension.rst","method/cfdm.Count.nc_set_dimension_groups.rst","method/cfdm.Count.nc_set_sample_dimension.rst","method/cfdm.Count.nc_set_sample_dimension_groups.rst","method/cfdm.Count.nc_set_variable.rst","method/cfdm.Count.nc_set_variable_groups.rst","method/cfdm.Count.nc_variable_groups.rst","method/cfdm.Count.properties.rst","method/cfdm.Count.set_data.rst","method/cfdm.Count.set_properties.rst","method/cfdm.Count.set_property.rst","method/cfdm.Count.squeeze.rst","method/cfdm.Count.transpose.rst","method/cfdm.Count.uncompress.rst","method/cfdm.Data.__array__.rst","method/cfdm.Data.__deepcopy__.rst","method/cfdm.Data.__getitem__.rst","method/cfdm.Data.__int__.rst","method/cfdm.Data.__iter__.rst","method/cfdm.Data.__repr__.rst","method/cfdm.Data.__setitem__.rst","method/cfdm.Data.__str__.rst","method/cfdm.Data._docstring_method_exclusions.rst","method/cfdm.Data._docstring_package_depth.rst","method/cfdm.Data._docstring_special_substitutions.rst","method/cfdm.Data._docstring_substitutions.rst","method/cfdm.Data.any.rst","method/cfdm.Data.apply_masking.rst","method/cfdm.Data.copy.rst","method/cfdm.Data.creation_commands.rst","method/cfdm.Data.del_calendar.rst","method/cfdm.Data.del_fill_value.rst","method/cfdm.Data.del_units.rst","method/cfdm.Data.empty.rst","method/cfdm.Data.equals.rst","method/cfdm.Data.filled.rst","method/cfdm.Data.first_element.rst","method/cfdm.Data.flatten.rst","method/cfdm.Data.get_calendar.rst","method/cfdm.Data.get_compressed_axes.rst","method/cfdm.Data.get_compressed_dimension.rst","method/cfdm.Data.get_compression_type.rst","method/cfdm.Data.get_count.rst","method/cfdm.Data.get_filenames.rst","method/cfdm.Data.get_fill_value.rst","method/cfdm.Data.get_index.rst","method/cfdm.Data.get_list.rst","method/cfdm.Data.get_units.rst","method/cfdm.Data.has_calendar.rst","method/cfdm.Data.has_fill_value.rst","method/cfdm.Data.has_units.rst","method/cfdm.Data.insert_dimension.rst","method/cfdm.Data.last_element.rst","method/cfdm.Data.max.rst","method/cfdm.Data.maximum.rst","method/cfdm.Data.min.rst","method/cfdm.Data.minimum.rst","method/cfdm.Data.nc_clear_hdf5_chunksizes.rst","method/cfdm.Data.nc_hdf5_chunksizes.rst","method/cfdm.Data.nc_set_hdf5_chunksizes.rst","method/cfdm.Data.second_element.rst","method/cfdm.Data.set_calendar.rst","method/cfdm.Data.set_fill_value.rst","method/cfdm.Data.set_units.rst","method/cfdm.Data.source.rst","method/cfdm.Data.squeeze.rst","method/cfdm.Data.sum.rst","method/cfdm.Data.to_memory.rst","method/cfdm.Data.transpose.rst","method/cfdm.Data.uncompress.rst","method/cfdm.Data.unique.rst","method/cfdm.Datum.__bool__.rst","method/cfdm.Datum.__deepcopy__.rst","method/cfdm.Datum.__nonzero__.rst","method/cfdm.Datum.__repr__.rst","method/cfdm.Datum.__str__.rst","method/cfdm.Datum._docstring_method_exclusions.rst","method/cfdm.Datum._docstring_package_depth.rst","method/cfdm.Datum._docstring_special_substitutions.rst","method/cfdm.Datum._docstring_substitutions.rst","method/cfdm.Datum.clear_parameters.rst","method/cfdm.Datum.copy.rst","method/cfdm.Datum.del_parameter.rst","method/cfdm.Datum.equals.rst","method/cfdm.Datum.get_parameter.rst","method/cfdm.Datum.has_parameter.rst","method/cfdm.Datum.nc_clear_variable_groups.rst","method/cfdm.Datum.nc_del_variable.rst","method/cfdm.Datum.nc_get_variable.rst","method/cfdm.Datum.nc_has_variable.rst","method/cfdm.Datum.nc_set_variable.rst","method/cfdm.Datum.nc_set_variable_groups.rst","method/cfdm.Datum.nc_variable_groups.rst","method/cfdm.Datum.parameters.rst","method/cfdm.Datum.set_parameter.rst","method/cfdm.Datum.set_parameters.rst","method/cfdm.DimensionCoordinate.__deepcopy__.rst","method/cfdm.DimensionCoordinate.__getitem__.rst","method/cfdm.DimensionCoordinate.__repr__.rst","method/cfdm.DimensionCoordinate.__str__.rst","method/cfdm.DimensionCoordinate._docstring_method_exclusions.rst","method/cfdm.DimensionCoordinate._docstring_package_depth.rst","method/cfdm.DimensionCoordinate._docstring_special_substitutions.rst","method/cfdm.DimensionCoordinate._docstring_substitutions.rst","method/cfdm.DimensionCoordinate.apply_masking.rst","method/cfdm.DimensionCoordinate.clear_properties.rst","method/cfdm.DimensionCoordinate.copy.rst","method/cfdm.DimensionCoordinate.creation_commands.rst","method/cfdm.DimensionCoordinate.del_bounds.rst","method/cfdm.DimensionCoordinate.del_climatology.rst","method/cfdm.DimensionCoordinate.del_data.rst","method/cfdm.DimensionCoordinate.del_geometry.rst","method/cfdm.DimensionCoordinate.del_interior_ring.rst","method/cfdm.DimensionCoordinate.del_node_count.rst","method/cfdm.DimensionCoordinate.del_part_node_count.rst","method/cfdm.DimensionCoordinate.del_property.rst","method/cfdm.DimensionCoordinate.dump.rst","method/cfdm.DimensionCoordinate.equals.rst","method/cfdm.DimensionCoordinate.get_bounds.rst","method/cfdm.DimensionCoordinate.get_bounds_data.rst","method/cfdm.DimensionCoordinate.get_climatology.rst","method/cfdm.DimensionCoordinate.get_data.rst","method/cfdm.DimensionCoordinate.get_filenames.rst","method/cfdm.DimensionCoordinate.get_geometry.rst","method/cfdm.DimensionCoordinate.get_interior_ring.rst","method/cfdm.DimensionCoordinate.get_node_count.rst","method/cfdm.DimensionCoordinate.get_part_node_count.rst","method/cfdm.DimensionCoordinate.get_property.rst","method/cfdm.DimensionCoordinate.has_bounds.rst","method/cfdm.DimensionCoordinate.has_data.rst","method/cfdm.DimensionCoordinate.has_geometry.rst","method/cfdm.DimensionCoordinate.has_interior_ring.rst","method/cfdm.DimensionCoordinate.has_node_count.rst","method/cfdm.DimensionCoordinate.has_part_node_count.rst","method/cfdm.DimensionCoordinate.has_property.rst","method/cfdm.DimensionCoordinate.identities.rst","method/cfdm.DimensionCoordinate.identity.rst","method/cfdm.DimensionCoordinate.insert_dimension.rst","method/cfdm.DimensionCoordinate.is_climatology.rst","method/cfdm.DimensionCoordinate.nc_clear_variable_groups.rst","method/cfdm.DimensionCoordinate.nc_del_variable.rst","method/cfdm.DimensionCoordinate.nc_get_variable.rst","method/cfdm.DimensionCoordinate.nc_has_variable.rst","method/cfdm.DimensionCoordinate.nc_set_variable.rst","method/cfdm.DimensionCoordinate.nc_set_variable_groups.rst","method/cfdm.DimensionCoordinate.nc_variable_groups.rst","method/cfdm.DimensionCoordinate.properties.rst","method/cfdm.DimensionCoordinate.set_bounds.rst","method/cfdm.DimensionCoordinate.set_climatology.rst","method/cfdm.DimensionCoordinate.set_data.rst","method/cfdm.DimensionCoordinate.set_geometry.rst","method/cfdm.DimensionCoordinate.set_interior_ring.rst","method/cfdm.DimensionCoordinate.set_node_count.rst","method/cfdm.DimensionCoordinate.set_part_node_count.rst","method/cfdm.DimensionCoordinate.set_properties.rst","method/cfdm.DimensionCoordinate.set_property.rst","method/cfdm.DimensionCoordinate.squeeze.rst","method/cfdm.DimensionCoordinate.transpose.rst","method/cfdm.DimensionCoordinate.uncompress.rst","method/cfdm.Domain.__deepcopy__.rst","method/cfdm.Domain.__repr__.rst","method/cfdm.Domain.__str__.rst","method/cfdm.Domain._docstring_method_exclusions.rst","method/cfdm.Domain._docstring_package_depth.rst","method/cfdm.Domain._docstring_special_substitutions.rst","method/cfdm.Domain._docstring_substitutions.rst","method/cfdm.Domain.apply_masking.rst","method/cfdm.Domain.auxiliary_coordinates.rst","method/cfdm.Domain.cell_measures.rst","method/cfdm.Domain.clear_properties.rst","method/cfdm.Domain.climatological_time_axes.rst","method/cfdm.Domain.construct.rst","method/cfdm.Domain.construct_item.rst","method/cfdm.Domain.construct_key.rst","method/cfdm.Domain.coordinate_references.rst","method/cfdm.Domain.coordinates.rst","method/cfdm.Domain.copy.rst","method/cfdm.Domain.creation_commands.rst","method/cfdm.Domain.dataset_compliance.rst","method/cfdm.Domain.del_construct.rst","method/cfdm.Domain.del_data_axes.rst","method/cfdm.Domain.del_property.rst","method/cfdm.Domain.dimension_coordinates.rst","method/cfdm.Domain.domain_ancillaries.rst","method/cfdm.Domain.domain_axes.rst","method/cfdm.Domain.domain_axis_key.rst","method/cfdm.Domain.dump.rst","method/cfdm.Domain.equals.rst","method/cfdm.Domain.fromconstructs.rst","method/cfdm.Domain.get_construct.rst","method/cfdm.Domain.get_data_axes.rst","method/cfdm.Domain.get_filenames.rst","method/cfdm.Domain.get_property.rst","method/cfdm.Domain.has_bounds.rst","method/cfdm.Domain.has_construct.rst","method/cfdm.Domain.has_data.rst","method/cfdm.Domain.has_data_axes.rst","method/cfdm.Domain.has_geometry.rst","method/cfdm.Domain.has_property.rst","method/cfdm.Domain.identities.rst","method/cfdm.Domain.identity.rst","method/cfdm.Domain.nc_clear_component_dimension_groups.rst","method/cfdm.Domain.nc_clear_component_sample_dimension_groups.rst","method/cfdm.Domain.nc_clear_component_variable_groups.rst","method/cfdm.Domain.nc_clear_geometry_variable_groups.rst","method/cfdm.Domain.nc_clear_global_attributes.rst","method/cfdm.Domain.nc_clear_group_attributes.rst","method/cfdm.Domain.nc_clear_variable_groups.rst","method/cfdm.Domain.nc_del_component_dimension.rst","method/cfdm.Domain.nc_del_component_sample_dimension.rst","method/cfdm.Domain.nc_del_component_variable.rst","method/cfdm.Domain.nc_del_geometry_variable.rst","method/cfdm.Domain.nc_del_variable.rst","method/cfdm.Domain.nc_geometry_variable_groups.rst","method/cfdm.Domain.nc_get_geometry_variable.rst","method/cfdm.Domain.nc_get_variable.rst","method/cfdm.Domain.nc_global_attributes.rst","method/cfdm.Domain.nc_group_attributes.rst","method/cfdm.Domain.nc_has_geometry_variable.rst","method/cfdm.Domain.nc_has_variable.rst","method/cfdm.Domain.nc_set_component_dimension.rst","method/cfdm.Domain.nc_set_component_dimension_groups.rst","method/cfdm.Domain.nc_set_component_sample_dimension.rst","method/cfdm.Domain.nc_set_component_sample_dimension_groups.rst","method/cfdm.Domain.nc_set_component_variable.rst","method/cfdm.Domain.nc_set_component_variable_groups.rst","method/cfdm.Domain.nc_set_geometry_variable.rst","method/cfdm.Domain.nc_set_geometry_variable_groups.rst","method/cfdm.Domain.nc_set_global_attribute.rst","method/cfdm.Domain.nc_set_global_attributes.rst","method/cfdm.Domain.nc_set_group_attribute.rst","method/cfdm.Domain.nc_set_group_attributes.rst","method/cfdm.Domain.nc_set_variable.rst","method/cfdm.Domain.nc_set_variable_groups.rst","method/cfdm.Domain.nc_variable_groups.rst","method/cfdm.Domain.properties.rst","method/cfdm.Domain.set_construct.rst","method/cfdm.Domain.set_data_axes.rst","method/cfdm.Domain.set_properties.rst","method/cfdm.Domain.set_property.rst","method/cfdm.DomainAncillary.__deepcopy__.rst","method/cfdm.DomainAncillary.__getitem__.rst","method/cfdm.DomainAncillary.__repr__.rst","method/cfdm.DomainAncillary.__str__.rst","method/cfdm.DomainAncillary._docstring_method_exclusions.rst","method/cfdm.DomainAncillary._docstring_package_depth.rst","method/cfdm.DomainAncillary._docstring_special_substitutions.rst","method/cfdm.DomainAncillary._docstring_substitutions.rst","method/cfdm.DomainAncillary.apply_masking.rst","method/cfdm.DomainAncillary.clear_properties.rst","method/cfdm.DomainAncillary.copy.rst","method/cfdm.DomainAncillary.creation_commands.rst","method/cfdm.DomainAncillary.del_bounds.rst","method/cfdm.DomainAncillary.del_data.rst","method/cfdm.DomainAncillary.del_geometry.rst","method/cfdm.DomainAncillary.del_interior_ring.rst","method/cfdm.DomainAncillary.del_node_count.rst","method/cfdm.DomainAncillary.del_part_node_count.rst","method/cfdm.DomainAncillary.del_property.rst","method/cfdm.DomainAncillary.dump.rst","method/cfdm.DomainAncillary.equals.rst","method/cfdm.DomainAncillary.get_bounds.rst","method/cfdm.DomainAncillary.get_bounds_data.rst","method/cfdm.DomainAncillary.get_data.rst","method/cfdm.DomainAncillary.get_filenames.rst","method/cfdm.DomainAncillary.get_geometry.rst","method/cfdm.DomainAncillary.get_interior_ring.rst","method/cfdm.DomainAncillary.get_node_count.rst","method/cfdm.DomainAncillary.get_part_node_count.rst","method/cfdm.DomainAncillary.get_property.rst","method/cfdm.DomainAncillary.has_bounds.rst","method/cfdm.DomainAncillary.has_data.rst","method/cfdm.DomainAncillary.has_geometry.rst","method/cfdm.DomainAncillary.has_interior_ring.rst","method/cfdm.DomainAncillary.has_node_count.rst","method/cfdm.DomainAncillary.has_part_node_count.rst","method/cfdm.DomainAncillary.has_property.rst","method/cfdm.DomainAncillary.identities.rst","method/cfdm.DomainAncillary.identity.rst","method/cfdm.DomainAncillary.insert_dimension.rst","method/cfdm.DomainAncillary.nc_clear_variable_groups.rst","method/cfdm.DomainAncillary.nc_del_variable.rst","method/cfdm.DomainAncillary.nc_get_variable.rst","method/cfdm.DomainAncillary.nc_has_variable.rst","method/cfdm.DomainAncillary.nc_set_variable.rst","method/cfdm.DomainAncillary.nc_set_variable_groups.rst","method/cfdm.DomainAncillary.nc_variable_groups.rst","method/cfdm.DomainAncillary.properties.rst","method/cfdm.DomainAncillary.set_bounds.rst","method/cfdm.DomainAncillary.set_data.rst","method/cfdm.DomainAncillary.set_geometry.rst","method/cfdm.DomainAncillary.set_interior_ring.rst","method/cfdm.DomainAncillary.set_node_count.rst","method/cfdm.DomainAncillary.set_part_node_count.rst","method/cfdm.DomainAncillary.set_properties.rst","method/cfdm.DomainAncillary.set_property.rst","method/cfdm.DomainAncillary.squeeze.rst","method/cfdm.DomainAncillary.transpose.rst","method/cfdm.DomainAncillary.uncompress.rst","method/cfdm.DomainAxis.__deepcopy__.rst","method/cfdm.DomainAxis.__repr__.rst","method/cfdm.DomainAxis.__str__.rst","method/cfdm.DomainAxis._docstring_method_exclusions.rst","method/cfdm.DomainAxis._docstring_package_depth.rst","method/cfdm.DomainAxis._docstring_special_substitutions.rst","method/cfdm.DomainAxis._docstring_substitutions.rst","method/cfdm.DomainAxis.copy.rst","method/cfdm.DomainAxis.creation_commands.rst","method/cfdm.DomainAxis.del_size.rst","method/cfdm.DomainAxis.equals.rst","method/cfdm.DomainAxis.get_size.rst","method/cfdm.DomainAxis.has_size.rst","method/cfdm.DomainAxis.identities.rst","method/cfdm.DomainAxis.identity.rst","method/cfdm.DomainAxis.nc_clear_dimension_groups.rst","method/cfdm.DomainAxis.nc_del_dimension.rst","method/cfdm.DomainAxis.nc_dimension_groups.rst","method/cfdm.DomainAxis.nc_get_dimension.rst","method/cfdm.DomainAxis.nc_has_dimension.rst","method/cfdm.DomainAxis.nc_is_unlimited.rst","method/cfdm.DomainAxis.nc_set_dimension.rst","method/cfdm.DomainAxis.nc_set_dimension_groups.rst","method/cfdm.DomainAxis.nc_set_unlimited.rst","method/cfdm.DomainAxis.set_size.rst","method/cfdm.Field.__deepcopy__.rst","method/cfdm.Field.__getitem__.rst","method/cfdm.Field.__repr__.rst","method/cfdm.Field.__str__.rst","method/cfdm.Field._docstring_method_exclusions.rst","method/cfdm.Field._docstring_package_depth.rst","method/cfdm.Field._docstring_special_substitutions.rst","method/cfdm.Field._docstring_substitutions.rst","method/cfdm.Field.apply_masking.rst","method/cfdm.Field.auxiliary_coordinates.rst","method/cfdm.Field.cell_measures.rst","method/cfdm.Field.cell_methods.rst","method/cfdm.Field.clear_properties.rst","method/cfdm.Field.climatological_time_axes.rst","method/cfdm.Field.compress.rst","method/cfdm.Field.construct.rst","method/cfdm.Field.construct_item.rst","method/cfdm.Field.construct_key.rst","method/cfdm.Field.convert.rst","method/cfdm.Field.coordinate_references.rst","method/cfdm.Field.coordinates.rst","method/cfdm.Field.copy.rst","method/cfdm.Field.creation_commands.rst","method/cfdm.Field.dataset_compliance.rst","method/cfdm.Field.del_construct.rst","method/cfdm.Field.del_data.rst","method/cfdm.Field.del_data_axes.rst","method/cfdm.Field.del_property.rst","method/cfdm.Field.dimension_coordinates.rst","method/cfdm.Field.domain_ancillaries.rst","method/cfdm.Field.domain_axes.rst","method/cfdm.Field.domain_axis_key.rst","method/cfdm.Field.dump.rst","method/cfdm.Field.equals.rst","method/cfdm.Field.field_ancillaries.rst","method/cfdm.Field.get_construct.rst","method/cfdm.Field.get_data.rst","method/cfdm.Field.get_data_axes.rst","method/cfdm.Field.get_domain.rst","method/cfdm.Field.get_filenames.rst","method/cfdm.Field.get_property.rst","method/cfdm.Field.has_bounds.rst","method/cfdm.Field.has_construct.rst","method/cfdm.Field.has_data.rst","method/cfdm.Field.has_data_axes.rst","method/cfdm.Field.has_geometry.rst","method/cfdm.Field.has_property.rst","method/cfdm.Field.identities.rst","method/cfdm.Field.identity.rst","method/cfdm.Field.insert_dimension.rst","method/cfdm.Field.nc_clear_component_dimension_groups.rst","method/cfdm.Field.nc_clear_component_sample_dimension_groups.rst","method/cfdm.Field.nc_clear_component_variable_groups.rst","method/cfdm.Field.nc_clear_geometry_variable_groups.rst","method/cfdm.Field.nc_clear_global_attributes.rst","method/cfdm.Field.nc_clear_group_attributes.rst","method/cfdm.Field.nc_clear_variable_groups.rst","method/cfdm.Field.nc_del_component_dimension.rst","method/cfdm.Field.nc_del_component_sample_dimension.rst","method/cfdm.Field.nc_del_component_variable.rst","method/cfdm.Field.nc_del_geometry_variable.rst","method/cfdm.Field.nc_del_variable.rst","method/cfdm.Field.nc_geometry_variable_groups.rst","method/cfdm.Field.nc_get_geometry_variable.rst","method/cfdm.Field.nc_get_variable.rst","method/cfdm.Field.nc_global_attributes.rst","method/cfdm.Field.nc_group_attributes.rst","method/cfdm.Field.nc_has_geometry_variable.rst","method/cfdm.Field.nc_has_variable.rst","method/cfdm.Field.nc_set_component_dimension.rst","method/cfdm.Field.nc_set_component_dimension_groups.rst","method/cfdm.Field.nc_set_component_sample_dimension.rst","method/cfdm.Field.nc_set_component_sample_dimension_groups.rst","method/cfdm.Field.nc_set_component_variable.rst","method/cfdm.Field.nc_set_component_variable_groups.rst","method/cfdm.Field.nc_set_geometry_variable.rst","method/cfdm.Field.nc_set_geometry_variable_groups.rst","method/cfdm.Field.nc_set_global_attribute.rst","method/cfdm.Field.nc_set_global_attributes.rst","method/cfdm.Field.nc_set_group_attribute.rst","method/cfdm.Field.nc_set_group_attributes.rst","method/cfdm.Field.nc_set_variable.rst","method/cfdm.Field.nc_set_variable_groups.rst","method/cfdm.Field.nc_variable_groups.rst","method/cfdm.Field.properties.rst","method/cfdm.Field.set_construct.rst","method/cfdm.Field.set_data.rst","method/cfdm.Field.set_data_axes.rst","method/cfdm.Field.set_properties.rst","method/cfdm.Field.set_property.rst","method/cfdm.Field.squeeze.rst","method/cfdm.Field.transpose.rst","method/cfdm.Field.uncompress.rst","method/cfdm.FieldAncillary.__deepcopy__.rst","method/cfdm.FieldAncillary.__getitem__.rst","method/cfdm.FieldAncillary.__repr__.rst","method/cfdm.FieldAncillary.__str__.rst","method/cfdm.FieldAncillary._docstring_method_exclusions.rst","method/cfdm.FieldAncillary._docstring_package_depth.rst","method/cfdm.FieldAncillary._docstring_special_substitutions.rst","method/cfdm.FieldAncillary._docstring_substitutions.rst","method/cfdm.FieldAncillary.apply_masking.rst","method/cfdm.FieldAncillary.clear_properties.rst","method/cfdm.FieldAncillary.copy.rst","method/cfdm.FieldAncillary.creation_commands.rst","method/cfdm.FieldAncillary.del_data.rst","method/cfdm.FieldAncillary.del_property.rst","method/cfdm.FieldAncillary.dump.rst","method/cfdm.FieldAncillary.equals.rst","method/cfdm.FieldAncillary.get_data.rst","method/cfdm.FieldAncillary.get_filenames.rst","method/cfdm.FieldAncillary.get_property.rst","method/cfdm.FieldAncillary.has_bounds.rst","method/cfdm.FieldAncillary.has_data.rst","method/cfdm.FieldAncillary.has_property.rst","method/cfdm.FieldAncillary.identities.rst","method/cfdm.FieldAncillary.identity.rst","method/cfdm.FieldAncillary.insert_dimension.rst","method/cfdm.FieldAncillary.nc_clear_variable_groups.rst","method/cfdm.FieldAncillary.nc_del_variable.rst","method/cfdm.FieldAncillary.nc_get_variable.rst","method/cfdm.FieldAncillary.nc_has_variable.rst","method/cfdm.FieldAncillary.nc_set_variable.rst","method/cfdm.FieldAncillary.nc_set_variable_groups.rst","method/cfdm.FieldAncillary.nc_variable_groups.rst","method/cfdm.FieldAncillary.properties.rst","method/cfdm.FieldAncillary.set_data.rst","method/cfdm.FieldAncillary.set_properties.rst","method/cfdm.FieldAncillary.set_property.rst","method/cfdm.FieldAncillary.squeeze.rst","method/cfdm.FieldAncillary.transpose.rst","method/cfdm.FieldAncillary.uncompress.rst","method/cfdm.GatheredArray.__array__.rst","method/cfdm.GatheredArray.__deepcopy__.rst","method/cfdm.GatheredArray.__getitem__.rst","method/cfdm.GatheredArray.__repr__.rst","method/cfdm.GatheredArray.__str__.rst","method/cfdm.GatheredArray.copy.rst","method/cfdm.GatheredArray.get_compressed_axes.rst","method/cfdm.GatheredArray.get_compressed_dimension.rst","method/cfdm.GatheredArray.get_compression_type.rst","method/cfdm.GatheredArray.get_list.rst","method/cfdm.GatheredArray.get_subspace.rst","method/cfdm.GatheredArray.source.rst","method/cfdm.GatheredArray.to_memory.rst","method/cfdm.Index.__deepcopy__.rst","method/cfdm.Index.__getitem__.rst","method/cfdm.Index.__repr__.rst","method/cfdm.Index.__str__.rst","method/cfdm.Index._docstring_method_exclusions.rst","method/cfdm.Index._docstring_package_depth.rst","method/cfdm.Index._docstring_special_substitutions.rst","method/cfdm.Index._docstring_substitutions.rst","method/cfdm.Index.apply_masking.rst","method/cfdm.Index.clear_properties.rst","method/cfdm.Index.copy.rst","method/cfdm.Index.creation_commands.rst","method/cfdm.Index.del_data.rst","method/cfdm.Index.del_property.rst","method/cfdm.Index.dump.rst","method/cfdm.Index.equals.rst","method/cfdm.Index.get_data.rst","method/cfdm.Index.get_filenames.rst","method/cfdm.Index.get_property.rst","method/cfdm.Index.has_bounds.rst","method/cfdm.Index.has_data.rst","method/cfdm.Index.has_property.rst","method/cfdm.Index.identities.rst","method/cfdm.Index.identity.rst","method/cfdm.Index.insert_dimension.rst","method/cfdm.Index.nc_clear_dimension_groups.rst","method/cfdm.Index.nc_clear_sample_dimension_groups.rst","method/cfdm.Index.nc_clear_variable_groups.rst","method/cfdm.Index.nc_del_dimension.rst","method/cfdm.Index.nc_del_sample_dimension.rst","method/cfdm.Index.nc_del_variable.rst","method/cfdm.Index.nc_dimension_groups.rst","method/cfdm.Index.nc_get_dimension.rst","method/cfdm.Index.nc_get_sample_dimension.rst","method/cfdm.Index.nc_get_variable.rst","method/cfdm.Index.nc_has_dimension.rst","method/cfdm.Index.nc_has_sample_dimension.rst","method/cfdm.Index.nc_has_variable.rst","method/cfdm.Index.nc_sample_dimension_groups.rst","method/cfdm.Index.nc_set_dimension.rst","method/cfdm.Index.nc_set_dimension_groups.rst","method/cfdm.Index.nc_set_sample_dimension.rst","method/cfdm.Index.nc_set_sample_dimension_groups.rst","method/cfdm.Index.nc_set_variable.rst","method/cfdm.Index.nc_set_variable_groups.rst","method/cfdm.Index.nc_variable_groups.rst","method/cfdm.Index.properties.rst","method/cfdm.Index.set_data.rst","method/cfdm.Index.set_properties.rst","method/cfdm.Index.set_property.rst","method/cfdm.Index.squeeze.rst","method/cfdm.Index.transpose.rst","method/cfdm.Index.uncompress.rst","method/cfdm.InteriorRing.__deepcopy__.rst","method/cfdm.InteriorRing.__getitem__.rst","method/cfdm.InteriorRing.__repr__.rst","method/cfdm.InteriorRing.__str__.rst","method/cfdm.InteriorRing._docstring_method_exclusions.rst","method/cfdm.InteriorRing._docstring_package_depth.rst","method/cfdm.InteriorRing._docstring_special_substitutions.rst","method/cfdm.InteriorRing._docstring_substitutions.rst","method/cfdm.InteriorRing.apply_masking.rst","method/cfdm.InteriorRing.clear_properties.rst","method/cfdm.InteriorRing.copy.rst","method/cfdm.InteriorRing.creation_commands.rst","method/cfdm.InteriorRing.del_data.rst","method/cfdm.InteriorRing.del_property.rst","method/cfdm.InteriorRing.dump.rst","method/cfdm.InteriorRing.equals.rst","method/cfdm.InteriorRing.get_data.rst","method/cfdm.InteriorRing.get_filenames.rst","method/cfdm.InteriorRing.get_property.rst","method/cfdm.InteriorRing.has_bounds.rst","method/cfdm.InteriorRing.has_data.rst","method/cfdm.InteriorRing.has_property.rst","method/cfdm.InteriorRing.identities.rst","method/cfdm.InteriorRing.identity.rst","method/cfdm.InteriorRing.insert_dimension.rst","method/cfdm.InteriorRing.nc_clear_dimension_groups.rst","method/cfdm.InteriorRing.nc_clear_variable_groups.rst","method/cfdm.InteriorRing.nc_del_dimension.rst","method/cfdm.InteriorRing.nc_del_variable.rst","method/cfdm.InteriorRing.nc_dimension_groups.rst","method/cfdm.InteriorRing.nc_get_dimension.rst","method/cfdm.InteriorRing.nc_get_variable.rst","method/cfdm.InteriorRing.nc_has_dimension.rst","method/cfdm.InteriorRing.nc_has_variable.rst","method/cfdm.InteriorRing.nc_set_dimension.rst","method/cfdm.InteriorRing.nc_set_dimension_groups.rst","method/cfdm.InteriorRing.nc_set_variable.rst","method/cfdm.InteriorRing.nc_set_variable_groups.rst","method/cfdm.InteriorRing.nc_variable_groups.rst","method/cfdm.InteriorRing.properties.rst","method/cfdm.InteriorRing.set_data.rst","method/cfdm.InteriorRing.set_properties.rst","method/cfdm.InteriorRing.set_property.rst","method/cfdm.InteriorRing.squeeze.rst","method/cfdm.InteriorRing.transpose.rst","method/cfdm.InteriorRing.uncompress.rst","method/cfdm.List.__deepcopy__.rst","method/cfdm.List.__getitem__.rst","method/cfdm.List.__repr__.rst","method/cfdm.List.__str__.rst","method/cfdm.List._docstring_method_exclusions.rst","method/cfdm.List._docstring_package_depth.rst","method/cfdm.List._docstring_special_substitutions.rst","method/cfdm.List._docstring_substitutions.rst","method/cfdm.List.apply_masking.rst","method/cfdm.List.clear_properties.rst","method/cfdm.List.copy.rst","method/cfdm.List.creation_commands.rst","method/cfdm.List.del_data.rst","method/cfdm.List.del_property.rst","method/cfdm.List.dump.rst","method/cfdm.List.equals.rst","method/cfdm.List.get_data.rst","method/cfdm.List.get_filenames.rst","method/cfdm.List.get_property.rst","method/cfdm.List.has_bounds.rst","method/cfdm.List.has_data.rst","method/cfdm.List.has_property.rst","method/cfdm.List.identities.rst","method/cfdm.List.identity.rst","method/cfdm.List.insert_dimension.rst","method/cfdm.List.nc_clear_variable_groups.rst","method/cfdm.List.nc_del_variable.rst","method/cfdm.List.nc_get_variable.rst","method/cfdm.List.nc_has_variable.rst","method/cfdm.List.nc_set_variable.rst","method/cfdm.List.nc_set_variable_groups.rst","method/cfdm.List.nc_variable_groups.rst","method/cfdm.List.properties.rst","method/cfdm.List.set_data.rst","method/cfdm.List.set_properties.rst","method/cfdm.List.set_property.rst","method/cfdm.List.squeeze.rst","method/cfdm.List.transpose.rst","method/cfdm.List.uncompress.rst","method/cfdm.NetCDFArray.__getitem__.rst","method/cfdm.NetCDFArray._docstring_method_exclusions.rst","method/cfdm.NetCDFArray._docstring_package_depth.rst","method/cfdm.NetCDFArray._docstring_special_substitutions.rst","method/cfdm.NetCDFArray._docstring_substitutions.rst","method/cfdm.NetCDFArray.close.rst","method/cfdm.NetCDFArray.copy.rst","method/cfdm.NetCDFArray.get_compression_type.rst","method/cfdm.NetCDFArray.get_filename.rst","method/cfdm.NetCDFArray.get_group.rst","method/cfdm.NetCDFArray.get_mask.rst","method/cfdm.NetCDFArray.get_ncvar.rst","method/cfdm.NetCDFArray.get_subspace.rst","method/cfdm.NetCDFArray.get_varid.rst","method/cfdm.NetCDFArray.open.rst","method/cfdm.NetCDFArray.to_memory.rst","method/cfdm.NumpyArray.__getitem__.rst","method/cfdm.NumpyArray._docstring_method_exclusions.rst","method/cfdm.NumpyArray._docstring_package_depth.rst","method/cfdm.NumpyArray._docstring_special_substitutions.rst","method/cfdm.NumpyArray._docstring_substitutions.rst","method/cfdm.NumpyArray.copy.rst","method/cfdm.NumpyArray.get_compression_type.rst","method/cfdm.NumpyArray.get_subspace.rst","method/cfdm.NumpyArray.to_memory.rst","method/cfdm.RaggedContiguousArray.__array__.rst","method/cfdm.RaggedContiguousArray.__deepcopy__.rst","method/cfdm.RaggedContiguousArray.__getitem__.rst","method/cfdm.RaggedContiguousArray.__repr__.rst","method/cfdm.RaggedContiguousArray.__str__.rst","method/cfdm.RaggedContiguousArray._docstring_method_exclusions.rst","method/cfdm.RaggedContiguousArray._docstring_package_depth.rst","method/cfdm.RaggedContiguousArray._docstring_special_substitutions.rst","method/cfdm.RaggedContiguousArray._docstring_substitutions.rst","method/cfdm.RaggedContiguousArray.copy.rst","method/cfdm.RaggedContiguousArray.get_compressed_axes.rst","method/cfdm.RaggedContiguousArray.get_compressed_dimension.rst","method/cfdm.RaggedContiguousArray.get_compression_type.rst","method/cfdm.RaggedContiguousArray.get_count.rst","method/cfdm.RaggedContiguousArray.get_subspace.rst","method/cfdm.RaggedContiguousArray.source.rst","method/cfdm.RaggedContiguousArray.to_memory.rst","method/cfdm.RaggedIndexedArray.__array__.rst","method/cfdm.RaggedIndexedArray.__deepcopy__.rst","method/cfdm.RaggedIndexedArray.__getitem__.rst","method/cfdm.RaggedIndexedArray.__repr__.rst","method/cfdm.RaggedIndexedArray.__str__.rst","method/cfdm.RaggedIndexedArray._docstring_method_exclusions.rst","method/cfdm.RaggedIndexedArray._docstring_package_depth.rst","method/cfdm.RaggedIndexedArray._docstring_special_substitutions.rst","method/cfdm.RaggedIndexedArray._docstring_substitutions.rst","method/cfdm.RaggedIndexedArray.copy.rst","method/cfdm.RaggedIndexedArray.get_compressed_axes.rst","method/cfdm.RaggedIndexedArray.get_compressed_dimension.rst","method/cfdm.RaggedIndexedArray.get_compression_type.rst","method/cfdm.RaggedIndexedArray.get_index.rst","method/cfdm.RaggedIndexedArray.get_subspace.rst","method/cfdm.RaggedIndexedArray.source.rst","method/cfdm.RaggedIndexedArray.to_memory.rst","method/cfdm.RaggedIndexedContiguousArray.__array__.rst","method/cfdm.RaggedIndexedContiguousArray.__deepcopy__.rst","method/cfdm.RaggedIndexedContiguousArray.__getitem__.rst","method/cfdm.RaggedIndexedContiguousArray.__repr__.rst","method/cfdm.RaggedIndexedContiguousArray.__str__.rst","method/cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions.rst","method/cfdm.RaggedIndexedContiguousArray._docstring_package_depth.rst","method/cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions.rst","method/cfdm.RaggedIndexedContiguousArray._docstring_substitutions.rst","method/cfdm.RaggedIndexedContiguousArray.copy.rst","method/cfdm.RaggedIndexedContiguousArray.get_compressed_axes.rst","method/cfdm.RaggedIndexedContiguousArray.get_compressed_dimension.rst","method/cfdm.RaggedIndexedContiguousArray.get_compression_type.rst","method/cfdm.RaggedIndexedContiguousArray.get_count.rst","method/cfdm.RaggedIndexedContiguousArray.get_index.rst","method/cfdm.RaggedIndexedContiguousArray.get_subspace.rst","method/cfdm.RaggedIndexedContiguousArray.source.rst","method/cfdm.RaggedIndexedContiguousArray.to_memory.rst","method/cfdm.core.Array.__deepcopy__.rst","method/cfdm.core.Array._docstring_method_exclusions.rst","method/cfdm.core.Array._docstring_package_depth.rst","method/cfdm.core.Array._docstring_special_substitutions.rst","method/cfdm.core.Array._docstring_substitutions.rst","method/cfdm.core.Array.copy.rst","method/cfdm.core.AuxiliaryCoordinate.__deepcopy__.rst","method/cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions.rst","method/cfdm.core.AuxiliaryCoordinate._docstring_package_depth.rst","method/cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions.rst","method/cfdm.core.AuxiliaryCoordinate._docstring_substitutions.rst","method/cfdm.core.AuxiliaryCoordinate.clear_properties.rst","method/cfdm.core.AuxiliaryCoordinate.copy.rst","method/cfdm.core.AuxiliaryCoordinate.del_bounds.rst","method/cfdm.core.AuxiliaryCoordinate.del_climatology.rst","method/cfdm.core.AuxiliaryCoordinate.del_data.rst","method/cfdm.core.AuxiliaryCoordinate.del_geometry.rst","method/cfdm.core.AuxiliaryCoordinate.del_interior_ring.rst","method/cfdm.core.AuxiliaryCoordinate.del_property.rst","method/cfdm.core.AuxiliaryCoordinate.get_bounds.rst","method/cfdm.core.AuxiliaryCoordinate.get_climatology.rst","method/cfdm.core.AuxiliaryCoordinate.get_data.rst","method/cfdm.core.AuxiliaryCoordinate.get_geometry.rst","method/cfdm.core.AuxiliaryCoordinate.get_interior_ring.rst","method/cfdm.core.AuxiliaryCoordinate.get_property.rst","method/cfdm.core.AuxiliaryCoordinate.has_bounds.rst","method/cfdm.core.AuxiliaryCoordinate.has_data.rst","method/cfdm.core.AuxiliaryCoordinate.has_geometry.rst","method/cfdm.core.AuxiliaryCoordinate.has_interior_ring.rst","method/cfdm.core.AuxiliaryCoordinate.has_property.rst","method/cfdm.core.AuxiliaryCoordinate.is_climatology.rst","method/cfdm.core.AuxiliaryCoordinate.properties.rst","method/cfdm.core.AuxiliaryCoordinate.set_bounds.rst","method/cfdm.core.AuxiliaryCoordinate.set_climatology.rst","method/cfdm.core.AuxiliaryCoordinate.set_data.rst","method/cfdm.core.AuxiliaryCoordinate.set_geometry.rst","method/cfdm.core.AuxiliaryCoordinate.set_interior_ring.rst","method/cfdm.core.AuxiliaryCoordinate.set_properties.rst","method/cfdm.core.AuxiliaryCoordinate.set_property.rst","method/cfdm.core.Bounds.__deepcopy__.rst","method/cfdm.core.Bounds.clear_properties.rst","method/cfdm.core.Bounds.copy.rst","method/cfdm.core.Bounds.del_data.rst","method/cfdm.core.Bounds.del_property.rst","method/cfdm.core.Bounds.get_data.rst","method/cfdm.core.Bounds.get_property.rst","method/cfdm.core.Bounds.has_bounds.rst","method/cfdm.core.Bounds.has_data.rst","method/cfdm.core.Bounds.has_property.rst","method/cfdm.core.Bounds.properties.rst","method/cfdm.core.Bounds.set_data.rst","method/cfdm.core.Bounds.set_properties.rst","method/cfdm.core.Bounds.set_property.rst","method/cfdm.core.CellMeasure.__deepcopy__.rst","method/cfdm.core.CellMeasure._docstring_method_exclusions.rst","method/cfdm.core.CellMeasure._docstring_package_depth.rst","method/cfdm.core.CellMeasure._docstring_special_substitutions.rst","method/cfdm.core.CellMeasure._docstring_substitutions.rst","method/cfdm.core.CellMeasure.clear_properties.rst","method/cfdm.core.CellMeasure.copy.rst","method/cfdm.core.CellMeasure.del_data.rst","method/cfdm.core.CellMeasure.del_measure.rst","method/cfdm.core.CellMeasure.del_property.rst","method/cfdm.core.CellMeasure.get_data.rst","method/cfdm.core.CellMeasure.get_measure.rst","method/cfdm.core.CellMeasure.get_property.rst","method/cfdm.core.CellMeasure.has_bounds.rst","method/cfdm.core.CellMeasure.has_data.rst","method/cfdm.core.CellMeasure.has_measure.rst","method/cfdm.core.CellMeasure.has_property.rst","method/cfdm.core.CellMeasure.properties.rst","method/cfdm.core.CellMeasure.set_data.rst","method/cfdm.core.CellMeasure.set_measure.rst","method/cfdm.core.CellMeasure.set_properties.rst","method/cfdm.core.CellMeasure.set_property.rst","method/cfdm.core.CellMethod.__deepcopy__.rst","method/cfdm.core.CellMethod._docstring_method_exclusions.rst","method/cfdm.core.CellMethod._docstring_package_depth.rst","method/cfdm.core.CellMethod._docstring_special_substitutions.rst","method/cfdm.core.CellMethod._docstring_substitutions.rst","method/cfdm.core.CellMethod.copy.rst","method/cfdm.core.CellMethod.del_axes.rst","method/cfdm.core.CellMethod.del_method.rst","method/cfdm.core.CellMethod.del_qualifier.rst","method/cfdm.core.CellMethod.get_axes.rst","method/cfdm.core.CellMethod.get_method.rst","method/cfdm.core.CellMethod.get_qualifier.rst","method/cfdm.core.CellMethod.has_axes.rst","method/cfdm.core.CellMethod.has_method.rst","method/cfdm.core.CellMethod.has_qualifier.rst","method/cfdm.core.CellMethod.qualifiers.rst","method/cfdm.core.CellMethod.set_axes.rst","method/cfdm.core.CellMethod.set_method.rst","method/cfdm.core.CellMethod.set_qualifier.rst","method/cfdm.core.Constructs.__call__.rst","method/cfdm.core.Constructs.__contains__.rst","method/cfdm.core.Constructs.__copy__.rst","method/cfdm.core.Constructs.__deepcopy__.rst","method/cfdm.core.Constructs.__getitem__.rst","method/cfdm.core.Constructs.__iter__.rst","method/cfdm.core.Constructs.__len__.rst","method/cfdm.core.Constructs._docstring_method_exclusions.rst","method/cfdm.core.Constructs._docstring_package_depth.rst","method/cfdm.core.Constructs._docstring_special_substitutions.rst","method/cfdm.core.Constructs._docstring_substitutions.rst","method/cfdm.core.Constructs.construct_type.rst","method/cfdm.core.Constructs.construct_types.rst","method/cfdm.core.Constructs.copy.rst","method/cfdm.core.Constructs.data_axes.rst","method/cfdm.core.Constructs.filter_by_type.rst","method/cfdm.core.Constructs.get.rst","method/cfdm.core.Constructs.get_data_axes.rst","method/cfdm.core.Constructs.items.rst","method/cfdm.core.Constructs.key.rst","method/cfdm.core.Constructs.keys.rst","method/cfdm.core.Constructs.new_identifier.rst","method/cfdm.core.Constructs.ordered.rst","method/cfdm.core.Constructs.replace.rst","method/cfdm.core.Constructs.shallow_copy.rst","method/cfdm.core.Constructs.todict.rst","method/cfdm.core.Constructs.value.rst","method/cfdm.core.Constructs.values.rst","method/cfdm.core.Container.__deepcopy__.rst","method/cfdm.core.Container._del_component.rst","method/cfdm.core.Container._docstring_method_exclusions.rst","method/cfdm.core.Container._docstring_package_depth.rst","method/cfdm.core.Container._docstring_special_substitutions.rst","method/cfdm.core.Container._docstring_substitutions.rst","method/cfdm.core.Container._get_component.rst","method/cfdm.core.Container._has_component.rst","method/cfdm.core.Container._set_component.rst","method/cfdm.core.Container.copy.rst","method/cfdm.core.Coordinate.__deepcopy__.rst","method/cfdm.core.Coordinate._docstring_method_exclusions.rst","method/cfdm.core.Coordinate._docstring_package_depth.rst","method/cfdm.core.Coordinate._docstring_special_substitutions.rst","method/cfdm.core.Coordinate._docstring_substitutions.rst","method/cfdm.core.Coordinate.clear_properties.rst","method/cfdm.core.Coordinate.copy.rst","method/cfdm.core.Coordinate.del_bounds.rst","method/cfdm.core.Coordinate.del_climatology.rst","method/cfdm.core.Coordinate.del_data.rst","method/cfdm.core.Coordinate.del_geometry.rst","method/cfdm.core.Coordinate.del_interior_ring.rst","method/cfdm.core.Coordinate.del_property.rst","method/cfdm.core.Coordinate.get_bounds.rst","method/cfdm.core.Coordinate.get_climatology.rst","method/cfdm.core.Coordinate.get_data.rst","method/cfdm.core.Coordinate.get_geometry.rst","method/cfdm.core.Coordinate.get_interior_ring.rst","method/cfdm.core.Coordinate.get_property.rst","method/cfdm.core.Coordinate.has_bounds.rst","method/cfdm.core.Coordinate.has_data.rst","method/cfdm.core.Coordinate.has_geometry.rst","method/cfdm.core.Coordinate.has_interior_ring.rst","method/cfdm.core.Coordinate.has_property.rst","method/cfdm.core.Coordinate.is_climatology.rst","method/cfdm.core.Coordinate.properties.rst","method/cfdm.core.Coordinate.set_bounds.rst","method/cfdm.core.Coordinate.set_climatology.rst","method/cfdm.core.Coordinate.set_data.rst","method/cfdm.core.Coordinate.set_geometry.rst","method/cfdm.core.Coordinate.set_interior_ring.rst","method/cfdm.core.Coordinate.set_properties.rst","method/cfdm.core.Coordinate.set_property.rst","method/cfdm.core.CoordinateConversion.__deepcopy__.rst","method/cfdm.core.CoordinateConversion._docstring_method_exclusions.rst","method/cfdm.core.CoordinateConversion._docstring_package_depth.rst","method/cfdm.core.CoordinateConversion._docstring_special_substitutions.rst","method/cfdm.core.CoordinateConversion._docstring_substitutions.rst","method/cfdm.core.CoordinateConversion.clear_domain_ancillaries.rst","method/cfdm.core.CoordinateConversion.clear_parameters.rst","method/cfdm.core.CoordinateConversion.copy.rst","method/cfdm.core.CoordinateConversion.del_domain_ancillary.rst","method/cfdm.core.CoordinateConversion.del_parameter.rst","method/cfdm.core.CoordinateConversion.domain_ancillaries.rst","method/cfdm.core.CoordinateConversion.get_domain_ancillary.rst","method/cfdm.core.CoordinateConversion.get_parameter.rst","method/cfdm.core.CoordinateConversion.has_domain_ancillary.rst","method/cfdm.core.CoordinateConversion.has_parameter.rst","method/cfdm.core.CoordinateConversion.parameters.rst","method/cfdm.core.CoordinateConversion.set_domain_ancillaries.rst","method/cfdm.core.CoordinateConversion.set_domain_ancillary.rst","method/cfdm.core.CoordinateConversion.set_parameter.rst","method/cfdm.core.CoordinateConversion.set_parameters.rst","method/cfdm.core.CoordinateReference.__deepcopy__.rst","method/cfdm.core.CoordinateReference._docstring_method_exclusions.rst","method/cfdm.core.CoordinateReference._docstring_package_depth.rst","method/cfdm.core.CoordinateReference._docstring_special_substitutions.rst","method/cfdm.core.CoordinateReference._docstring_substitutions.rst","method/cfdm.core.CoordinateReference.clear_coordinates.rst","method/cfdm.core.CoordinateReference.coordinates.rst","method/cfdm.core.CoordinateReference.copy.rst","method/cfdm.core.CoordinateReference.del_coordinate.rst","method/cfdm.core.CoordinateReference.del_coordinate_conversion.rst","method/cfdm.core.CoordinateReference.del_datum.rst","method/cfdm.core.CoordinateReference.get_coordinate_conversion.rst","method/cfdm.core.CoordinateReference.get_datum.rst","method/cfdm.core.CoordinateReference.has_coordinate.rst","method/cfdm.core.CoordinateReference.set_coordinate.rst","method/cfdm.core.CoordinateReference.set_coordinate_conversion.rst","method/cfdm.core.CoordinateReference.set_coordinates.rst","method/cfdm.core.CoordinateReference.set_datum.rst","method/cfdm.core.Data.__deepcopy__.rst","method/cfdm.core.Data.__repr__.rst","method/cfdm.core.Data.__str__.rst","method/cfdm.core.Data._docstring_method_exclusions.rst","method/cfdm.core.Data._docstring_package_depth.rst","method/cfdm.core.Data._docstring_special_substitutions.rst","method/cfdm.core.Data._docstring_substitutions.rst","method/cfdm.core.Data.copy.rst","method/cfdm.core.Data.del_calendar.rst","method/cfdm.core.Data.del_fill_value.rst","method/cfdm.core.Data.del_units.rst","method/cfdm.core.Data.get_calendar.rst","method/cfdm.core.Data.get_fill_value.rst","method/cfdm.core.Data.get_units.rst","method/cfdm.core.Data.has_calendar.rst","method/cfdm.core.Data.has_fill_value.rst","method/cfdm.core.Data.has_units.rst","method/cfdm.core.Data.set_calendar.rst","method/cfdm.core.Data.set_fill_value.rst","method/cfdm.core.Data.set_units.rst","method/cfdm.core.Data.source.rst","method/cfdm.core.Datum.__deepcopy__.rst","method/cfdm.core.Datum._docstring_method_exclusions.rst","method/cfdm.core.Datum._docstring_package_depth.rst","method/cfdm.core.Datum._docstring_special_substitutions.rst","method/cfdm.core.Datum._docstring_substitutions.rst","method/cfdm.core.Datum.clear_parameters.rst","method/cfdm.core.Datum.copy.rst","method/cfdm.core.Datum.del_parameter.rst","method/cfdm.core.Datum.get_parameter.rst","method/cfdm.core.Datum.has_parameter.rst","method/cfdm.core.Datum.parameters.rst","method/cfdm.core.Datum.set_parameter.rst","method/cfdm.core.Datum.set_parameters.rst","method/cfdm.core.DimensionCoordinate.__deepcopy__.rst","method/cfdm.core.DimensionCoordinate._docstring_method_exclusions.rst","method/cfdm.core.DimensionCoordinate._docstring_package_depth.rst","method/cfdm.core.DimensionCoordinate._docstring_special_substitutions.rst","method/cfdm.core.DimensionCoordinate._docstring_substitutions.rst","method/cfdm.core.DimensionCoordinate.clear_properties.rst","method/cfdm.core.DimensionCoordinate.copy.rst","method/cfdm.core.DimensionCoordinate.del_bounds.rst","method/cfdm.core.DimensionCoordinate.del_climatology.rst","method/cfdm.core.DimensionCoordinate.del_data.rst","method/cfdm.core.DimensionCoordinate.del_geometry.rst","method/cfdm.core.DimensionCoordinate.del_interior_ring.rst","method/cfdm.core.DimensionCoordinate.del_property.rst","method/cfdm.core.DimensionCoordinate.get_bounds.rst","method/cfdm.core.DimensionCoordinate.get_climatology.rst","method/cfdm.core.DimensionCoordinate.get_data.rst","method/cfdm.core.DimensionCoordinate.get_geometry.rst","method/cfdm.core.DimensionCoordinate.get_interior_ring.rst","method/cfdm.core.DimensionCoordinate.get_property.rst","method/cfdm.core.DimensionCoordinate.has_bounds.rst","method/cfdm.core.DimensionCoordinate.has_data.rst","method/cfdm.core.DimensionCoordinate.has_geometry.rst","method/cfdm.core.DimensionCoordinate.has_interior_ring.rst","method/cfdm.core.DimensionCoordinate.has_property.rst","method/cfdm.core.DimensionCoordinate.is_climatology.rst","method/cfdm.core.DimensionCoordinate.properties.rst","method/cfdm.core.DimensionCoordinate.set_bounds.rst","method/cfdm.core.DimensionCoordinate.set_climatology.rst","method/cfdm.core.DimensionCoordinate.set_data.rst","method/cfdm.core.DimensionCoordinate.set_geometry.rst","method/cfdm.core.DimensionCoordinate.set_interior_ring.rst","method/cfdm.core.DimensionCoordinate.set_properties.rst","method/cfdm.core.DimensionCoordinate.set_property.rst","method/cfdm.core.DocstringRewriteMeta._docstring_method_exclusions.rst","method/cfdm.core.DocstringRewriteMeta._docstring_package_depth.rst","method/cfdm.core.DocstringRewriteMeta._docstring_special_substitutions.rst","method/cfdm.core.DocstringRewriteMeta._docstring_substitutions.rst","method/cfdm.core.DocstringRewriteMeta.mro.rst","method/cfdm.core.Domain.__deepcopy__.rst","method/cfdm.core.Domain._docstring_method_exclusions.rst","method/cfdm.core.Domain._docstring_package_depth.rst","method/cfdm.core.Domain._docstring_special_substitutions.rst","method/cfdm.core.Domain._docstring_substitutions.rst","method/cfdm.core.Domain.clear_properties.rst","method/cfdm.core.Domain.copy.rst","method/cfdm.core.Domain.del_construct.rst","method/cfdm.core.Domain.del_data_axes.rst","method/cfdm.core.Domain.del_property.rst","method/cfdm.core.Domain.fromconstructs.rst","method/cfdm.core.Domain.get_construct.rst","method/cfdm.core.Domain.get_data_axes.rst","method/cfdm.core.Domain.get_property.rst","method/cfdm.core.Domain.has_bounds.rst","method/cfdm.core.Domain.has_construct.rst","method/cfdm.core.Domain.has_data.rst","method/cfdm.core.Domain.has_data_axes.rst","method/cfdm.core.Domain.has_property.rst","method/cfdm.core.Domain.properties.rst","method/cfdm.core.Domain.set_construct.rst","method/cfdm.core.Domain.set_data_axes.rst","method/cfdm.core.Domain.set_properties.rst","method/cfdm.core.Domain.set_property.rst","method/cfdm.core.DomainAncillary.__deepcopy__.rst","method/cfdm.core.DomainAncillary._docstring_method_exclusions.rst","method/cfdm.core.DomainAncillary._docstring_package_depth.rst","method/cfdm.core.DomainAncillary._docstring_special_substitutions.rst","method/cfdm.core.DomainAncillary._docstring_substitutions.rst","method/cfdm.core.DomainAncillary.clear_properties.rst","method/cfdm.core.DomainAncillary.copy.rst","method/cfdm.core.DomainAncillary.del_bounds.rst","method/cfdm.core.DomainAncillary.del_data.rst","method/cfdm.core.DomainAncillary.del_geometry.rst","method/cfdm.core.DomainAncillary.del_interior_ring.rst","method/cfdm.core.DomainAncillary.del_property.rst","method/cfdm.core.DomainAncillary.get_bounds.rst","method/cfdm.core.DomainAncillary.get_data.rst","method/cfdm.core.DomainAncillary.get_geometry.rst","method/cfdm.core.DomainAncillary.get_interior_ring.rst","method/cfdm.core.DomainAncillary.get_property.rst","method/cfdm.core.DomainAncillary.has_bounds.rst","method/cfdm.core.DomainAncillary.has_data.rst","method/cfdm.core.DomainAncillary.has_geometry.rst","method/cfdm.core.DomainAncillary.has_interior_ring.rst","method/cfdm.core.DomainAncillary.has_property.rst","method/cfdm.core.DomainAncillary.properties.rst","method/cfdm.core.DomainAncillary.set_bounds.rst","method/cfdm.core.DomainAncillary.set_data.rst","method/cfdm.core.DomainAncillary.set_geometry.rst","method/cfdm.core.DomainAncillary.set_interior_ring.rst","method/cfdm.core.DomainAncillary.set_properties.rst","method/cfdm.core.DomainAncillary.set_property.rst","method/cfdm.core.DomainAxis.__deepcopy__.rst","method/cfdm.core.DomainAxis._docstring_method_exclusions.rst","method/cfdm.core.DomainAxis._docstring_package_depth.rst","method/cfdm.core.DomainAxis._docstring_special_substitutions.rst","method/cfdm.core.DomainAxis._docstring_substitutions.rst","method/cfdm.core.DomainAxis.copy.rst","method/cfdm.core.DomainAxis.del_size.rst","method/cfdm.core.DomainAxis.get_size.rst","method/cfdm.core.DomainAxis.has_size.rst","method/cfdm.core.DomainAxis.set_size.rst","method/cfdm.core.Field.__deepcopy__.rst","method/cfdm.core.Field._docstring_method_exclusions.rst","method/cfdm.core.Field._docstring_package_depth.rst","method/cfdm.core.Field._docstring_special_substitutions.rst","method/cfdm.core.Field._docstring_substitutions.rst","method/cfdm.core.Field.clear_properties.rst","method/cfdm.core.Field.copy.rst","method/cfdm.core.Field.del_construct.rst","method/cfdm.core.Field.del_data.rst","method/cfdm.core.Field.del_data_axes.rst","method/cfdm.core.Field.del_property.rst","method/cfdm.core.Field.get_construct.rst","method/cfdm.core.Field.get_data.rst","method/cfdm.core.Field.get_data_axes.rst","method/cfdm.core.Field.get_domain.rst","method/cfdm.core.Field.get_property.rst","method/cfdm.core.Field.has_bounds.rst","method/cfdm.core.Field.has_construct.rst","method/cfdm.core.Field.has_data.rst","method/cfdm.core.Field.has_data_axes.rst","method/cfdm.core.Field.has_property.rst","method/cfdm.core.Field.properties.rst","method/cfdm.core.Field.set_construct.rst","method/cfdm.core.Field.set_data.rst","method/cfdm.core.Field.set_data_axes.rst","method/cfdm.core.Field.set_properties.rst","method/cfdm.core.Field.set_property.rst","method/cfdm.core.FieldAncillary.__deepcopy__.rst","method/cfdm.core.FieldAncillary._docstring_method_exclusions.rst","method/cfdm.core.FieldAncillary._docstring_package_depth.rst","method/cfdm.core.FieldAncillary._docstring_special_substitutions.rst","method/cfdm.core.FieldAncillary._docstring_substitutions.rst","method/cfdm.core.FieldAncillary.clear_properties.rst","method/cfdm.core.FieldAncillary.copy.rst","method/cfdm.core.FieldAncillary.del_data.rst","method/cfdm.core.FieldAncillary.del_property.rst","method/cfdm.core.FieldAncillary.get_data.rst","method/cfdm.core.FieldAncillary.get_property.rst","method/cfdm.core.FieldAncillary.has_bounds.rst","method/cfdm.core.FieldAncillary.has_data.rst","method/cfdm.core.FieldAncillary.has_property.rst","method/cfdm.core.FieldAncillary.properties.rst","method/cfdm.core.FieldAncillary.set_data.rst","method/cfdm.core.FieldAncillary.set_properties.rst","method/cfdm.core.FieldAncillary.set_property.rst","method/cfdm.core.InteriorRing.__deepcopy__.rst","method/cfdm.core.InteriorRing._docstring_method_exclusions.rst","method/cfdm.core.InteriorRing._docstring_package_depth.rst","method/cfdm.core.InteriorRing._docstring_special_substitutions.rst","method/cfdm.core.InteriorRing._docstring_substitutions.rst","method/cfdm.core.InteriorRing.clear_properties.rst","method/cfdm.core.InteriorRing.copy.rst","method/cfdm.core.InteriorRing.del_data.rst","method/cfdm.core.InteriorRing.del_property.rst","method/cfdm.core.InteriorRing.get_data.rst","method/cfdm.core.InteriorRing.get_property.rst","method/cfdm.core.InteriorRing.has_bounds.rst","method/cfdm.core.InteriorRing.has_data.rst","method/cfdm.core.InteriorRing.has_property.rst","method/cfdm.core.InteriorRing.properties.rst","method/cfdm.core.InteriorRing.set_data.rst","method/cfdm.core.InteriorRing.set_properties.rst","method/cfdm.core.InteriorRing.set_property.rst","method/cfdm.core.NumpyArray._docstring_method_exclusions.rst","method/cfdm.core.NumpyArray._docstring_package_depth.rst","method/cfdm.core.NumpyArray._docstring_special_substitutions.rst","method/cfdm.core.NumpyArray._docstring_substitutions.rst","method/cfdm.core.NumpyArray.copy.rst","method/cfdm.core.Parameters.__deepcopy__.rst","method/cfdm.core.Parameters._docstring_method_exclusions.rst","method/cfdm.core.Parameters._docstring_package_depth.rst","method/cfdm.core.Parameters._docstring_special_substitutions.rst","method/cfdm.core.Parameters._docstring_substitutions.rst","method/cfdm.core.Parameters.clear_parameters.rst","method/cfdm.core.Parameters.copy.rst","method/cfdm.core.Parameters.del_parameter.rst","method/cfdm.core.Parameters.get_parameter.rst","method/cfdm.core.Parameters.has_parameter.rst","method/cfdm.core.Parameters.parameters.rst","method/cfdm.core.Parameters.set_parameter.rst","method/cfdm.core.Parameters.set_parameters.rst","method/cfdm.core.ParametersDomainAncillaries.__deepcopy__.rst","method/cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries.rst","method/cfdm.core.ParametersDomainAncillaries.clear_parameters.rst","method/cfdm.core.ParametersDomainAncillaries.copy.rst","method/cfdm.core.ParametersDomainAncillaries.del_domain_ancillary.rst","method/cfdm.core.ParametersDomainAncillaries.del_parameter.rst","method/cfdm.core.ParametersDomainAncillaries.domain_ancillaries.rst","method/cfdm.core.ParametersDomainAncillaries.get_domain_ancillary.rst","method/cfdm.core.ParametersDomainAncillaries.get_parameter.rst","method/cfdm.core.ParametersDomainAncillaries.has_domain_ancillary.rst","method/cfdm.core.ParametersDomainAncillaries.has_parameter.rst","method/cfdm.core.ParametersDomainAncillaries.parameters.rst","method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries.rst","method/cfdm.core.ParametersDomainAncillaries.set_domain_ancillary.rst","method/cfdm.core.ParametersDomainAncillaries.set_parameter.rst","method/cfdm.core.ParametersDomainAncillaries.set_parameters.rst","method/cfdm.core.Properties.__deepcopy__.rst","method/cfdm.core.Properties._docstring_method_exclusions.rst","method/cfdm.core.Properties._docstring_package_depth.rst","method/cfdm.core.Properties._docstring_special_substitutions.rst","method/cfdm.core.Properties._docstring_substitutions.rst","method/cfdm.core.Properties.clear_properties.rst","method/cfdm.core.Properties.copy.rst","method/cfdm.core.Properties.del_property.rst","method/cfdm.core.Properties.get_property.rst","method/cfdm.core.Properties.has_bounds.rst","method/cfdm.core.Properties.has_data.rst","method/cfdm.core.Properties.has_property.rst","method/cfdm.core.Properties.properties.rst","method/cfdm.core.Properties.set_properties.rst","method/cfdm.core.Properties.set_property.rst","method/cfdm.core.PropertiesData.__deepcopy__.rst","method/cfdm.core.PropertiesData._docstring_method_exclusions.rst","method/cfdm.core.PropertiesData._docstring_package_depth.rst","method/cfdm.core.PropertiesData._docstring_special_substitutions.rst","method/cfdm.core.PropertiesData._docstring_substitutions.rst","method/cfdm.core.PropertiesData.clear_properties.rst","method/cfdm.core.PropertiesData.copy.rst","method/cfdm.core.PropertiesData.del_data.rst","method/cfdm.core.PropertiesData.del_property.rst","method/cfdm.core.PropertiesData.get_data.rst","method/cfdm.core.PropertiesData.get_property.rst","method/cfdm.core.PropertiesData.has_bounds.rst","method/cfdm.core.PropertiesData.has_data.rst","method/cfdm.core.PropertiesData.has_property.rst","method/cfdm.core.PropertiesData.properties.rst","method/cfdm.core.PropertiesData.set_data.rst","method/cfdm.core.PropertiesData.set_properties.rst","method/cfdm.core.PropertiesData.set_property.rst","method/cfdm.core.PropertiesDataBounds.__deepcopy__.rst","method/cfdm.core.PropertiesDataBounds._docstring_method_exclusions.rst","method/cfdm.core.PropertiesDataBounds._docstring_package_depth.rst","method/cfdm.core.PropertiesDataBounds._docstring_special_substitutions.rst","method/cfdm.core.PropertiesDataBounds._docstring_substitutions.rst","method/cfdm.core.PropertiesDataBounds.clear_properties.rst","method/cfdm.core.PropertiesDataBounds.copy.rst","method/cfdm.core.PropertiesDataBounds.del_bounds.rst","method/cfdm.core.PropertiesDataBounds.del_data.rst","method/cfdm.core.PropertiesDataBounds.del_geometry.rst","method/cfdm.core.PropertiesDataBounds.del_interior_ring.rst","method/cfdm.core.PropertiesDataBounds.del_property.rst","method/cfdm.core.PropertiesDataBounds.get_bounds.rst","method/cfdm.core.PropertiesDataBounds.get_data.rst","method/cfdm.core.PropertiesDataBounds.get_geometry.rst","method/cfdm.core.PropertiesDataBounds.get_interior_ring.rst","method/cfdm.core.PropertiesDataBounds.get_property.rst","method/cfdm.core.PropertiesDataBounds.has_bounds.rst","method/cfdm.core.PropertiesDataBounds.has_data.rst","method/cfdm.core.PropertiesDataBounds.has_geometry.rst","method/cfdm.core.PropertiesDataBounds.has_interior_ring.rst","method/cfdm.core.PropertiesDataBounds.has_property.rst","method/cfdm.core.PropertiesDataBounds.properties.rst","method/cfdm.core.PropertiesDataBounds.set_bounds.rst","method/cfdm.core.PropertiesDataBounds.set_data.rst","method/cfdm.core.PropertiesDataBounds.set_geometry.rst","method/cfdm.core.PropertiesDataBounds.set_interior_ring.rst","method/cfdm.core.PropertiesDataBounds.set_properties.rst","method/cfdm.core.PropertiesDataBounds.set_property.rst","method/cfdm.core.abstract.Container.__deepcopy__.rst","method/cfdm.core.abstract.Container._del_component.rst","method/cfdm.core.abstract.Container._get_component.rst","method/cfdm.core.abstract.Container._has_component.rst","method/cfdm.core.abstract.Container._set_component.rst","method/cfdm.core.abstract.Container.copy.rst","method/cfdm.core.abstract.Coordinate.__deepcopy__.rst","method/cfdm.core.abstract.Coordinate.clear_properties.rst","method/cfdm.core.abstract.Coordinate.copy.rst","method/cfdm.core.abstract.Coordinate.del_bounds.rst","method/cfdm.core.abstract.Coordinate.del_data.rst","method/cfdm.core.abstract.Coordinate.del_property.rst","method/cfdm.core.abstract.Coordinate.get_bounds.rst","method/cfdm.core.abstract.Coordinate.get_data.rst","method/cfdm.core.abstract.Coordinate.get_property.rst","method/cfdm.core.abstract.Coordinate.has_bounds.rst","method/cfdm.core.abstract.Coordinate.has_data.rst","method/cfdm.core.abstract.Coordinate.has_property.rst","method/cfdm.core.abstract.Coordinate.properties.rst","method/cfdm.core.abstract.Coordinate.set_bounds.rst","method/cfdm.core.abstract.Coordinate.set_data.rst","method/cfdm.core.abstract.Coordinate.set_properties.rst","method/cfdm.core.abstract.Coordinate.set_property.rst","method/cfdm.core.abstract.Parameters.__deepcopy__.rst","method/cfdm.core.abstract.Parameters.clear_parameters.rst","method/cfdm.core.abstract.Parameters.copy.rst","method/cfdm.core.abstract.Parameters.del_parameter.rst","method/cfdm.core.abstract.Parameters.get_parameter.rst","method/cfdm.core.abstract.Parameters.parameters.rst","method/cfdm.core.abstract.Parameters.set_parameter.rst","method/cfdm.core.abstract.Parameters.set_parameters.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.copy.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.del_parameter.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.get_parameter.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.parameters.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameter.rst","method/cfdm.core.abstract.ParametersDomainAncillaries.set_parameters.rst","method/cfdm.core.abstract.Properties.__deepcopy__.rst","method/cfdm.core.abstract.Properties.clear_properties.rst","method/cfdm.core.abstract.Properties.copy.rst","method/cfdm.core.abstract.Properties.del_property.rst","method/cfdm.core.abstract.Properties.get_property.rst","method/cfdm.core.abstract.Properties.has_property.rst","method/cfdm.core.abstract.Properties.properties.rst","method/cfdm.core.abstract.Properties.set_properties.rst","method/cfdm.core.abstract.Properties.set_property.rst","method/cfdm.core.abstract.PropertiesData.__deepcopy__.rst","method/cfdm.core.abstract.PropertiesData.clear_properties.rst","method/cfdm.core.abstract.PropertiesData.copy.rst","method/cfdm.core.abstract.PropertiesData.del_data.rst","method/cfdm.core.abstract.PropertiesData.del_property.rst","method/cfdm.core.abstract.PropertiesData.get_data.rst","method/cfdm.core.abstract.PropertiesData.get_property.rst","method/cfdm.core.abstract.PropertiesData.has_data.rst","method/cfdm.core.abstract.PropertiesData.has_property.rst","method/cfdm.core.abstract.PropertiesData.properties.rst","method/cfdm.core.abstract.PropertiesData.set_data.rst","method/cfdm.core.abstract.PropertiesData.set_properties.rst","method/cfdm.core.abstract.PropertiesData.set_property.rst","method/cfdm.core.abstract.PropertiesDataBounds.__deepcopy__.rst","method/cfdm.core.abstract.PropertiesDataBounds.clear_properties.rst","method/cfdm.core.abstract.PropertiesDataBounds.copy.rst","method/cfdm.core.abstract.PropertiesDataBounds.del_bounds.rst","method/cfdm.core.abstract.PropertiesDataBounds.del_data.rst","method/cfdm.core.abstract.PropertiesDataBounds.del_property.rst","method/cfdm.core.abstract.PropertiesDataBounds.get_bounds.rst","method/cfdm.core.abstract.PropertiesDataBounds.get_data.rst","method/cfdm.core.abstract.PropertiesDataBounds.get_property.rst","method/cfdm.core.abstract.PropertiesDataBounds.has_bounds.rst","method/cfdm.core.abstract.PropertiesDataBounds.has_data.rst","method/cfdm.core.abstract.PropertiesDataBounds.has_property.rst","method/cfdm.core.abstract.PropertiesDataBounds.properties.rst","method/cfdm.core.abstract.PropertiesDataBounds.set_bounds.rst","method/cfdm.core.abstract.PropertiesDataBounds.set_data.rst","method/cfdm.core.abstract.PropertiesDataBounds.set_properties.rst","method/cfdm.core.abstract.PropertiesDataBounds.set_property.rst","performance.rst","philosophy.rst","releases.rst","sample_datasets.rst","support.rst","tutorial.rst"],objects:{"cfdm.Array":{__array__:[290,2,1,""],__deepcopy__:[291,2,1,""],__getitem__:[292,2,1,""],__repr__:[293,2,1,""],__str__:[294,2,1,""],_docstring_method_exclusions:[295,2,1,""],_docstring_package_depth:[296,2,1,""],_docstring_special_substitutions:[297,2,1,""],_docstring_substitutions:[298,2,1,""],array:[2,3,1,""],copy:[299,2,1,""],dtype:[3,3,1,""],get_compression_type:[300,2,1,""],get_subspace:[301,2,1,""],ndim:[4,3,1,""],shape:[5,3,1,""],size:[6,3,1,""]},"cfdm.AuxiliaryCoordinate":{__deepcopy__:[302,2,1,""],__getitem__:[303,2,1,""],__repr__:[304,2,1,""],__str__:[305,2,1,""],_docstring_method_exclusions:[306,2,1,""],_docstring_package_depth:[307,2,1,""],_docstring_special_substitutions:[308,2,1,""],_docstring_substitutions:[309,2,1,""],apply_masking:[310,2,1,""],bounds:[7,3,1,""],clear_properties:[311,2,1,""],construct_type:[8,3,1,""],copy:[312,2,1,""],creation_commands:[313,2,1,""],data:[9,3,1,""],del_bounds:[314,2,1,""],del_climatology:[315,2,1,""],del_data:[316,2,1,""],del_geometry:[317,2,1,""],del_interior_ring:[318,2,1,""],del_node_count:[319,2,1,""],del_part_node_count:[320,2,1,""],del_property:[321,2,1,""],dtype:[10,3,1,""],dump:[322,2,1,""],equals:[323,2,1,""],get_bounds:[324,2,1,""],get_bounds_data:[325,2,1,""],get_climatology:[326,2,1,""],get_data:[327,2,1,""],get_filenames:[328,2,1,""],get_geometry:[329,2,1,""],get_interior_ring:[330,2,1,""],get_node_count:[331,2,1,""],get_part_node_count:[332,2,1,""],get_property:[333,2,1,""],has_bounds:[334,2,1,""],has_data:[335,2,1,""],has_geometry:[336,2,1,""],has_interior_ring:[337,2,1,""],has_node_count:[338,2,1,""],has_part_node_count:[339,2,1,""],has_property:[340,2,1,""],identities:[341,2,1,""],identity:[342,2,1,""],insert_dimension:[343,2,1,""],interior_ring:[11,3,1,""],is_climatology:[344,2,1,""],nc_clear_variable_groups:[345,2,1,""],nc_del_variable:[346,2,1,""],nc_get_variable:[347,2,1,""],nc_has_variable:[348,2,1,""],nc_set_variable:[349,2,1,""],nc_set_variable_groups:[350,2,1,""],nc_variable_groups:[351,2,1,""],ndim:[12,3,1,""],properties:[352,2,1,""],set_bounds:[353,2,1,""],set_climatology:[354,2,1,""],set_data:[355,2,1,""],set_geometry:[356,2,1,""],set_interior_ring:[357,2,1,""],set_node_count:[358,2,1,""],set_part_node_count:[359,2,1,""],set_properties:[360,2,1,""],set_property:[361,2,1,""],shape:[13,3,1,""],size:[14,3,1,""],squeeze:[362,2,1,""],transpose:[363,2,1,""],uncompress:[364,2,1,""]},"cfdm.Bounds":{__deepcopy__:[365,2,1,""],__getitem__:[366,2,1,""],__repr__:[367,2,1,""],__str__:[368,2,1,""],_docstring_method_exclusions:[369,2,1,""],_docstring_package_depth:[370,2,1,""],_docstring_special_substitutions:[371,2,1,""],_docstring_substitutions:[372,2,1,""],apply_masking:[373,2,1,""],clear_properties:[374,2,1,""],copy:[375,2,1,""],creation_commands:[376,2,1,""],data:[15,3,1,""],del_data:[377,2,1,""],del_property:[378,2,1,""],dtype:[16,3,1,""],dump:[379,2,1,""],equals:[380,2,1,""],get_data:[381,2,1,""],get_filenames:[382,2,1,""],get_property:[383,2,1,""],has_bounds:[384,2,1,""],has_data:[385,2,1,""],has_property:[386,2,1,""],identities:[387,2,1,""],identity:[388,2,1,""],inherited_properties:[389,2,1,""],insert_dimension:[390,2,1,""],nc_clear_dimension_groups:[391,2,1,""],nc_clear_variable_groups:[392,2,1,""],nc_del_dimension:[393,2,1,""],nc_del_variable:[394,2,1,""],nc_dimension_groups:[395,2,1,""],nc_get_dimension:[396,2,1,""],nc_get_variable:[397,2,1,""],nc_has_dimension:[398,2,1,""],nc_has_variable:[399,2,1,""],nc_set_dimension:[400,2,1,""],nc_set_dimension_groups:[401,2,1,""],nc_set_variable:[402,2,1,""],nc_set_variable_groups:[403,2,1,""],nc_variable_groups:[404,2,1,""],ndim:[17,3,1,""],properties:[405,2,1,""],set_data:[406,2,1,""],set_properties:[407,2,1,""],set_property:[408,2,1,""],shape:[18,3,1,""],size:[19,3,1,""],squeeze:[409,2,1,""],transpose:[410,2,1,""],uncompress:[411,2,1,""]},"cfdm.CellMeasure":{__deepcopy__:[412,2,1,""],__getitem__:[413,2,1,""],__repr__:[414,2,1,""],__str__:[415,2,1,""],_docstring_method_exclusions:[416,2,1,""],_docstring_package_depth:[417,2,1,""],_docstring_special_substitutions:[418,2,1,""],_docstring_substitutions:[419,2,1,""],apply_masking:[420,2,1,""],clear_properties:[421,2,1,""],construct_type:[20,3,1,""],copy:[422,2,1,""],creation_commands:[423,2,1,""],data:[21,3,1,""],del_data:[424,2,1,""],del_measure:[425,2,1,""],del_property:[426,2,1,""],dtype:[22,3,1,""],dump:[427,2,1,""],equals:[428,2,1,""],get_data:[429,2,1,""],get_filenames:[430,2,1,""],get_measure:[431,2,1,""],get_property:[432,2,1,""],has_bounds:[433,2,1,""],has_data:[434,2,1,""],has_measure:[435,2,1,""],has_property:[436,2,1,""],identities:[437,2,1,""],identity:[438,2,1,""],insert_dimension:[439,2,1,""],nc_clear_variable_groups:[440,2,1,""],nc_del_variable:[441,2,1,""],nc_get_external:[442,2,1,""],nc_get_variable:[443,2,1,""],nc_has_variable:[444,2,1,""],nc_set_external:[445,2,1,""],nc_set_variable:[446,2,1,""],nc_set_variable_groups:[447,2,1,""],nc_variable_groups:[448,2,1,""],ndim:[23,3,1,""],properties:[449,2,1,""],set_data:[450,2,1,""],set_measure:[451,2,1,""],set_properties:[452,2,1,""],set_property:[453,2,1,""],shape:[24,3,1,""],size:[25,3,1,""],squeeze:[454,2,1,""],transpose:[455,2,1,""],uncompress:[456,2,1,""]},"cfdm.CellMethod":{__deepcopy__:[457,2,1,""],__repr__:[458,2,1,""],__str__:[459,2,1,""],_docstring_method_exclusions:[460,2,1,""],_docstring_package_depth:[461,2,1,""],_docstring_special_substitutions:[462,2,1,""],_docstring_substitutions:[463,2,1,""],construct_type:[26,3,1,""],copy:[464,2,1,""],creation_commands:[465,2,1,""],del_axes:[466,2,1,""],del_method:[467,2,1,""],del_qualifier:[468,2,1,""],dump:[469,2,1,""],equals:[470,2,1,""],get_axes:[471,2,1,""],get_method:[472,2,1,""],get_qualifier:[473,2,1,""],has_axes:[474,2,1,""],has_method:[475,2,1,""],has_qualifier:[476,2,1,""],identities:[477,2,1,""],identity:[478,2,1,""],qualifiers:[479,2,1,""],set_axes:[480,2,1,""],set_method:[481,2,1,""],set_qualifier:[482,2,1,""],sorted:[483,2,1,""]},"cfdm.CompressedArray":{__array__:[484,2,1,""],__deepcopy__:[485,2,1,""],__getitem__:[486,2,1,""],__repr__:[487,2,1,""],__str__:[488,2,1,""],_docstring_method_exclusions:[489,2,1,""],_docstring_package_depth:[490,2,1,""],_docstring_special_substitutions:[491,2,1,""],_docstring_substitutions:[492,2,1,""],array:[27,3,1,""],compressed_array:[28,3,1,""],copy:[493,2,1,""],dtype:[29,3,1,""],get_compressed_axes:[494,2,1,""],get_compressed_dimension:[495,2,1,""],get_compression_type:[496,2,1,""],get_subspace:[497,2,1,""],ndim:[30,3,1,""],shape:[31,3,1,""],size:[32,3,1,""],source:[498,2,1,""],to_memory:[499,2,1,""]},"cfdm.Configuration":{__enter__:[500,2,1,""],__exit__:[501,2,1,""],__repr__:[502,2,1,""],clear:[503,2,1,""],copy:[504,2,1,""],fromkeys:[505,2,1,""],get:[506,2,1,""],items:[507,2,1,""],keys:[508,2,1,""],pop:[509,2,1,""],popitem:[510,2,1,""],setdefault:[511,2,1,""],update:[512,2,1,""],values:[513,2,1,""]},"cfdm.Constant":{__deepcopy__:[514,2,1,""],__enter__:[515,2,1,""],__exit__:[516,2,1,""],__repr__:[517,2,1,""],__str__:[518,2,1,""],_func:[33,3,1,""],copy:[519,2,1,""],value:[34,3,1,""]},"cfdm.Constructs":{__call__:[520,2,1,""],__contains__:[521,2,1,""],__copy__:[522,2,1,""],__deepcopy__:[523,2,1,""],__getitem__:[524,2,1,""],__iter__:[525,2,1,""],__len__:[526,2,1,""],__repr__:[527,2,1,""],__str__:[528,2,1,""],_docstring_method_exclusions:[529,2,1,""],_docstring_package_depth:[530,2,1,""],_docstring_special_substitutions:[531,2,1,""],_docstring_substitutions:[532,2,1,""],clear_filters_applied:[533,2,1,""],construct_type:[534,2,1,""],construct_types:[535,2,1,""],copy:[536,2,1,""],data_axes:[537,2,1,""],domain_axes:[538,2,1,""],domain_axis_identity:[539,2,1,""],equals:[540,2,1,""],filter:[541,2,1,""],filter_by_axis:[542,2,1,""],filter_by_data:[543,2,1,""],filter_by_identity:[544,2,1,""],filter_by_key:[545,2,1,""],filter_by_measure:[546,2,1,""],filter_by_method:[547,2,1,""],filter_by_naxes:[548,2,1,""],filter_by_ncdim:[549,2,1,""],filter_by_ncvar:[550,2,1,""],filter_by_property:[551,2,1,""],filter_by_size:[552,2,1,""],filter_by_type:[553,2,1,""],filters_applied:[554,2,1,""],get:[555,2,1,""],get_data_axes:[556,2,1,""],inverse_filter:[557,2,1,""],items:[558,2,1,""],key:[559,2,1,""],keys:[560,2,1,""],new_identifier:[561,2,1,""],ordered:[562,2,1,""],replace:[563,2,1,""],shallow_copy:[564,2,1,""],todict:[565,2,1,""],unfilter:[566,2,1,""],value:[567,2,1,""],values:[568,2,1,""]},"cfdm.CoordinateConversion":{__bool__:[569,2,1,""],__deepcopy__:[570,2,1,""],__repr__:[572,2,1,""],__str__:[573,2,1,""],_docstring_method_exclusions:[574,2,1,""],_docstring_package_depth:[575,2,1,""],_docstring_special_substitutions:[576,2,1,""],_docstring_substitutions:[577,2,1,""],clear_domain_ancillaries:[578,2,1,""],clear_parameters:[579,2,1,""],copy:[580,2,1,""],del_domain_ancillary:[581,2,1,""],del_parameter:[582,2,1,""],domain_ancillaries:[583,2,1,""],equals:[584,2,1,""],get_domain_ancillary:[585,2,1,""],get_parameter:[586,2,1,""],has_domain_ancillary:[587,2,1,""],has_parameter:[588,2,1,""],parameters:[589,2,1,""],set_domain_ancillaries:[590,2,1,""],set_domain_ancillary:[591,2,1,""],set_parameter:[592,2,1,""],set_parameters:[593,2,1,""]},"cfdm.CoordinateReference":{__deepcopy__:[594,2,1,""],__repr__:[595,2,1,""],__str__:[596,2,1,""],_docstring_method_exclusions:[597,2,1,""],_docstring_package_depth:[598,2,1,""],_docstring_special_substitutions:[599,2,1,""],_docstring_substitutions:[600,2,1,""],clear_coordinates:[601,2,1,""],construct_type:[35,3,1,""],coordinate_conversion:[36,3,1,""],coordinates:[602,2,1,""],copy:[603,2,1,""],creation_commands:[604,2,1,""],datum:[37,3,1,""],del_coordinate:[605,2,1,""],del_coordinate_conversion:[606,2,1,""],del_datum:[607,2,1,""],dump:[608,2,1,""],equals:[609,2,1,""],get_coordinate_conversion:[610,2,1,""],get_datum:[611,2,1,""],has_coordinate:[612,2,1,""],identities:[613,2,1,""],identity:[614,2,1,""],nc_clear_variable_groups:[615,2,1,""],nc_del_variable:[616,2,1,""],nc_get_variable:[617,2,1,""],nc_has_variable:[618,2,1,""],nc_set_variable:[619,2,1,""],nc_set_variable_groups:[620,2,1,""],nc_variable_groups:[621,2,1,""],set_coordinate:[622,2,1,""],set_coordinate_conversion:[623,2,1,""],set_coordinates:[624,2,1,""],set_datum:[625,2,1,""]},"cfdm.Count":{__deepcopy__:[626,2,1,""],__getitem__:[627,2,1,""],__repr__:[628,2,1,""],__str__:[629,2,1,""],_docstring_method_exclusions:[630,2,1,""],_docstring_package_depth:[631,2,1,""],_docstring_special_substitutions:[632,2,1,""],_docstring_substitutions:[633,2,1,""],apply_masking:[634,2,1,""],clear_properties:[635,2,1,""],copy:[636,2,1,""],creation_commands:[637,2,1,""],data:[38,3,1,""],del_data:[638,2,1,""],del_property:[639,2,1,""],dtype:[39,3,1,""],dump:[640,2,1,""],equals:[641,2,1,""],get_data:[642,2,1,""],get_filenames:[643,2,1,""],get_property:[644,2,1,""],has_bounds:[645,2,1,""],has_data:[646,2,1,""],has_property:[647,2,1,""],identities:[648,2,1,""],identity:[649,2,1,""],insert_dimension:[650,2,1,""],nc_clear_dimension_groups:[651,2,1,""],nc_clear_sample_dimension_groups:[652,2,1,""],nc_clear_variable_groups:[653,2,1,""],nc_del_dimension:[654,2,1,""],nc_del_sample_dimension:[655,2,1,""],nc_del_variable:[656,2,1,""],nc_dimension_groups:[657,2,1,""],nc_get_dimension:[658,2,1,""],nc_get_sample_dimension:[659,2,1,""],nc_get_variable:[660,2,1,""],nc_has_dimension:[661,2,1,""],nc_has_sample_dimension:[662,2,1,""],nc_has_variable:[663,2,1,""],nc_sample_dimension_groups:[664,2,1,""],nc_set_dimension:[665,2,1,""],nc_set_dimension_groups:[666,2,1,""],nc_set_sample_dimension:[667,2,1,""],nc_set_sample_dimension_groups:[668,2,1,""],nc_set_variable:[669,2,1,""],nc_set_variable_groups:[670,2,1,""],nc_variable_groups:[671,2,1,""],ndim:[40,3,1,""],properties:[672,2,1,""],set_data:[673,2,1,""],set_properties:[674,2,1,""],set_property:[675,2,1,""],shape:[41,3,1,""],size:[42,3,1,""],squeeze:[676,2,1,""],transpose:[677,2,1,""],uncompress:[678,2,1,""]},"cfdm.Data":{__array__:[679,2,1,""],__deepcopy__:[680,2,1,""],__getitem__:[681,2,1,""],__int__:[682,2,1,""],__iter__:[683,2,1,""],__repr__:[684,2,1,""],__setitem__:[685,2,1,""],__str__:[686,2,1,""],_docstring_method_exclusions:[687,2,1,""],_docstring_package_depth:[688,2,1,""],_docstring_special_substitutions:[689,2,1,""],_docstring_substitutions:[690,2,1,""],any:[691,2,1,""],apply_masking:[692,2,1,""],array:[43,3,1,""],compressed_array:[44,3,1,""],copy:[693,2,1,""],creation_commands:[694,2,1,""],datetime_array:[45,3,1,""],datetime_as_string:[46,3,1,""],del_calendar:[695,2,1,""],del_fill_value:[696,2,1,""],del_units:[697,2,1,""],dtype:[47,3,1,""],empty:[698,2,1,""],equals:[699,2,1,""],filled:[700,2,1,""],first_element:[701,2,1,""],flatten:[702,2,1,""],get_calendar:[703,2,1,""],get_compressed_axes:[704,2,1,""],get_compressed_dimension:[705,2,1,""],get_compression_type:[706,2,1,""],get_count:[707,2,1,""],get_filenames:[708,2,1,""],get_fill_value:[709,2,1,""],get_index:[710,2,1,""],get_list:[711,2,1,""],get_units:[712,2,1,""],has_calendar:[713,2,1,""],has_fill_value:[714,2,1,""],has_units:[715,2,1,""],insert_dimension:[716,2,1,""],last_element:[717,2,1,""],mask:[48,3,1,""],max:[718,2,1,""],maximum:[719,2,1,""],min:[720,2,1,""],minimum:[721,2,1,""],nc_clear_hdf5_chunksizes:[722,2,1,""],nc_hdf5_chunksizes:[723,2,1,""],nc_set_hdf5_chunksizes:[724,2,1,""],ndim:[49,3,1,""],second_element:[725,2,1,""],set_calendar:[726,2,1,""],set_fill_value:[727,2,1,""],set_units:[728,2,1,""],shape:[50,3,1,""],size:[51,3,1,""],source:[729,2,1,""],squeeze:[730,2,1,""],sum:[731,2,1,""],to_memory:[732,2,1,""],transpose:[733,2,1,""],uncompress:[734,2,1,""],unique:[735,2,1,""]},"cfdm.Datum":{__bool__:[736,2,1,""],__deepcopy__:[737,2,1,""],__repr__:[739,2,1,""],__str__:[740,2,1,""],_docstring_method_exclusions:[741,2,1,""],_docstring_package_depth:[742,2,1,""],_docstring_special_substitutions:[743,2,1,""],_docstring_substitutions:[744,2,1,""],clear_parameters:[745,2,1,""],copy:[746,2,1,""],del_parameter:[747,2,1,""],equals:[748,2,1,""],get_parameter:[749,2,1,""],has_parameter:[750,2,1,""],nc_clear_variable_groups:[751,2,1,""],nc_del_variable:[752,2,1,""],nc_get_variable:[753,2,1,""],nc_has_variable:[754,2,1,""],nc_set_variable:[755,2,1,""],nc_set_variable_groups:[756,2,1,""],nc_variable_groups:[757,2,1,""],parameters:[758,2,1,""],set_parameter:[759,2,1,""],set_parameters:[760,2,1,""]},"cfdm.DimensionCoordinate":{__deepcopy__:[761,2,1,""],__getitem__:[762,2,1,""],__repr__:[763,2,1,""],__str__:[764,2,1,""],_docstring_method_exclusions:[765,2,1,""],_docstring_package_depth:[766,2,1,""],_docstring_special_substitutions:[767,2,1,""],_docstring_substitutions:[768,2,1,""],apply_masking:[769,2,1,""],bounds:[52,3,1,""],clear_properties:[770,2,1,""],construct_type:[53,3,1,""],copy:[771,2,1,""],creation_commands:[772,2,1,""],data:[54,3,1,""],del_bounds:[773,2,1,""],del_climatology:[774,2,1,""],del_data:[775,2,1,""],del_geometry:[776,2,1,""],del_interior_ring:[777,2,1,""],del_node_count:[778,2,1,""],del_part_node_count:[779,2,1,""],del_property:[780,2,1,""],dtype:[55,3,1,""],dump:[781,2,1,""],equals:[782,2,1,""],get_bounds:[783,2,1,""],get_bounds_data:[784,2,1,""],get_climatology:[785,2,1,""],get_data:[786,2,1,""],get_filenames:[787,2,1,""],get_geometry:[788,2,1,""],get_interior_ring:[789,2,1,""],get_node_count:[790,2,1,""],get_part_node_count:[791,2,1,""],get_property:[792,2,1,""],has_bounds:[793,2,1,""],has_data:[794,2,1,""],has_geometry:[795,2,1,""],has_interior_ring:[796,2,1,""],has_node_count:[797,2,1,""],has_part_node_count:[798,2,1,""],has_property:[799,2,1,""],identities:[800,2,1,""],identity:[801,2,1,""],insert_dimension:[802,2,1,""],interior_ring:[56,3,1,""],is_climatology:[803,2,1,""],nc_clear_variable_groups:[804,2,1,""],nc_del_variable:[805,2,1,""],nc_get_variable:[806,2,1,""],nc_has_variable:[807,2,1,""],nc_set_variable:[808,2,1,""],nc_set_variable_groups:[809,2,1,""],nc_variable_groups:[810,2,1,""],ndim:[57,3,1,""],properties:[811,2,1,""],set_bounds:[812,2,1,""],set_climatology:[813,2,1,""],set_data:[814,2,1,""],set_geometry:[815,2,1,""],set_interior_ring:[816,2,1,""],set_node_count:[817,2,1,""],set_part_node_count:[818,2,1,""],set_properties:[819,2,1,""],set_property:[820,2,1,""],shape:[58,3,1,""],size:[59,3,1,""],squeeze:[821,2,1,""],transpose:[822,2,1,""],uncompress:[823,2,1,""]},"cfdm.Domain":{__deepcopy__:[824,2,1,""],__repr__:[825,2,1,""],__str__:[826,2,1,""],_docstring_method_exclusions:[827,2,1,""],_docstring_package_depth:[828,2,1,""],_docstring_special_substitutions:[829,2,1,""],_docstring_substitutions:[830,2,1,""],apply_masking:[831,2,1,""],auxiliary_coordinates:[832,2,1,""],cell_measures:[833,2,1,""],clear_properties:[834,2,1,""],climatological_time_axes:[835,2,1,""],construct:[836,2,1,""],construct_item:[837,2,1,""],construct_key:[838,2,1,""],construct_type:[62,3,1,""],constructs:[63,3,1,""],coordinate_references:[839,2,1,""],coordinates:[840,2,1,""],copy:[841,2,1,""],creation_commands:[842,2,1,""],dataset_compliance:[843,2,1,""],del_construct:[844,2,1,""],del_data_axes:[845,2,1,""],del_property:[846,2,1,""],dimension_coordinates:[847,2,1,""],domain_ancillaries:[848,2,1,""],domain_axes:[849,2,1,""],domain_axis_key:[850,2,1,""],dump:[851,2,1,""],equals:[852,2,1,""],fromconstructs:[853,2,1,""],get_construct:[854,2,1,""],get_data_axes:[855,2,1,""],get_filenames:[856,2,1,""],get_property:[857,2,1,""],has_bounds:[858,2,1,""],has_construct:[859,2,1,""],has_data:[860,2,1,""],has_data_axes:[861,2,1,""],has_geometry:[862,2,1,""],has_property:[863,2,1,""],identities:[864,2,1,""],identity:[865,2,1,""],nc_clear_component_dimension_groups:[866,2,1,""],nc_clear_component_sample_dimension_groups:[867,2,1,""],nc_clear_component_variable_groups:[868,2,1,""],nc_clear_geometry_variable_groups:[869,2,1,""],nc_clear_global_attributes:[870,2,1,""],nc_clear_group_attributes:[871,2,1,""],nc_clear_variable_groups:[872,2,1,""],nc_del_component_dimension:[873,2,1,""],nc_del_component_sample_dimension:[874,2,1,""],nc_del_component_variable:[875,2,1,""],nc_del_geometry_variable:[876,2,1,""],nc_del_variable:[877,2,1,""],nc_geometry_variable_groups:[878,2,1,""],nc_get_geometry_variable:[879,2,1,""],nc_get_variable:[880,2,1,""],nc_global_attributes:[881,2,1,""],nc_group_attributes:[882,2,1,""],nc_has_geometry_variable:[883,2,1,""],nc_has_variable:[884,2,1,""],nc_set_component_dimension:[885,2,1,""],nc_set_component_dimension_groups:[886,2,1,""],nc_set_component_sample_dimension:[887,2,1,""],nc_set_component_sample_dimension_groups:[888,2,1,""],nc_set_component_variable:[889,2,1,""],nc_set_component_variable_groups:[890,2,1,""],nc_set_geometry_variable:[891,2,1,""],nc_set_geometry_variable_groups:[892,2,1,""],nc_set_global_attribute:[893,2,1,""],nc_set_global_attributes:[894,2,1,""],nc_set_group_attribute:[895,2,1,""],nc_set_group_attributes:[896,2,1,""],nc_set_variable:[897,2,1,""],nc_set_variable_groups:[898,2,1,""],nc_variable_groups:[899,2,1,""],properties:[900,2,1,""],set_construct:[901,2,1,""],set_data_axes:[902,2,1,""],set_properties:[903,2,1,""],set_property:[904,2,1,""]},"cfdm.DomainAncillary":{__deepcopy__:[905,2,1,""],__getitem__:[906,2,1,""],__repr__:[907,2,1,""],__str__:[908,2,1,""],_docstring_method_exclusions:[909,2,1,""],_docstring_package_depth:[910,2,1,""],_docstring_special_substitutions:[911,2,1,""],_docstring_substitutions:[912,2,1,""],apply_masking:[913,2,1,""],bounds:[69,3,1,""],clear_properties:[914,2,1,""],construct_type:[70,3,1,""],copy:[915,2,1,""],creation_commands:[916,2,1,""],data:[71,3,1,""],del_bounds:[917,2,1,""],del_data:[918,2,1,""],del_geometry:[919,2,1,""],del_interior_ring:[920,2,1,""],del_node_count:[921,2,1,""],del_part_node_count:[922,2,1,""],del_property:[923,2,1,""],dtype:[72,3,1,""],dump:[924,2,1,""],equals:[925,2,1,""],get_bounds:[926,2,1,""],get_bounds_data:[927,2,1,""],get_data:[928,2,1,""],get_filenames:[929,2,1,""],get_geometry:[930,2,1,""],get_interior_ring:[931,2,1,""],get_node_count:[932,2,1,""],get_part_node_count:[933,2,1,""],get_property:[934,2,1,""],has_bounds:[935,2,1,""],has_data:[936,2,1,""],has_geometry:[937,2,1,""],has_interior_ring:[938,2,1,""],has_node_count:[939,2,1,""],has_part_node_count:[940,2,1,""],has_property:[941,2,1,""],identities:[942,2,1,""],identity:[943,2,1,""],insert_dimension:[944,2,1,""],interior_ring:[73,3,1,""],nc_clear_variable_groups:[945,2,1,""],nc_del_variable:[946,2,1,""],nc_get_variable:[947,2,1,""],nc_has_variable:[948,2,1,""],nc_set_variable:[949,2,1,""],nc_set_variable_groups:[950,2,1,""],nc_variable_groups:[951,2,1,""],ndim:[74,3,1,""],properties:[952,2,1,""],set_bounds:[953,2,1,""],set_data:[954,2,1,""],set_geometry:[955,2,1,""],set_interior_ring:[956,2,1,""],set_node_count:[957,2,1,""],set_part_node_count:[958,2,1,""],set_properties:[959,2,1,""],set_property:[960,2,1,""],shape:[75,3,1,""],size:[76,3,1,""],squeeze:[961,2,1,""],transpose:[962,2,1,""],uncompress:[963,2,1,""]},"cfdm.DomainAxis":{__deepcopy__:[964,2,1,""],__repr__:[965,2,1,""],__str__:[966,2,1,""],_docstring_method_exclusions:[967,2,1,""],_docstring_package_depth:[968,2,1,""],_docstring_special_substitutions:[969,2,1,""],_docstring_substitutions:[970,2,1,""],construct_type:[77,3,1,""],copy:[971,2,1,""],creation_commands:[972,2,1,""],del_size:[973,2,1,""],equals:[974,2,1,""],get_size:[975,2,1,""],has_size:[976,2,1,""],identities:[977,2,1,""],identity:[978,2,1,""],nc_clear_dimension_groups:[979,2,1,""],nc_del_dimension:[980,2,1,""],nc_dimension_groups:[981,2,1,""],nc_get_dimension:[982,2,1,""],nc_has_dimension:[983,2,1,""],nc_is_unlimited:[984,2,1,""],nc_set_dimension:[985,2,1,""],nc_set_dimension_groups:[986,2,1,""],nc_set_unlimited:[987,2,1,""],set_size:[988,2,1,""]},"cfdm.Field":{__deepcopy__:[989,2,1,""],__getitem__:[990,2,1,""],__repr__:[991,2,1,""],__str__:[992,2,1,""],_docstring_method_exclusions:[993,2,1,""],_docstring_package_depth:[994,2,1,""],_docstring_special_substitutions:[995,2,1,""],_docstring_substitutions:[996,2,1,""],apply_masking:[997,2,1,""],auxiliary_coordinates:[998,2,1,""],cell_measures:[999,2,1,""],cell_methods:[1000,2,1,""],clear_properties:[1001,2,1,""],climatological_time_axes:[1002,2,1,""],compress:[1003,2,1,""],construct:[1004,2,1,""],construct_item:[1005,2,1,""],construct_key:[1006,2,1,""],construct_type:[81,3,1,""],constructs:[82,3,1,""],convert:[1007,2,1,""],coordinate_references:[1008,2,1,""],coordinates:[1009,2,1,""],copy:[1010,2,1,""],creation_commands:[1011,2,1,""],data:[85,3,1,""],dataset_compliance:[1012,2,1,""],del_construct:[1013,2,1,""],del_data:[1014,2,1,""],del_data_axes:[1015,2,1,""],del_property:[1016,2,1,""],dimension_coordinates:[1017,2,1,""],domain:[87,3,1,""],domain_ancillaries:[1018,2,1,""],domain_axes:[1019,2,1,""],domain_axis_key:[1020,2,1,""],dtype:[90,3,1,""],dump:[1021,2,1,""],equals:[1022,2,1,""],field_ancillaries:[1023,2,1,""],get_construct:[1024,2,1,""],get_data:[1025,2,1,""],get_data_axes:[1026,2,1,""],get_domain:[1027,2,1,""],get_filenames:[1028,2,1,""],get_property:[1029,2,1,""],has_bounds:[1030,2,1,""],has_construct:[1031,2,1,""],has_data:[1032,2,1,""],has_data_axes:[1033,2,1,""],has_geometry:[1034,2,1,""],has_property:[1035,2,1,""],identities:[1036,2,1,""],identity:[1037,2,1,""],insert_dimension:[1038,2,1,""],nc_clear_component_dimension_groups:[1039,2,1,""],nc_clear_component_sample_dimension_groups:[1040,2,1,""],nc_clear_component_variable_groups:[1041,2,1,""],nc_clear_geometry_variable_groups:[1042,2,1,""],nc_clear_global_attributes:[1043,2,1,""],nc_clear_group_attributes:[1044,2,1,""],nc_clear_variable_groups:[1045,2,1,""],nc_del_component_dimension:[1046,2,1,""],nc_del_component_sample_dimension:[1047,2,1,""],nc_del_component_variable:[1048,2,1,""],nc_del_geometry_variable:[1049,2,1,""],nc_del_variable:[1050,2,1,""],nc_geometry_variable_groups:[1051,2,1,""],nc_get_geometry_variable:[1052,2,1,""],nc_get_variable:[1053,2,1,""],nc_global_attributes:[1054,2,1,""],nc_group_attributes:[1055,2,1,""],nc_has_geometry_variable:[1056,2,1,""],nc_has_variable:[1057,2,1,""],nc_set_component_dimension:[1058,2,1,""],nc_set_component_dimension_groups:[1059,2,1,""],nc_set_component_sample_dimension:[1060,2,1,""],nc_set_component_sample_dimension_groups:[1061,2,1,""],nc_set_component_variable:[1062,2,1,""],nc_set_component_variable_groups:[1063,2,1,""],nc_set_geometry_variable:[1064,2,1,""],nc_set_geometry_variable_groups:[1065,2,1,""],nc_set_global_attribute:[1066,2,1,""],nc_set_global_attributes:[1067,2,1,""],nc_set_group_attribute:[1068,2,1,""],nc_set_group_attributes:[1069,2,1,""],nc_set_variable:[1070,2,1,""],nc_set_variable_groups:[1071,2,1,""],nc_variable_groups:[1072,2,1,""],ndim:[92,3,1,""],properties:[1073,2,1,""],set_construct:[1074,2,1,""],set_data:[1075,2,1,""],set_data_axes:[1076,2,1,""],set_properties:[1077,2,1,""],set_property:[1078,2,1,""],shape:[93,3,1,""],size:[94,3,1,""],squeeze:[1079,2,1,""],transpose:[1080,2,1,""],uncompress:[1081,2,1,""]},"cfdm.FieldAncillary":{__deepcopy__:[1082,2,1,""],__getitem__:[1083,2,1,""],__repr__:[1084,2,1,""],__str__:[1085,2,1,""],_docstring_method_exclusions:[1086,2,1,""],_docstring_package_depth:[1087,2,1,""],_docstring_special_substitutions:[1088,2,1,""],_docstring_substitutions:[1089,2,1,""],apply_masking:[1090,2,1,""],clear_properties:[1091,2,1,""],construct_type:[95,3,1,""],copy:[1092,2,1,""],creation_commands:[1093,2,1,""],data:[96,3,1,""],del_data:[1094,2,1,""],del_property:[1095,2,1,""],dtype:[97,3,1,""],dump:[1096,2,1,""],equals:[1097,2,1,""],get_data:[1098,2,1,""],get_filenames:[1099,2,1,""],get_property:[1100,2,1,""],has_bounds:[1101,2,1,""],has_data:[1102,2,1,""],has_property:[1103,2,1,""],identities:[1104,2,1,""],identity:[1105,2,1,""],insert_dimension:[1106,2,1,""],nc_clear_variable_groups:[1107,2,1,""],nc_del_variable:[1108,2,1,""],nc_get_variable:[1109,2,1,""],nc_has_variable:[1110,2,1,""],nc_set_variable:[1111,2,1,""],nc_set_variable_groups:[1112,2,1,""],nc_variable_groups:[1113,2,1,""],ndim:[98,3,1,""],properties:[1114,2,1,""],set_data:[1115,2,1,""],set_properties:[1116,2,1,""],set_property:[1117,2,1,""],shape:[99,3,1,""],size:[100,3,1,""],squeeze:[1118,2,1,""],transpose:[1119,2,1,""],uncompress:[1120,2,1,""]},"cfdm.GatheredArray":{__array__:[1121,2,1,""],__deepcopy__:[1122,2,1,""],__getitem__:[1123,2,1,""],__repr__:[1124,2,1,""],__str__:[1125,2,1,""],array:[101,3,1,""],compressed_array:[102,3,1,""],copy:[1126,2,1,""],dtype:[103,3,1,""],get_compressed_axes:[1127,2,1,""],get_compressed_dimension:[1128,2,1,""],get_compression_type:[1129,2,1,""],get_list:[1130,2,1,""],get_subspace:[1131,2,1,""],ndim:[104,3,1,""],shape:[105,3,1,""],size:[106,3,1,""],source:[1132,2,1,""],to_memory:[1133,2,1,""]},"cfdm.Index":{__deepcopy__:[1134,2,1,""],__getitem__:[1135,2,1,""],__repr__:[1136,2,1,""],__str__:[1137,2,1,""],_docstring_method_exclusions:[1138,2,1,""],_docstring_package_depth:[1139,2,1,""],_docstring_special_substitutions:[1140,2,1,""],_docstring_substitutions:[1141,2,1,""],apply_masking:[1142,2,1,""],clear_properties:[1143,2,1,""],copy:[1144,2,1,""],creation_commands:[1145,2,1,""],data:[107,3,1,""],del_data:[1146,2,1,""],del_property:[1147,2,1,""],dtype:[108,3,1,""],dump:[1148,2,1,""],equals:[1149,2,1,""],get_data:[1150,2,1,""],get_filenames:[1151,2,1,""],get_property:[1152,2,1,""],has_bounds:[1153,2,1,""],has_data:[1154,2,1,""],has_property:[1155,2,1,""],identities:[1156,2,1,""],identity:[1157,2,1,""],insert_dimension:[1158,2,1,""],nc_clear_dimension_groups:[1159,2,1,""],nc_clear_sample_dimension_groups:[1160,2,1,""],nc_clear_variable_groups:[1161,2,1,""],nc_del_dimension:[1162,2,1,""],nc_del_sample_dimension:[1163,2,1,""],nc_del_variable:[1164,2,1,""],nc_dimension_groups:[1165,2,1,""],nc_get_dimension:[1166,2,1,""],nc_get_sample_dimension:[1167,2,1,""],nc_get_variable:[1168,2,1,""],nc_has_dimension:[1169,2,1,""],nc_has_sample_dimension:[1170,2,1,""],nc_has_variable:[1171,2,1,""],nc_sample_dimension_groups:[1172,2,1,""],nc_set_dimension:[1173,2,1,""],nc_set_dimension_groups:[1174,2,1,""],nc_set_sample_dimension:[1175,2,1,""],nc_set_sample_dimension_groups:[1176,2,1,""],nc_set_variable:[1177,2,1,""],nc_set_variable_groups:[1178,2,1,""],nc_variable_groups:[1179,2,1,""],ndim:[109,3,1,""],properties:[1180,2,1,""],set_data:[1181,2,1,""],set_properties:[1182,2,1,""],set_property:[1183,2,1,""],shape:[110,3,1,""],size:[111,3,1,""],squeeze:[1184,2,1,""],transpose:[1185,2,1,""],uncompress:[1186,2,1,""]},"cfdm.InteriorRing":{__deepcopy__:[1187,2,1,""],__getitem__:[1188,2,1,""],__repr__:[1189,2,1,""],__str__:[1190,2,1,""],_docstring_method_exclusions:[1191,2,1,""],_docstring_package_depth:[1192,2,1,""],_docstring_special_substitutions:[1193,2,1,""],_docstring_substitutions:[1194,2,1,""],apply_masking:[1195,2,1,""],clear_properties:[1196,2,1,""],copy:[1197,2,1,""],creation_commands:[1198,2,1,""],data:[112,3,1,""],del_data:[1199,2,1,""],del_property:[1200,2,1,""],dtype:[113,3,1,""],dump:[1201,2,1,""],equals:[1202,2,1,""],get_data:[1203,2,1,""],get_filenames:[1204,2,1,""],get_property:[1205,2,1,""],has_bounds:[1206,2,1,""],has_data:[1207,2,1,""],has_property:[1208,2,1,""],identities:[1209,2,1,""],identity:[1210,2,1,""],insert_dimension:[1211,2,1,""],nc_clear_dimension_groups:[1212,2,1,""],nc_clear_variable_groups:[1213,2,1,""],nc_del_dimension:[1214,2,1,""],nc_del_variable:[1215,2,1,""],nc_dimension_groups:[1216,2,1,""],nc_get_dimension:[1217,2,1,""],nc_get_variable:[1218,2,1,""],nc_has_dimension:[1219,2,1,""],nc_has_variable:[1220,2,1,""],nc_set_dimension:[1221,2,1,""],nc_set_dimension_groups:[1222,2,1,""],nc_set_variable:[1223,2,1,""],nc_set_variable_groups:[1224,2,1,""],nc_variable_groups:[1225,2,1,""],ndim:[114,3,1,""],properties:[1226,2,1,""],set_data:[1227,2,1,""],set_properties:[1228,2,1,""],set_property:[1229,2,1,""],shape:[115,3,1,""],size:[116,3,1,""],squeeze:[1230,2,1,""],transpose:[1231,2,1,""],uncompress:[1232,2,1,""]},"cfdm.List":{__deepcopy__:[1233,2,1,""],__getitem__:[1234,2,1,""],__repr__:[1235,2,1,""],__str__:[1236,2,1,""],_docstring_method_exclusions:[1237,2,1,""],_docstring_package_depth:[1238,2,1,""],_docstring_special_substitutions:[1239,2,1,""],_docstring_substitutions:[1240,2,1,""],apply_masking:[1241,2,1,""],clear_properties:[1242,2,1,""],copy:[1243,2,1,""],creation_commands:[1244,2,1,""],data:[117,3,1,""],del_data:[1245,2,1,""],del_property:[1246,2,1,""],dtype:[118,3,1,""],dump:[1247,2,1,""],equals:[1248,2,1,""],get_data:[1249,2,1,""],get_filenames:[1250,2,1,""],get_property:[1251,2,1,""],has_bounds:[1252,2,1,""],has_data:[1253,2,1,""],has_property:[1254,2,1,""],identities:[1255,2,1,""],identity:[1256,2,1,""],insert_dimension:[1257,2,1,""],nc_clear_variable_groups:[1258,2,1,""],nc_del_variable:[1259,2,1,""],nc_get_variable:[1260,2,1,""],nc_has_variable:[1261,2,1,""],nc_set_variable:[1262,2,1,""],nc_set_variable_groups:[1263,2,1,""],nc_variable_groups:[1264,2,1,""],ndim:[119,3,1,""],properties:[1265,2,1,""],set_data:[1266,2,1,""],set_properties:[1267,2,1,""],set_property:[1268,2,1,""],shape:[120,3,1,""],size:[121,3,1,""],squeeze:[1269,2,1,""],transpose:[1270,2,1,""],uncompress:[1271,2,1,""]},"cfdm.NetCDFArray":{__getitem__:[1272,2,1,""],_docstring_method_exclusions:[1273,2,1,""],_docstring_package_depth:[1274,2,1,""],_docstring_special_substitutions:[1275,2,1,""],_docstring_substitutions:[1276,2,1,""],array:[122,3,1,""],close:[1277,2,1,""],copy:[1278,2,1,""],dtype:[123,3,1,""],get_compression_type:[1279,2,1,""],get_filename:[1280,2,1,""],get_group:[1281,2,1,""],get_mask:[1282,2,1,""],get_ncvar:[1283,2,1,""],get_subspace:[1284,2,1,""],get_varid:[1285,2,1,""],ndim:[124,3,1,""],open:[1286,2,1,""],shape:[125,3,1,""],size:[126,3,1,""],to_memory:[1287,2,1,""]},"cfdm.NumpyArray":{__getitem__:[1288,2,1,""],_docstring_method_exclusions:[1289,2,1,""],_docstring_package_depth:[1290,2,1,""],_docstring_special_substitutions:[1291,2,1,""],_docstring_substitutions:[1292,2,1,""],array:[127,3,1,""],copy:[1293,2,1,""],dtype:[128,3,1,""],get_compression_type:[1294,2,1,""],get_subspace:[1295,2,1,""],ndim:[129,3,1,""],shape:[130,3,1,""],size:[131,3,1,""],to_memory:[1296,2,1,""]},"cfdm.RaggedContiguousArray":{__array__:[1297,2,1,""],__deepcopy__:[1298,2,1,""],__getitem__:[1299,2,1,""],__repr__:[1300,2,1,""],__str__:[1301,2,1,""],_docstring_method_exclusions:[1302,2,1,""],_docstring_package_depth:[1303,2,1,""],_docstring_special_substitutions:[1304,2,1,""],_docstring_substitutions:[1305,2,1,""],array:[132,3,1,""],compressed_array:[133,3,1,""],copy:[1306,2,1,""],dtype:[134,3,1,""],get_compressed_axes:[1307,2,1,""],get_compressed_dimension:[1308,2,1,""],get_compression_type:[1309,2,1,""],get_count:[1310,2,1,""],get_subspace:[1311,2,1,""],ndim:[135,3,1,""],shape:[136,3,1,""],size:[137,3,1,""],source:[1312,2,1,""],to_memory:[1313,2,1,""]},"cfdm.RaggedIndexedArray":{__array__:[1314,2,1,""],__deepcopy__:[1315,2,1,""],__getitem__:[1316,2,1,""],__repr__:[1317,2,1,""],__str__:[1318,2,1,""],_docstring_method_exclusions:[1319,2,1,""],_docstring_package_depth:[1320,2,1,""],_docstring_special_substitutions:[1321,2,1,""],_docstring_substitutions:[1322,2,1,""],array:[138,3,1,""],compressed_array:[139,3,1,""],copy:[1323,2,1,""],dtype:[140,3,1,""],get_compressed_axes:[1324,2,1,""],get_compressed_dimension:[1325,2,1,""],get_compression_type:[1326,2,1,""],get_index:[1327,2,1,""],get_subspace:[1328,2,1,""],ndim:[141,3,1,""],shape:[142,3,1,""],size:[143,3,1,""],source:[1329,2,1,""],to_memory:[1330,2,1,""]},"cfdm.RaggedIndexedContiguousArray":{__array__:[1331,2,1,""],__deepcopy__:[1332,2,1,""],__getitem__:[1333,2,1,""],__repr__:[1334,2,1,""],__str__:[1335,2,1,""],_docstring_method_exclusions:[1336,2,1,""],_docstring_package_depth:[1337,2,1,""],_docstring_special_substitutions:[1338,2,1,""],_docstring_substitutions:[1339,2,1,""],array:[144,3,1,""],compressed_array:[145,3,1,""],copy:[1340,2,1,""],dtype:[146,3,1,""],get_compressed_axes:[1341,2,1,""],get_compressed_dimension:[1342,2,1,""],get_compression_type:[1343,2,1,""],get_count:[1344,2,1,""],get_index:[1345,2,1,""],get_subspace:[1346,2,1,""],ndim:[147,3,1,""],shape:[148,3,1,""],size:[149,3,1,""],source:[1347,2,1,""],to_memory:[1348,2,1,""]},"cfdm.cfdm":{masked:[263,4,1,""]},"cfdm.core":{Array:[236,1,1,""],AuxiliaryCoordinate:[237,1,1,""],Bounds:[238,1,1,""],CellMeasure:[239,1,1,""],CellMethod:[240,1,1,""],Constructs:[241,1,1,""],Container:[242,1,1,""],Coordinate:[243,1,1,""],CoordinateConversion:[244,1,1,""],CoordinateReference:[245,1,1,""],Data:[246,1,1,""],Datum:[247,1,1,""],DimensionCoordinate:[248,1,1,""],DocstringRewriteMeta:[249,1,1,""],Domain:[250,1,1,""],DomainAncillary:[251,1,1,""],DomainAxis:[252,1,1,""],Field:[253,1,1,""],FieldAncillary:[254,1,1,""],InteriorRing:[255,1,1,""],NumpyArray:[256,1,1,""],Parameters:[257,1,1,""],ParametersDomainAncillaries:[258,1,1,""],Properties:[259,1,1,""],PropertiesData:[260,1,1,""],PropertiesDataBounds:[261,1,1,""]},"cfdm.core.Array":{__deepcopy__:[1349,2,1,""],_docstring_method_exclusions:[1350,2,1,""],_docstring_package_depth:[1351,2,1,""],_docstring_special_substitutions:[1352,2,1,""],_docstring_substitutions:[1353,2,1,""],array:[150,3,1,""],copy:[1354,2,1,""],dtype:[151,3,1,""],ndim:[152,3,1,""],shape:[153,3,1,""],size:[154,3,1,""]},"cfdm.core.AuxiliaryCoordinate":{__deepcopy__:[1355,2,1,""],_docstring_method_exclusions:[1356,2,1,""],_docstring_package_depth:[1357,2,1,""],_docstring_special_substitutions:[1358,2,1,""],_docstring_substitutions:[1359,2,1,""],bounds:[155,3,1,""],clear_properties:[1360,2,1,""],construct_type:[156,3,1,""],copy:[1361,2,1,""],data:[157,3,1,""],del_bounds:[1362,2,1,""],del_climatology:[1363,2,1,""],del_data:[1364,2,1,""],del_geometry:[1365,2,1,""],del_interior_ring:[1366,2,1,""],del_property:[1367,2,1,""],get_bounds:[1368,2,1,""],get_climatology:[1369,2,1,""],get_data:[1370,2,1,""],get_geometry:[1371,2,1,""],get_interior_ring:[1372,2,1,""],get_property:[1373,2,1,""],has_bounds:[1374,2,1,""],has_data:[1375,2,1,""],has_geometry:[1376,2,1,""],has_interior_ring:[1377,2,1,""],has_property:[1378,2,1,""],interior_ring:[158,3,1,""],is_climatology:[1379,2,1,""],properties:[1380,2,1,""],set_bounds:[1381,2,1,""],set_climatology:[1382,2,1,""],set_data:[1383,2,1,""],set_geometry:[1384,2,1,""],set_interior_ring:[1385,2,1,""],set_properties:[1386,2,1,""],set_property:[1387,2,1,""]},"cfdm.core.Bounds":{__deepcopy__:[1388,2,1,""],clear_properties:[1389,2,1,""],copy:[1390,2,1,""],data:[159,3,1,""],del_data:[1391,2,1,""],del_property:[1392,2,1,""],get_data:[1393,2,1,""],get_property:[1394,2,1,""],has_bounds:[1395,2,1,""],has_data:[1396,2,1,""],has_property:[1397,2,1,""],properties:[1398,2,1,""],set_data:[1399,2,1,""],set_properties:[1400,2,1,""],set_property:[1401,2,1,""]},"cfdm.core.CellMeasure":{__deepcopy__:[1402,2,1,""],_docstring_method_exclusions:[1403,2,1,""],_docstring_package_depth:[1404,2,1,""],_docstring_special_substitutions:[1405,2,1,""],_docstring_substitutions:[1406,2,1,""],clear_properties:[1407,2,1,""],construct_type:[160,3,1,""],copy:[1408,2,1,""],data:[161,3,1,""],del_data:[1409,2,1,""],del_measure:[1410,2,1,""],del_property:[1411,2,1,""],get_data:[1412,2,1,""],get_measure:[1413,2,1,""],get_property:[1414,2,1,""],has_bounds:[1415,2,1,""],has_data:[1416,2,1,""],has_measure:[1417,2,1,""],has_property:[1418,2,1,""],properties:[1419,2,1,""],set_data:[1420,2,1,""],set_measure:[1421,2,1,""],set_properties:[1422,2,1,""],set_property:[1423,2,1,""]},"cfdm.core.CellMethod":{__deepcopy__:[1424,2,1,""],_docstring_method_exclusions:[1425,2,1,""],_docstring_package_depth:[1426,2,1,""],_docstring_special_substitutions:[1427,2,1,""],_docstring_substitutions:[1428,2,1,""],construct_type:[162,3,1,""],copy:[1429,2,1,""],del_axes:[1430,2,1,""],del_method:[1431,2,1,""],del_qualifier:[1432,2,1,""],get_axes:[1433,2,1,""],get_method:[1434,2,1,""],get_qualifier:[1435,2,1,""],has_axes:[1436,2,1,""],has_method:[1437,2,1,""],has_qualifier:[1438,2,1,""],qualifiers:[1439,2,1,""],set_axes:[1440,2,1,""],set_method:[1441,2,1,""],set_qualifier:[1442,2,1,""]},"cfdm.core.Constructs":{__call__:[1443,2,1,""],__contains__:[1444,2,1,""],__copy__:[1445,2,1,""],__deepcopy__:[1446,2,1,""],__getitem__:[1447,2,1,""],__iter__:[1448,2,1,""],__len__:[1449,2,1,""],_docstring_method_exclusions:[1450,2,1,""],_docstring_package_depth:[1451,2,1,""],_docstring_special_substitutions:[1452,2,1,""],_docstring_substitutions:[1453,2,1,""],construct_type:[1454,2,1,""],construct_types:[1455,2,1,""],copy:[1456,2,1,""],data_axes:[1457,2,1,""],filter_by_type:[1458,2,1,""],get:[1459,2,1,""],get_data_axes:[1460,2,1,""],items:[1461,2,1,""],key:[1462,2,1,""],keys:[1463,2,1,""],new_identifier:[1464,2,1,""],ordered:[1465,2,1,""],replace:[1466,2,1,""],shallow_copy:[1467,2,1,""],todict:[1468,2,1,""],value:[1469,2,1,""],values:[1470,2,1,""]},"cfdm.core.Container":{__deepcopy__:[1471,2,1,""],_del_component:[1472,2,1,""],_docstring_method_exclusions:[1473,2,1,""],_docstring_package_depth:[1474,2,1,""],_docstring_special_substitutions:[1475,2,1,""],_docstring_substitutions:[1476,2,1,""],_get_component:[1477,2,1,""],_has_component:[1478,2,1,""],_set_component:[1479,2,1,""],copy:[1480,2,1,""]},"cfdm.core.Coordinate":{__deepcopy__:[1481,2,1,""],_docstring_method_exclusions:[1482,2,1,""],_docstring_package_depth:[1483,2,1,""],_docstring_special_substitutions:[1484,2,1,""],_docstring_substitutions:[1485,2,1,""],bounds:[163,3,1,""],clear_properties:[1486,2,1,""],copy:[1487,2,1,""],data:[164,3,1,""],del_bounds:[1488,2,1,""],del_climatology:[1489,2,1,""],del_data:[1490,2,1,""],del_geometry:[1491,2,1,""],del_interior_ring:[1492,2,1,""],del_property:[1493,2,1,""],get_bounds:[1494,2,1,""],get_climatology:[1495,2,1,""],get_data:[1496,2,1,""],get_geometry:[1497,2,1,""],get_interior_ring:[1498,2,1,""],get_property:[1499,2,1,""],has_bounds:[1500,2,1,""],has_data:[1501,2,1,""],has_geometry:[1502,2,1,""],has_interior_ring:[1503,2,1,""],has_property:[1504,2,1,""],interior_ring:[165,3,1,""],is_climatology:[1505,2,1,""],properties:[1506,2,1,""],set_bounds:[1507,2,1,""],set_climatology:[1508,2,1,""],set_data:[1509,2,1,""],set_geometry:[1510,2,1,""],set_interior_ring:[1511,2,1,""],set_properties:[1512,2,1,""],set_property:[1513,2,1,""]},"cfdm.core.CoordinateConversion":{__deepcopy__:[1514,2,1,""],_docstring_method_exclusions:[1515,2,1,""],_docstring_package_depth:[1516,2,1,""],_docstring_special_substitutions:[1517,2,1,""],_docstring_substitutions:[1518,2,1,""],clear_domain_ancillaries:[1519,2,1,""],clear_parameters:[1520,2,1,""],copy:[1521,2,1,""],del_domain_ancillary:[1522,2,1,""],del_parameter:[1523,2,1,""],domain_ancillaries:[1524,2,1,""],get_domain_ancillary:[1525,2,1,""],get_parameter:[1526,2,1,""],has_domain_ancillary:[1527,2,1,""],has_parameter:[1528,2,1,""],parameters:[1529,2,1,""],set_domain_ancillaries:[1530,2,1,""],set_domain_ancillary:[1531,2,1,""],set_parameter:[1532,2,1,""],set_parameters:[1533,2,1,""]},"cfdm.core.CoordinateReference":{__deepcopy__:[1534,2,1,""],_docstring_method_exclusions:[1535,2,1,""],_docstring_package_depth:[1536,2,1,""],_docstring_special_substitutions:[1537,2,1,""],_docstring_substitutions:[1538,2,1,""],clear_coordinates:[1539,2,1,""],construct_type:[166,3,1,""],coordinates:[1540,2,1,""],copy:[1541,2,1,""],del_coordinate:[1542,2,1,""],del_coordinate_conversion:[1543,2,1,""],del_datum:[1544,2,1,""],get_coordinate_conversion:[1545,2,1,""],get_datum:[1546,2,1,""],has_coordinate:[1547,2,1,""],set_coordinate:[1548,2,1,""],set_coordinate_conversion:[1549,2,1,""],set_coordinates:[1550,2,1,""],set_datum:[1551,2,1,""]},"cfdm.core.Data":{__deepcopy__:[1552,2,1,""],__repr__:[1553,2,1,""],__str__:[1554,2,1,""],_docstring_method_exclusions:[1555,2,1,""],_docstring_package_depth:[1556,2,1,""],_docstring_special_substitutions:[1557,2,1,""],_docstring_substitutions:[1558,2,1,""],array:[169,3,1,""],copy:[1559,2,1,""],del_calendar:[1560,2,1,""],del_fill_value:[1561,2,1,""],del_units:[1562,2,1,""],dtype:[170,3,1,""],get_calendar:[1563,2,1,""],get_fill_value:[1564,2,1,""],get_units:[1565,2,1,""],has_calendar:[1566,2,1,""],has_fill_value:[1567,2,1,""],has_units:[1568,2,1,""],ndim:[171,3,1,""],set_calendar:[1569,2,1,""],set_fill_value:[1570,2,1,""],set_units:[1571,2,1,""],shape:[172,3,1,""],size:[173,3,1,""],source:[1572,2,1,""]},"cfdm.core.Datum":{__deepcopy__:[1573,2,1,""],_docstring_method_exclusions:[1574,2,1,""],_docstring_package_depth:[1575,2,1,""],_docstring_special_substitutions:[1576,2,1,""],_docstring_substitutions:[1577,2,1,""],clear_parameters:[1578,2,1,""],copy:[1579,2,1,""],del_parameter:[1580,2,1,""],get_parameter:[1581,2,1,""],has_parameter:[1582,2,1,""],parameters:[1583,2,1,""],set_parameter:[1584,2,1,""],set_parameters:[1585,2,1,""]},"cfdm.core.DimensionCoordinate":{__deepcopy__:[1586,2,1,""],_docstring_method_exclusions:[1587,2,1,""],_docstring_package_depth:[1588,2,1,""],_docstring_special_substitutions:[1589,2,1,""],_docstring_substitutions:[1590,2,1,""],bounds:[174,3,1,""],clear_properties:[1591,2,1,""],construct_type:[175,3,1,""],copy:[1592,2,1,""],data:[176,3,1,""],del_bounds:[1593,2,1,""],del_climatology:[1594,2,1,""],del_data:[1595,2,1,""],del_geometry:[1596,2,1,""],del_interior_ring:[1597,2,1,""],del_property:[1598,2,1,""],get_bounds:[1599,2,1,""],get_climatology:[1600,2,1,""],get_data:[1601,2,1,""],get_geometry:[1602,2,1,""],get_interior_ring:[1603,2,1,""],get_property:[1604,2,1,""],has_bounds:[1605,2,1,""],has_data:[1606,2,1,""],has_geometry:[1607,2,1,""],has_interior_ring:[1608,2,1,""],has_property:[1609,2,1,""],interior_ring:[177,3,1,""],is_climatology:[1610,2,1,""],properties:[1611,2,1,""],set_bounds:[1612,2,1,""],set_climatology:[1613,2,1,""],set_data:[1614,2,1,""],set_geometry:[1615,2,1,""],set_interior_ring:[1616,2,1,""],set_properties:[1617,2,1,""],set_property:[1618,2,1,""]},"cfdm.core.DocstringRewriteMeta":{_docstring_method_exclusions:[1619,2,1,""],_docstring_package_depth:[1620,2,1,""],_docstring_special_substitutions:[1621,2,1,""],_docstring_substitutions:[1622,2,1,""],mro:[1623,2,1,""]},"cfdm.core.Domain":{__deepcopy__:[1624,2,1,""],_docstring_method_exclusions:[1625,2,1,""],_docstring_package_depth:[1626,2,1,""],_docstring_special_substitutions:[1627,2,1,""],_docstring_substitutions:[1628,2,1,""],clear_properties:[1629,2,1,""],construct_type:[178,3,1,""],constructs:[179,3,1,""],copy:[1630,2,1,""],del_construct:[1631,2,1,""],del_data_axes:[1632,2,1,""],del_property:[1633,2,1,""],fromconstructs:[1634,2,1,""],get_construct:[1635,2,1,""],get_data_axes:[1636,2,1,""],get_property:[1637,2,1,""],has_bounds:[1638,2,1,""],has_construct:[1639,2,1,""],has_data:[1640,2,1,""],has_data_axes:[1641,2,1,""],has_property:[1642,2,1,""],properties:[1643,2,1,""],set_construct:[1644,2,1,""],set_data_axes:[1645,2,1,""],set_properties:[1646,2,1,""],set_property:[1647,2,1,""]},"cfdm.core.DomainAncillary":{__deepcopy__:[1648,2,1,""],_docstring_method_exclusions:[1649,2,1,""],_docstring_package_depth:[1650,2,1,""],_docstring_special_substitutions:[1651,2,1,""],_docstring_substitutions:[1652,2,1,""],bounds:[180,3,1,""],clear_properties:[1653,2,1,""],construct_type:[181,3,1,""],copy:[1654,2,1,""],data:[182,3,1,""],del_bounds:[1655,2,1,""],del_data:[1656,2,1,""],del_geometry:[1657,2,1,""],del_interior_ring:[1658,2,1,""],del_property:[1659,2,1,""],get_bounds:[1660,2,1,""],get_data:[1661,2,1,""],get_geometry:[1662,2,1,""],get_interior_ring:[1663,2,1,""],get_property:[1664,2,1,""],has_bounds:[1665,2,1,""],has_data:[1666,2,1,""],has_geometry:[1667,2,1,""],has_interior_ring:[1668,2,1,""],has_property:[1669,2,1,""],interior_ring:[183,3,1,""],properties:[1670,2,1,""],set_bounds:[1671,2,1,""],set_data:[1672,2,1,""],set_geometry:[1673,2,1,""],set_interior_ring:[1674,2,1,""],set_properties:[1675,2,1,""],set_property:[1676,2,1,""]},"cfdm.core.DomainAxis":{__deepcopy__:[1677,2,1,""],_docstring_method_exclusions:[1678,2,1,""],_docstring_package_depth:[1679,2,1,""],_docstring_special_substitutions:[1680,2,1,""],_docstring_substitutions:[1681,2,1,""],construct_type:[184,3,1,""],copy:[1682,2,1,""],del_size:[1683,2,1,""],get_size:[1684,2,1,""],has_size:[1685,2,1,""],set_size:[1686,2,1,""]},"cfdm.core.Field":{__deepcopy__:[1687,2,1,""],_docstring_method_exclusions:[1688,2,1,""],_docstring_package_depth:[1689,2,1,""],_docstring_special_substitutions:[1690,2,1,""],_docstring_substitutions:[1691,2,1,""],clear_properties:[1692,2,1,""],construct_type:[185,3,1,""],constructs:[186,3,1,""],copy:[1693,2,1,""],data:[187,3,1,""],del_construct:[1694,2,1,""],del_data:[1695,2,1,""],del_data_axes:[1696,2,1,""],del_property:[1697,2,1,""],domain:[188,3,1,""],get_construct:[1698,2,1,""],get_data:[1699,2,1,""],get_data_axes:[1700,2,1,""],get_domain:[1701,2,1,""],get_property:[1702,2,1,""],has_bounds:[1703,2,1,""],has_construct:[1704,2,1,""],has_data:[1705,2,1,""],has_data_axes:[1706,2,1,""],has_property:[1707,2,1,""],properties:[1708,2,1,""],set_construct:[1709,2,1,""],set_data:[1710,2,1,""],set_data_axes:[1711,2,1,""],set_properties:[1712,2,1,""],set_property:[1713,2,1,""]},"cfdm.core.FieldAncillary":{__deepcopy__:[1714,2,1,""],_docstring_method_exclusions:[1715,2,1,""],_docstring_package_depth:[1716,2,1,""],_docstring_special_substitutions:[1717,2,1,""],_docstring_substitutions:[1718,2,1,""],clear_properties:[1719,2,1,""],construct_type:[189,3,1,""],copy:[1720,2,1,""],data:[190,3,1,""],del_data:[1721,2,1,""],del_property:[1722,2,1,""],get_data:[1723,2,1,""],get_property:[1724,2,1,""],has_bounds:[1725,2,1,""],has_data:[1726,2,1,""],has_property:[1727,2,1,""],properties:[1728,2,1,""],set_data:[1729,2,1,""],set_properties:[1730,2,1,""],set_property:[1731,2,1,""]},"cfdm.core.InteriorRing":{__deepcopy__:[1732,2,1,""],_docstring_method_exclusions:[1733,2,1,""],_docstring_package_depth:[1734,2,1,""],_docstring_special_substitutions:[1735,2,1,""],_docstring_substitutions:[1736,2,1,""],clear_properties:[1737,2,1,""],copy:[1738,2,1,""],data:[191,3,1,""],del_data:[1739,2,1,""],del_property:[1740,2,1,""],get_data:[1741,2,1,""],get_property:[1742,2,1,""],has_bounds:[1743,2,1,""],has_data:[1744,2,1,""],has_property:[1745,2,1,""],properties:[1746,2,1,""],set_data:[1747,2,1,""],set_properties:[1748,2,1,""],set_property:[1749,2,1,""]},"cfdm.core.NumpyArray":{_docstring_method_exclusions:[1750,2,1,""],_docstring_package_depth:[1751,2,1,""],_docstring_special_substitutions:[1752,2,1,""],_docstring_substitutions:[1753,2,1,""],array:[192,3,1,""],copy:[1754,2,1,""],dtype:[193,3,1,""],ndim:[194,3,1,""],shape:[195,3,1,""],size:[196,3,1,""]},"cfdm.core.Parameters":{__deepcopy__:[1755,2,1,""],_docstring_method_exclusions:[1756,2,1,""],_docstring_package_depth:[1757,2,1,""],_docstring_special_substitutions:[1758,2,1,""],_docstring_substitutions:[1759,2,1,""],clear_parameters:[1760,2,1,""],copy:[1761,2,1,""],del_parameter:[1762,2,1,""],get_parameter:[1763,2,1,""],has_parameter:[1764,2,1,""],parameters:[1765,2,1,""],set_parameter:[1766,2,1,""],set_parameters:[1767,2,1,""]},"cfdm.core.ParametersDomainAncillaries":{__deepcopy__:[1768,2,1,""],clear_domain_ancillaries:[1769,2,1,""],clear_parameters:[1770,2,1,""],copy:[1771,2,1,""],del_domain_ancillary:[1772,2,1,""],del_parameter:[1773,2,1,""],domain_ancillaries:[1774,2,1,""],get_domain_ancillary:[1775,2,1,""],get_parameter:[1776,2,1,""],has_domain_ancillary:[1777,2,1,""],has_parameter:[1778,2,1,""],parameters:[1779,2,1,""],set_domain_ancillaries:[1780,2,1,""],set_domain_ancillary:[1781,2,1,""],set_parameter:[1782,2,1,""],set_parameters:[1783,2,1,""]},"cfdm.core.Properties":{__deepcopy__:[1784,2,1,""],_docstring_method_exclusions:[1785,2,1,""],_docstring_package_depth:[1786,2,1,""],_docstring_special_substitutions:[1787,2,1,""],_docstring_substitutions:[1788,2,1,""],clear_properties:[1789,2,1,""],copy:[1790,2,1,""],del_property:[1791,2,1,""],get_property:[1792,2,1,""],has_bounds:[1793,2,1,""],has_data:[1794,2,1,""],has_property:[1795,2,1,""],properties:[1796,2,1,""],set_properties:[1797,2,1,""],set_property:[1798,2,1,""]},"cfdm.core.PropertiesData":{__deepcopy__:[1799,2,1,""],_docstring_method_exclusions:[1800,2,1,""],_docstring_package_depth:[1801,2,1,""],_docstring_special_substitutions:[1802,2,1,""],_docstring_substitutions:[1803,2,1,""],clear_properties:[1804,2,1,""],copy:[1805,2,1,""],data:[197,3,1,""],del_data:[1806,2,1,""],del_property:[1807,2,1,""],get_data:[1808,2,1,""],get_property:[1809,2,1,""],has_bounds:[1810,2,1,""],has_data:[1811,2,1,""],has_property:[1812,2,1,""],properties:[1813,2,1,""],set_data:[1814,2,1,""],set_properties:[1815,2,1,""],set_property:[1816,2,1,""]},"cfdm.core.PropertiesDataBounds":{__deepcopy__:[1817,2,1,""],_docstring_method_exclusions:[1818,2,1,""],_docstring_package_depth:[1819,2,1,""],_docstring_special_substitutions:[1820,2,1,""],_docstring_substitutions:[1821,2,1,""],bounds:[198,3,1,""],clear_properties:[1822,2,1,""],copy:[1823,2,1,""],data:[199,3,1,""],del_bounds:[1824,2,1,""],del_data:[1825,2,1,""],del_geometry:[1826,2,1,""],del_interior_ring:[1827,2,1,""],del_property:[1828,2,1,""],get_bounds:[1829,2,1,""],get_data:[1830,2,1,""],get_geometry:[1831,2,1,""],get_interior_ring:[1832,2,1,""],get_property:[1833,2,1,""],has_bounds:[1834,2,1,""],has_data:[1835,2,1,""],has_geometry:[1836,2,1,""],has_interior_ring:[1837,2,1,""],has_property:[1838,2,1,""],interior_ring:[200,3,1,""],properties:[1839,2,1,""],set_bounds:[1840,2,1,""],set_data:[1841,2,1,""],set_geometry:[1842,2,1,""],set_interior_ring:[1843,2,1,""],set_properties:[1844,2,1,""],set_property:[1845,2,1,""]},"cfdm.core.abstract.Container":{__deepcopy__:[1846,2,1,""],_del_component:[1847,2,1,""],_get_component:[1848,2,1,""],_has_component:[1849,2,1,""],_set_component:[1850,2,1,""],copy:[1851,2,1,""]},"cfdm.core.abstract.Coordinate":{__deepcopy__:[1852,2,1,""],bounds:[201,3,1,""],clear_properties:[1853,2,1,""],copy:[1854,2,1,""],data:[202,3,1,""],del_bounds:[1855,2,1,""],del_data:[1856,2,1,""],del_property:[1857,2,1,""],get_bounds:[1858,2,1,""],get_data:[1859,2,1,""],get_property:[1860,2,1,""],has_bounds:[1861,2,1,""],has_data:[1862,2,1,""],has_property:[1863,2,1,""],properties:[1864,2,1,""],set_bounds:[1865,2,1,""],set_data:[1866,2,1,""],set_properties:[1867,2,1,""],set_property:[1868,2,1,""]},"cfdm.core.abstract.Parameters":{__deepcopy__:[1869,2,1,""],clear_parameters:[1870,2,1,""],copy:[1871,2,1,""],del_parameter:[1872,2,1,""],get_parameter:[1873,2,1,""],parameters:[1874,2,1,""],set_parameter:[1875,2,1,""],set_parameters:[1876,2,1,""]},"cfdm.core.abstract.ParametersDomainAncillaries":{__deepcopy__:[1877,2,1,""],clear_domain_ancillaries:[1878,2,1,""],clear_parameters:[1879,2,1,""],copy:[1880,2,1,""],del_domain_ancillary:[1881,2,1,""],del_parameter:[1882,2,1,""],domain_ancillaries:[1883,2,1,""],get_domain_ancillary:[1884,2,1,""],get_parameter:[1885,2,1,""],parameters:[1886,2,1,""],set_domain_ancillaries:[1887,2,1,""],set_domain_ancillary:[1888,2,1,""],set_parameter:[1889,2,1,""],set_parameters:[1890,2,1,""]},"cfdm.core.abstract.Properties":{__deepcopy__:[1891,2,1,""],clear_properties:[1892,2,1,""],copy:[1893,2,1,""],del_property:[1894,2,1,""],get_property:[1895,2,1,""],has_property:[1896,2,1,""],properties:[1897,2,1,""],set_properties:[1898,2,1,""],set_property:[1899,2,1,""]},"cfdm.core.abstract.PropertiesData":{__deepcopy__:[1900,2,1,""],clear_properties:[1901,2,1,""],copy:[1902,2,1,""],del_data:[1903,2,1,""],del_property:[1904,2,1,""],get_data:[1905,2,1,""],get_property:[1906,2,1,""],has_data:[1907,2,1,""],has_property:[1908,2,1,""],properties:[1909,2,1,""],set_data:[1910,2,1,""],set_properties:[1911,2,1,""],set_property:[1912,2,1,""]},"cfdm.core.abstract.PropertiesDataBounds":{__deepcopy__:[1913,2,1,""],bounds:[203,3,1,""],clear_properties:[1914,2,1,""],copy:[1915,2,1,""],data:[204,3,1,""],del_bounds:[1916,2,1,""],del_data:[1917,2,1,""],del_property:[1918,2,1,""],get_bounds:[1919,2,1,""],get_data:[1920,2,1,""],get_property:[1921,2,1,""],has_bounds:[1922,2,1,""],has_data:[1923,2,1,""],has_property:[1924,2,1,""],properties:[1925,2,1,""],set_bounds:[1926,2,1,""],set_data:[1927,2,1,""],set_properties:[1928,2,1,""],set_property:[1929,2,1,""]},cfdm:{ATOL:[266,0,1,""],Array:[207,1,1,""],AuxiliaryCoordinate:[208,1,1,""],Bounds:[209,1,1,""],CF:[267,0,1,""],CellMeasure:[210,1,1,""],CellMethod:[211,1,1,""],CompressedArray:[212,1,1,""],Configuration:[213,1,1,""],Constant:[214,1,1,""],Constructs:[215,1,1,""],CoordinateConversion:[216,1,1,""],CoordinateReference:[217,1,1,""],Count:[218,1,1,""],Data:[219,1,1,""],Datum:[220,1,1,""],DimensionCoordinate:[221,1,1,""],Domain:[222,1,1,""],DomainAncillary:[223,1,1,""],DomainAxis:[224,1,1,""],Field:[225,1,1,""],FieldAncillary:[226,1,1,""],GatheredArray:[227,1,1,""],Index:[228,1,1,""],InteriorRing:[229,1,1,""],LOG_LEVEL:[268,0,1,""],List:[230,1,1,""],NetCDFArray:[231,1,1,""],NumpyArray:[232,1,1,""],RTOL:[269,0,1,""],RaggedContiguousArray:[233,1,1,""],RaggedIndexedArray:[234,1,1,""],RaggedIndexedContiguousArray:[235,1,1,""],abspath:[270,0,1,""],atol:[271,0,1,""],configuration:[272,0,1,""],environment:[273,0,1,""],example_domain:[274,0,1,""],example_field:[275,0,1,""],example_fields:[276,0,1,""],implementation:[277,0,1,""],is_log_level_debug:[278,0,1,""],is_log_level_detail:[279,0,1,""],is_log_level_info:[280,0,1,""],log_level:[281,0,1,""],read:[282,0,1,""],rtol:[283,0,1,""],unique_constructs:[284,0,1,""],write:[285,0,1,""]}},objnames:{"0":["py","function","Python function"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","attribute","Python attribute"],"4":["py","data","Python data"]},objtypes:{"0":"py:function","1":"py:class","2":"py:method","3":"py:attribute","4":"py:data"},terms:{"02500000e":831,"0e30":692,"12500000e":831,"12kb":1935,"1e10":700,"1e30":1935,"220446049250313e":[271,272,283,1935],"22nd":[287,289],"2gb":285,"360_dai":[45,46,219,246,695,703,713,726,1560,1563,1566,1569,1935],"47500000e":831,"57500000e":831,"75000000e":831,"8kb":[1933,1935],"92500000e":831,"96920997e":[310,373,420,634,769,831,913,997,1090,1142,1195,1241,1935],"\u00ecnterior":[318,777,920,1366,1492,1597,1658,1827],"abstract":[0,1,205,207,212,218,227,228,230,231,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261,287,289],"boolean":[48,1935],"break":264,"byte":285,"case":[0,228,229,231,255,272,281,282,285,297,301,308,323,371,380,418,428,462,470,491,497,512,531,540,542,576,584,599,609,632,641,689,699,743,748,767,782,829,852,911,925,969,974,995,1007,1022,1088,1097,1123,1131,1140,1149,1193,1202,1239,1248,1272,1275,1284,1288,1291,1295,1299,1304,1311,1316,1321,1328,1333,1338,1346,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820,1935],"char":[285,1935],"class":[0,1,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,265,277,295,296,297,298,306,307,308,309,313,369,370,371,372,376,416,417,418,419,423,460,461,462,463,465,489,490,491,492,529,530,531,532,558,560,568,574,575,576,577,597,598,599,600,604,630,631,632,633,637,679,687,688,689,690,694,701,717,725,741,742,743,744,765,766,767,768,772,827,828,829,830,842,855,909,910,911,912,916,967,968,969,970,972,993,994,995,996,1011,1086,1087,1088,1089,1093,1138,1139,1140,1141,1145,1191,1192,1193,1194,1198,1237,1238,1239,1240,1244,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1461,1463,1470,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1636,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821,1931,1935],"default":[0,43,45,46,169,208,209,210,211,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,271,272,273,281,282,283,284,285,288,296,301,307,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,342,343,346,347,349,353,355,357,358,359,360,362,363,370,375,376,377,378,379,380,381,383,388,390,393,394,396,397,400,402,406,407,409,410,417,422,423,424,425,426,427,428,429,431,432,438,439,441,443,446,450,452,454,455,461,465,466,467,468,469,470,471,472,473,478,483,490,495,497,498,506,511,530,536,540,541,542,551,555,556,557,559,566,567,575,581,582,584,585,586,590,593,598,604,605,608,609,614,616,617,619,623,625,631,636,637,638,639,640,641,642,644,649,650,654,655,656,658,659,660,665,667,669,673,674,676,677,688,693,694,695,696,697,698,699,700,702,703,705,707,709,710,711,712,716,719,721,729,730,731,733,742,747,748,749,752,753,755,760,766,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,801,802,805,806,808,812,814,816,817,818,819,821,822,828,836,837,838,841,842,843,844,845,846,850,851,852,853,854,855,857,861,865,876,877,879,880,891,894,896,897,901,903,910,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,943,944,946,947,949,953,954,956,957,958,959,961,962,968,972,973,974,975,978,980,982,984,985,987,994,1004,1005,1006,1007,1010,1011,1012,1013,1014,1015,1016,1020,1021,1022,1024,1025,1026,1029,1033,1037,1038,1049,1050,1052,1053,1064,1067,1069,1070,1074,1075,1077,1079,1080,1087,1092,1093,1094,1095,1096,1097,1098,1100,1105,1106,1108,1109,1111,1115,1116,1118,1119,1128,1130,1131,1132,1139,1144,1145,1146,1147,1148,1149,1150,1152,1157,1158,1162,1163,1164,1166,1167,1168,1173,1175,1177,1181,1182,1184,1185,1192,1197,1198,1199,1200,1201,1202,1203,1205,1210,1211,1214,1215,1217,1218,1221,1223,1227,1228,1230,1231,1238,1243,1244,1245,1246,1247,1248,1249,1251,1256,1257,1259,1260,1262,1266,1267,1269,1270,1274,1284,1290,1295,1303,1308,1310,1311,1312,1320,1325,1327,1328,1329,1337,1342,1344,1345,1346,1347,1351,1357,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1381,1383,1385,1386,1390,1391,1392,1393,1394,1399,1400,1404,1408,1409,1410,1411,1412,1413,1414,1420,1422,1426,1430,1431,1432,1433,1434,1435,1451,1456,1459,1460,1462,1469,1472,1474,1477,1483,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1507,1509,1511,1512,1516,1522,1523,1525,1526,1530,1533,1536,1542,1549,1551,1556,1559,1560,1561,1562,1563,1564,1565,1572,1575,1580,1581,1585,1588,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1612,1614,1616,1617,1620,1626,1630,1631,1632,1633,1634,1635,1636,1637,1641,1644,1646,1650,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1671,1672,1674,1675,1679,1683,1684,1689,1693,1694,1695,1696,1697,1698,1699,1700,1702,1706,1709,1710,1712,1716,1720,1721,1722,1723,1724,1729,1730,1734,1738,1739,1740,1741,1742,1747,1748,1751,1757,1762,1763,1767,1772,1773,1775,1776,1780,1783,1786,1791,1792,1797,1801,1805,1806,1807,1808,1809,1814,1815,1819,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1840,1841,1843,1844,1847,1848,1854,1855,1856,1857,1858,1859,1860,1865,1866,1867,1872,1873,1876,1881,1882,1884,1885,1887,1890,1894,1895,1898,1902,1903,1904,1905,1906,1910,1911,1915,1916,1917,1918,1919,1920,1921,1926,1927,1928,1932,1935],"final":[264,265,1935],"float":[214,219,271,283,679,698,701,717,1935],"function":[0,1,45,46,60,61,64,65,66,67,68,78,79,80,83,84,86,88,89,91,214,249,264,265,272,274,276,282,291,293,294,302,304,305,310,323,364,365,367,368,373,380,411,412,414,415,420,428,456,457,458,459,470,485,487,488,502,514,517,518,522,523,527,528,540,569,570,572,573,584,594,595,596,609,626,628,629,634,641,678,680,682,684,686,699,736,737,739,740,748,761,763,764,769,782,823,824,825,826,831,843,852,905,907,908,913,925,963,964,965,966,984,987,989,991,992,997,1003,1007,1012,1022,1081,1082,1084,1085,1090,1097,1120,1122,1124,1125,1134,1136,1137,1142,1149,1186,1187,1189,1190,1195,1202,1232,1233,1235,1236,1241,1248,1271,1298,1300,1301,1315,1317,1318,1332,1334,1335,1349,1355,1388,1402,1424,1443,1445,1446,1471,1481,1514,1534,1552,1573,1586,1624,1648,1677,1687,1714,1732,1755,1768,1784,1799,1817,1846,1852,1869,1877,1891,1900,1913,1932],"import":[231,249,265,270,287,289,291,302,313,365,376,412,423,457,465,485,547,551,570,594,604,626,637,680,694,737,761,772,824,836,837,838,842,905,916,964,972,989,1004,1005,1006,1011,1082,1093,1122,1134,1145,1187,1198,1233,1244,1298,1315,1332,1349,1355,1388,1402,1424,1471,1481,1514,1534,1552,1573,1586,1624,1648,1677,1687,1714,1732,1755,1768,1784,1799,1817,1846,1852,1869,1877,1891,1900,1913,1930,1932],"int":[212,214,224,227,231,233,234,235,252,272,274,275,276,281,282,285,296,307,313,323,343,362,363,370,376,380,390,409,410,417,423,428,439,454,455,461,465,470,483,490,495,530,540,557,566,575,584,598,604,609,631,637,641,650,676,677,682,688,694,698,699,701,702,705,716,717,719,721,724,725,730,731,733,742,748,766,772,782,802,821,822,828,842,852,910,916,925,944,961,962,968,972,974,988,994,1011,1022,1038,1079,1080,1087,1093,1097,1106,1118,1119,1128,1139,1145,1149,1158,1184,1185,1192,1198,1202,1211,1230,1231,1238,1244,1248,1257,1269,1270,1274,1290,1303,1308,1320,1325,1337,1342,1351,1357,1404,1426,1451,1474,1483,1516,1536,1556,1575,1588,1620,1626,1650,1679,1686,1689,1716,1734,1751,1757,1786,1801,1819,1935],"long":[287,289,1935],"new":[0,2,3,4,5,6,7,8,9,11,15,20,21,26,35,36,37,38,44,45,46,52,53,54,56,62,63,69,70,71,73,77,81,82,85,87,95,96,107,112,117,122,123,124,125,126,127,128,129,130,131,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,264,265,267,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,287,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,495,496,497,504,505,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,564,565,566,567,568,569,570,572,574,575,576,577,578,579,580,581,582,583,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,685,687,688,689,690,692,694,698,699,700,701,702,704,705,706,707,709,710,711,716,717,719,721,722,723,724,725,726,727,728,730,733,734,735,736,737,739,740,741,742,743,744,745,746,747,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1124,1125,1126,1128,1129,1130,1131,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1308,1309,1310,1311,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1325,1326,1327,1328,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1342,1343,1344,1345,1346,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1555,1556,1557,1558,1564,1569,1570,1571,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1934,1935],"return":[0,2,7,8,9,11,15,20,21,26,27,28,35,36,37,38,43,44,45,46,48,52,53,54,56,62,63,69,70,71,73,77,81,82,85,87,95,96,101,102,107,112,117,122,127,132,133,138,139,144,145,150,155,156,157,158,159,160,161,162,163,164,165,166,169,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,197,198,199,200,201,202,203,204,213,265,267,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,290,292,295,296,297,298,299,300,301,303,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,366,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,413,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,486,489,490,491,492,493,494,495,496,497,498,499,504,506,509,510,511,519,520,524,526,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,564,565,566,567,568,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,627,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,681,685,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,719,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,762,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,906,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,990,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1083,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1123,1126,1127,1128,1129,1130,1131,1132,1133,1135,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1188,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1234,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1284,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1299,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1316,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1333,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1350,1351,1352,1353,1354,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1447,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1467,1468,1469,1470,1472,1473,1474,1475,1476,1477,1478,1479,1480,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1678,1679,1680,1681,1682,1683,1684,1685,1686,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1847,1848,1849,1850,1851,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1870,1871,1872,1873,1874,1875,1876,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1892,1893,1894,1895,1896,1897,1898,1899,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1935],"short":1935,"static":[1619,1620,1622],"super":265,"true":[0,2,7,9,11,15,21,27,28,38,43,48,52,54,56,69,71,73,85,87,96,101,102,107,112,117,122,127,132,133,138,139,144,145,150,155,157,158,159,161,163,164,165,169,174,176,177,180,182,183,187,188,190,191,192,197,198,199,200,201,202,203,204,208,209,210,211,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,272,273,275,278,279,280,282,284,285,290,301,310,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,334,335,336,337,338,339,340,341,343,344,346,347,348,349,353,354,355,356,357,358,359,360,361,362,363,364,373,375,376,377,378,379,380,381,383,385,386,387,390,393,394,396,397,398,399,400,402,406,407,408,409,410,411,420,422,423,424,425,426,427,428,429,431,432,434,435,436,437,439,441,442,443,444,445,446,450,451,452,453,454,455,456,465,466,467,469,470,471,472,474,475,476,477,480,481,484,497,536,540,541,542,543,544,545,546,547,548,549,550,551,552,553,563,565,566,581,582,584,585,586,587,588,590,591,592,593,604,608,609,612,613,616,617,618,619,622,623,625,634,636,637,638,639,640,641,642,644,646,647,648,650,654,655,656,658,659,660,661,662,663,665,667,669,673,674,675,676,677,678,691,692,693,694,695,696,697,699,700,702,703,709,712,713,714,715,716,726,727,728,730,733,734,747,748,749,750,752,753,754,755,759,760,769,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,795,796,797,798,799,800,802,803,805,806,807,808,812,813,814,815,816,817,818,819,820,821,822,823,831,841,842,843,846,851,852,853,856,857,859,861,862,863,871,876,877,879,880,881,882,883,884,891,894,895,896,897,901,903,904,913,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,935,936,937,938,939,940,941,942,944,946,947,948,949,953,954,955,956,957,958,959,960,961,962,963,972,973,974,975,976,977,980,982,983,984,985,987,988,997,1003,1007,1010,1011,1012,1014,1015,1016,1021,1022,1025,1026,1029,1031,1032,1033,1034,1035,1036,1038,1044,1049,1050,1052,1053,1054,1055,1056,1057,1064,1067,1068,1069,1070,1074,1075,1077,1078,1079,1080,1081,1090,1092,1093,1094,1095,1096,1097,1098,1100,1102,1103,1104,1106,1108,1109,1110,1111,1115,1116,1117,1118,1119,1120,1121,1131,1142,1144,1145,1146,1147,1148,1149,1150,1152,1154,1155,1156,1158,1162,1163,1164,1166,1167,1168,1169,1170,1171,1173,1175,1177,1181,1182,1183,1184,1185,1186,1195,1197,1198,1199,1200,1201,1202,1203,1205,1207,1208,1209,1211,1214,1215,1217,1218,1219,1220,1221,1223,1227,1228,1229,1230,1231,1232,1241,1243,1244,1245,1246,1247,1248,1249,1251,1253,1254,1255,1257,1259,1260,1261,1262,1266,1267,1268,1269,1270,1271,1284,1295,1297,1311,1314,1328,1331,1346,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1381,1382,1383,1384,1385,1386,1387,1390,1391,1392,1393,1394,1396,1397,1399,1400,1401,1408,1409,1410,1411,1412,1413,1414,1416,1417,1418,1420,1421,1422,1423,1430,1431,1433,1434,1436,1437,1438,1440,1441,1456,1458,1466,1468,1472,1477,1478,1479,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1507,1508,1509,1510,1511,1512,1513,1522,1523,1525,1526,1527,1528,1530,1531,1532,1533,1547,1548,1549,1551,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1580,1581,1582,1584,1585,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1612,1613,1614,1615,1616,1617,1618,1630,1633,1634,1637,1639,1641,1642,1644,1646,1647,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1671,1672,1673,1674,1675,1676,1683,1684,1685,1686,1693,1695,1696,1697,1699,1700,1701,1702,1704,1705,1706,1707,1709,1710,1712,1713,1720,1721,1722,1723,1724,1726,1727,1729,1730,1731,1738,1739,1740,1741,1742,1744,1745,1747,1748,1749,1762,1763,1764,1766,1767,1772,1773,1775,1776,1777,1778,1780,1781,1782,1783,1791,1792,1795,1797,1798,1805,1806,1807,1808,1809,1811,1812,1814,1815,1816,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1840,1841,1842,1843,1844,1845,1847,1848,1849,1850,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1865,1866,1867,1868,1872,1873,1875,1876,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1896,1898,1899,1902,1903,1904,1905,1906,1907,1908,1910,1911,1912,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1926,1927,1928,1929,1930,1931,1935],"try":[0,265],"while":264,AMS:[287,289],AXES:[466,471,474,480,1430,1433,1436,1440],Added:0,CMS:[0,264,288,1934],For:[213,214,215,217,226,229,245,254,255,265,281,282,285,287,289,520,541,543,551,562,702,1465,1930,1931,1935],Not:[219,1003],One:[211,240,285,866,867,868,873,874,875,885,886,887,888,889,890,1003,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1935],Such:[282,364,411,456,678,823,843,963,1003,1012,1081,1120,1186,1232,1271,1935],That:[238,244,249,272,705,1299],The:[0,7,8,9,11,12,14,15,17,19,20,21,23,25,26,27,28,30,35,36,37,38,40,42,48,52,53,54,56,57,59,62,63,69,70,71,73,74,76,77,81,82,85,87,92,94,95,96,98,100,101,102,104,107,109,111,112,114,116,117,119,121,132,133,135,138,139,141,144,145,147,155,156,157,158,159,160,161,162,163,164,165,166,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,197,198,199,200,201,202,203,204,205,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,264,267,270,271,272,274,275,276,278,279,280,281,282,283,284,285,287,288,289,290,295,296,297,298,299,300,301,303,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,327,328,329,330,331,332,333,340,341,342,343,345,346,347,349,350,351,352,353,355,356,357,358,359,361,362,363,364,366,369,370,371,372,374,375,376,377,378,379,380,381,382,383,386,387,388,389,391,392,393,394,395,396,397,400,401,402,403,404,405,406,408,409,410,411,413,416,417,418,419,421,422,423,424,425,426,427,428,429,430,431,432,436,437,438,440,441,442,443,446,447,448,449,450,451,453,454,455,456,460,461,462,463,464,465,466,467,468,469,470,471,472,473,476,477,478,479,480,481,482,483,484,489,490,491,492,493,494,495,496,497,498,499,504,519,520,529,530,531,532,533,534,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,556,557,558,559,560,561,562,564,565,566,567,568,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,591,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,619,620,621,622,623,624,625,627,630,631,632,633,635,636,637,638,639,640,641,642,643,644,647,648,649,651,652,653,654,655,656,657,658,659,660,664,665,666,667,668,669,670,671,672,673,675,676,677,678,679,681,685,687,688,689,690,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,716,717,719,721,722,723,724,725,726,727,728,729,730,731,733,734,735,741,742,743,744,745,746,747,748,749,750,751,752,753,755,756,757,758,762,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,786,787,788,789,790,791,792,799,800,801,802,804,805,806,808,809,810,811,812,814,815,816,817,818,820,821,822,823,827,828,829,830,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,904,906,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,941,942,943,944,945,946,947,949,950,951,952,953,954,955,956,957,958,960,961,962,963,967,968,969,970,971,972,973,974,975,977,978,979,980,981,982,984,985,986,987,988,990,993,994,995,996,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1078,1079,1080,1081,1083,1086,1087,1088,1089,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1103,1104,1105,1107,1108,1109,1111,1112,1113,1114,1115,1117,1118,1119,1120,1121,1123,1126,1127,1128,1129,1130,1131,1132,1133,1135,1138,1139,1140,1141,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1155,1156,1157,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1183,1184,1185,1186,1188,1191,1192,1193,1194,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1208,1209,1210,1212,1213,1214,1215,1216,1217,1218,1221,1222,1223,1224,1225,1226,1227,1229,1230,1231,1232,1234,1237,1238,1239,1240,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1254,1255,1256,1258,1259,1260,1262,1263,1264,1265,1266,1268,1269,1270,1271,1272,1273,1274,1275,1276,1278,1279,1280,1281,1282,1283,1284,1285,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1299,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1316,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1333,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1350,1351,1352,1353,1354,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1370,1371,1372,1373,1378,1380,1381,1383,1384,1385,1387,1389,1390,1391,1392,1393,1394,1397,1398,1399,1401,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1418,1419,1420,1421,1423,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1438,1439,1440,1441,1442,1450,1451,1452,1453,1454,1456,1457,1458,1460,1461,1462,1463,1464,1465,1467,1468,1469,1470,1472,1473,1474,1475,1476,1477,1478,1479,1480,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1496,1497,1498,1499,1504,1506,1507,1509,1510,1511,1513,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1531,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1569,1570,1571,1572,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1601,1602,1603,1604,1609,1611,1612,1614,1615,1616,1618,1619,1620,1621,1622,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1639,1642,1643,1644,1645,1647,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1669,1670,1671,1672,1673,1674,1676,1678,1679,1680,1681,1682,1683,1684,1686,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1704,1707,1708,1709,1710,1711,1713,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1727,1728,1729,1731,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1745,1746,1747,1749,1750,1751,1752,1753,1754,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1781,1785,1786,1787,1788,1789,1790,1791,1792,1795,1796,1798,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1812,1813,1814,1816,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1838,1839,1840,1841,1842,1843,1845,1847,1848,1849,1850,1851,1853,1854,1855,1856,1857,1858,1859,1860,1863,1864,1865,1866,1868,1870,1871,1872,1873,1874,1878,1879,1880,1881,1882,1883,1884,1885,1886,1888,1892,1893,1894,1895,1896,1897,1899,1901,1902,1903,1904,1905,1906,1908,1909,1910,1912,1914,1915,1916,1917,1918,1919,1920,1921,1924,1925,1926,1927,1929,1930,1931,1932,1933,1935],Their:1935,There:[217,245,499,562,732,1133,1287,1296,1313,1330,1348,1465,1935],These:[225,253,272,285,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1930,1935],Use:[9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,271,272,281,283,327,381,429,533,542,642,692,786,928,1025,1098,1150,1203,1249,1370,1393,1412,1496,1601,1661,1699,1723,1741,1808,1830,1859,1905,1920,1935],__class__:265,__data__:246,__docstring_method_exclusions__:[295,296,297,298,306,307,308,309,369,370,371,372,416,417,418,419,460,461,462,463,489,490,491,492,529,530,531,532,574,575,576,577,597,598,599,600,630,631,632,633,687,688,689,690,741,742,743,744,765,766,767,768,827,828,829,830,909,910,911,912,967,968,969,970,993,994,995,996,1086,1087,1088,1089,1138,1139,1140,1141,1191,1192,1193,1194,1237,1238,1239,1240,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821],__docstring_package_depth__:[295,296,297,298,306,307,308,309,369,370,371,372,416,417,418,419,460,461,462,463,489,490,491,492,529,530,531,532,574,575,576,577,597,598,599,600,630,631,632,633,687,688,689,690,741,742,743,744,765,766,767,768,827,828,829,830,909,910,911,912,967,968,969,970,993,994,995,996,1086,1087,1088,1089,1138,1139,1140,1141,1191,1192,1193,1194,1237,1238,1239,1240,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821],__docstring_substitutions__:[295,296,297,298,306,307,308,309,369,370,371,372,416,417,418,419,460,461,462,463,489,490,491,492,529,530,531,532,574,575,576,577,597,598,599,600,630,631,632,633,687,688,689,690,741,742,743,744,765,766,767,768,827,828,829,830,909,910,911,912,967,968,969,970,993,994,995,996,1086,1087,1088,1089,1138,1139,1140,1141,1191,1192,1193,1194,1237,1238,1239,1240,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821],__getitem__:685,__init__:[242,265,273],__main__:265,__module__:[296,297,307,308,370,371,417,418,461,462,490,491,530,531,575,576,598,599,631,632,688,689,742,743,766,767,828,829,910,911,968,969,994,995,1087,1088,1139,1140,1192,1193,1238,1239,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1650,1651,1679,1680,1689,1690,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820],__name__:265,__setitem__:681,__version__:1932,_atol:0,_auxiliary_coordin:608,_ax:[322,379,427,640,781,924,1096,1148,1201,1247],_axis_nam:[322,379,427,640,781,924,1096,1148,1201,1247],_check_valu:699,_config:[541,544],_construct_nam:608,_coordin:916,_create_titl:[379,640,851,1148,1201,1247],_custom:0,_custom_deep_copi:246,_customize_read_var:0,_del_compon:[1477,1478,1479,1848,1849,1850],_dimension_coordin:608,_docstring_method_exclus:[0,296,297,298,307,308,309,370,371,372,417,418,419,461,462,463,490,491,492,530,531,532,575,576,577,598,599,600,631,632,633,688,689,690,742,743,744,766,767,768,828,829,830,910,911,912,968,969,970,994,995,996,1087,1088,1089,1139,1140,1141,1192,1193,1194,1238,1239,1240,1274,1275,1276,1290,1291,1292,1303,1304,1305,1320,1321,1322,1337,1338,1339,1351,1352,1353,1357,1358,1359,1404,1405,1406,1426,1427,1428,1451,1452,1453,1474,1475,1476,1483,1484,1485,1516,1517,1518,1536,1537,1538,1556,1557,1558,1575,1576,1577,1588,1589,1590,1620,1621,1622,1626,1627,1628,1650,1651,1652,1679,1680,1681,1689,1690,1691,1716,1717,1718,1734,1735,1736,1751,1752,1753,1757,1758,1759,1786,1787,1788,1801,1802,1803,1819,1820,1821],_docstring_package_depth:[0,295,297,298,306,308,309,369,371,372,416,418,419,460,462,463,489,491,492,529,531,532,574,576,577,597,599,600,630,632,633,687,689,690,741,743,744,765,767,768,827,829,830,909,911,912,967,969,970,993,995,996,1086,1088,1089,1138,1140,1141,1191,1193,1194,1237,1239,1240,1273,1275,1276,1289,1291,1292,1302,1304,1305,1319,1321,1322,1336,1338,1339,1350,1352,1353,1356,1358,1359,1403,1405,1406,1425,1427,1428,1450,1452,1453,1473,1475,1476,1482,1484,1485,1515,1517,1518,1535,1537,1538,1555,1557,1558,1574,1576,1577,1587,1589,1590,1619,1621,1622,1625,1627,1628,1649,1651,1652,1678,1680,1681,1688,1690,1691,1715,1717,1718,1733,1735,1736,1750,1752,1753,1756,1758,1759,1785,1787,1788,1800,1802,1803,1818,1820,1821],_docstring_special_substitut:[0,295,296,298,306,307,309,369,370,372,416,417,419,460,461,463,489,490,492,529,530,532,574,575,577,597,598,600,630,631,633,687,688,690,741,742,744,765,766,768,827,828,830,909,910,912,967,968,970,993,994,996,1086,1087,1089,1138,1139,1141,1191,1192,1194,1237,1238,1240,1273,1274,1276,1289,1290,1292,1302,1303,1305,1319,1320,1322,1336,1337,1339,1350,1351,1353,1356,1357,1359,1403,1404,1406,1425,1426,1428,1450,1451,1453,1473,1474,1476,1482,1483,1485,1515,1516,1518,1535,1536,1538,1555,1556,1558,1574,1575,1577,1587,1588,1590,1619,1620,1622,1625,1626,1628,1649,1650,1652,1678,1679,1681,1688,1689,1691,1715,1716,1718,1733,1734,1736,1750,1751,1753,1756,1757,1759,1785,1786,1788,1800,1801,1803,1818,1819,1821],_docstring_substitut:[0,295,296,297,306,307,308,369,370,371,416,417,418,460,461,462,489,490,491,529,530,531,574,575,576,597,598,599,630,631,632,687,688,689,741,742,743,765,766,767,827,828,829,909,910,911,967,968,969,993,994,995,1086,1087,1088,1138,1139,1140,1191,1192,1193,1237,1238,1239,1273,1274,1275,1289,1290,1291,1302,1303,1304,1319,1320,1321,1336,1337,1338,1350,1351,1352,1356,1357,1358,1403,1404,1405,1425,1426,1427,1450,1451,1452,1473,1474,1475,1482,1483,1484,1515,1516,1517,1535,1536,1537,1555,1556,1557,1574,1575,1576,1587,1588,1589,1619,1620,1621,1625,1626,1627,1649,1650,1651,1678,1679,1680,1688,1689,1690,1715,1716,1717,1733,1734,1735,1750,1751,1752,1756,1757,1758,1785,1786,1787,1800,1801,1802,1818,1819,1820],_domain:842,_field_data_ax:0,_fill_valu:[0,325,327,381,429,642,784,786,927,928,1025,1098,1150,1203,1249,1370,1393,1412,1496,1601,1661,1699,1723,1741,1808,1830,1859,1905,1920],_fillvalu:[0,231,282,310,323,373,380,420,428,540,634,641,769,782,831,852,913,925,997,1022,1090,1097,1142,1149,1195,1202,1241,1248,1935],_func:[213,214,274,276],_get_compon:[1472,1478,1479,1847,1849,1850],_has_compon:[1472,1477,1479,1847,1848,1850],_identity_config:541,_ignor:[215,241,564,1467],_ignore_typ:540,_implement:[265,275,282,285],_kei:[322,379,427,640,781,924,1096,1148,1201,1247],_level:[322,379,427,469,608,640,781,851,924,1021,1096,1148,1201,1247],_omit_properti:[322,379,427,608,640,781,851,924,1096,1148,1201,1247],_parse_indic:[681,685],_prefix:[379,640,851,1148,1201,1247],_return_axis_map:540,_rtol:0,_set_compon:[1472,1477,1478,1847,1848,1849],_set_construct:[559,562,567,1462,1465,1469],_set_dataset_compli:[843,1012],_shape:[0,1076,1711],_titl:[322,379,427,469,608,640,781,851,924,1021,1096,1148,1201,1247],_transform_str:0,_unit:[0,325,327,381,429,642,784,786,927,928,1025,1098,1150,1203,1249,1370,1393,1412,1496,1601,1661,1699,1723,1741,1808,1830,1859,1905,1920],_use_arrai:[219,246],_use_data:[208,209,210,215,218,221,222,223,225,226,228,229,230,237,238,239,241,243,248,250,251,253,254,255,260,261,265],_view:[215,241],a_bound:1935,aas:1935,abbrevi:1931,abcdefghij:1935,abl:[221,248,287,289,1935],about:[210,239,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1931,1935],abov:[265,310,373,420,634,769,831,913,997,1090,1142,1195,1241,1935],abs:214,absenc:[265,1935],absolut:[270,271,272,283,323,328,380,382,428,430,470,540,584,609,641,643,699,708,748,782,787,852,856,925,929,1022,1028,1097,1099,1149,1151,1202,1204,1248,1250,1935],absolutis:270,abspath:0,accept:[0,265,298,309,372,419,463,492,520,532,538,577,600,633,690,744,768,830,832,833,836,837,838,839,840,844,847,848,849,850,859,912,970,996,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],access:[0,208,209,210,214,217,218,220,221,222,223,224,225,226,228,229,230,272,282,285,287,289],accord:[282,285,310,323,373,380,420,428,470,540,584,609,634,641,692,699,748,769,782,831,852,913,925,974,997,1022,1090,1097,1142,1149,1195,1202,1241,1248],accordingli:483,account:[265,470,609],achiev:[285,1935],acknowledg:264,across:[222,225,249,702,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1935],act:[214,349,400,402,446,619,665,667,669,755,808,853,891,893,894,895,896,897,949,985,1064,1066,1067,1068,1069,1070,1111,1173,1175,1177,1221,1223,1262,1634,1935],activ:285,actual:[249,543,564,1007,1467,1935],add:[264,265,287,289],added:[0,562,1465,1935],adding:1931,addit:[208,209,219,221,223,229,237,238,248,251,255,265,285,341,387,437,477,520,538,544,613,648,800,832,833,836,837,838,839,840,844,847,848,849,850,853,859,893,894,895,896,942,977,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1036,1066,1067,1068,1069,1104,1156,1209,1255,1634,1931,1932,1935],addition:[538,836,837,838,839,844,849,859,1000,1004,1005,1006,1008,1013,1019,1031],adher:[282,285,843,1012,1935],adjac:[363,822,962],adjust:281,affect:[265,853,1634,1935],after:[208,209,210,211,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,285,291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1754,1935],afterward:[1075,1710],again:1935,against:[285,538,836,837,838,839,844,849,859,1000,1004,1005,1006,1008,1013,1019,1031],aim:1931,air:[311,341,342,352,360,374,387,405,407,421,437,449,452,551,635,648,649,672,674,770,800,801,811,819,834,900,903,914,942,943,952,959,1001,1036,1037,1073,1077,1091,1104,1105,1114,1116,1143,1156,1157,1180,1182,1196,1209,1210,1226,1228,1242,1255,1256,1265,1267,1360,1380,1386,1389,1398,1400,1407,1419,1422,1486,1506,1512,1591,1611,1617,1629,1643,1646,1653,1670,1675,1692,1708,1712,1719,1728,1730,1737,1746,1748,1789,1796,1797,1804,1813,1815,1822,1839,1844,1853,1864,1867,1892,1897,1898,1901,1909,1911,1914,1925,1928,1935],air_potential_temperatur:[275,276,1002,1935],air_pressur:[274,275,276,311,352,360,374,405,407,421,449,452,635,672,674,770,811,819,834,900,903,914,952,959,1001,1073,1077,1091,1114,1116,1143,1180,1182,1196,1226,1228,1242,1265,1267,1360,1380,1386,1389,1398,1400,1407,1419,1422,1486,1506,1512,1591,1611,1617,1629,1643,1646,1653,1670,1675,1692,1708,1712,1719,1728,1730,1737,1746,1748,1789,1796,1797,1804,1813,1815,1822,1839,1844,1853,1864,1867,1892,1897,1898,1901,1909,1911,1914,1925,1928],air_temperatur:[215,225,253,275,276,284,287,289,341,342,376,387,520,637,648,649,800,801,942,943,1002,1007,1036,1037,1093,1104,1105,1145,1156,1157,1198,1209,1210,1244,1255,1256,1935],alan:264,algorithm:[285,1935],alia:[215,266,268,269,285,520,544,718,720],alias:0,all:[0,205,213,218,221,222,225,228,233,234,235,248,249,253,264,265,272,273,276,281,282,285,287,288,289,297,308,311,322,323,328,341,352,362,371,374,379,380,387,405,409,418,421,427,428,437,449,454,462,469,477,479,491,503,531,535,538,540,542,543,545,546,547,548,549,550,551,552,553,557,560,562,566,568,576,578,579,583,589,599,601,602,608,613,632,635,640,641,648,672,676,689,699,702,719,721,730,731,743,745,748,758,767,770,781,782,787,800,811,821,829,831,832,833,834,835,836,837,838,839,840,847,849,850,851,852,856,864,866,867,868,873,874,875,885,886,887,888,889,890,900,911,914,924,925,929,942,952,961,969,977,995,998,999,1000,1001,1002,1004,1005,1006,1008,1009,1017,1019,1020,1021,1022,1028,1036,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1073,1079,1088,1091,1096,1097,1104,1114,1118,1140,1143,1148,1149,1156,1180,1184,1193,1196,1201,1202,1209,1226,1230,1239,1242,1247,1248,1255,1265,1269,1275,1291,1304,1321,1338,1352,1358,1360,1380,1389,1398,1405,1407,1419,1427,1439,1452,1455,1458,1463,1465,1470,1475,1484,1486,1506,1517,1519,1520,1524,1529,1537,1539,1540,1557,1576,1578,1583,1589,1591,1611,1621,1627,1629,1643,1651,1653,1670,1680,1690,1692,1708,1717,1719,1728,1735,1737,1746,1752,1758,1760,1765,1769,1770,1774,1779,1787,1789,1796,1802,1804,1813,1820,1822,1839,1853,1864,1870,1874,1878,1879,1883,1886,1892,1897,1901,1909,1914,1925,1930,1932,1933,1935],allow:[0,209,263,265,282,285,287,289,301,343,362,363,390,409,410,439,454,455,497,541,650,676,677,702,716,719,721,730,731,733,802,814,821,822,944,961,962,1007,1038,1079,1080,1106,1118,1119,1123,1131,1158,1184,1185,1211,1230,1231,1257,1269,1270,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1614,1931,1935],allyn:264,alon:[287,289,1931,1935],along:[208,210,218,224,226,228,233,234,235,237,239,252,254,292,301,303,366,413,486,497,627,681,685,719,721,731,762,906,990,1003,1081,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],alpha:694,alreadi:[219,310,364,373,411,420,456,499,634,678,692,732,769,823,831,901,913,963,997,1003,1074,1081,1090,1120,1133,1142,1186,1195,1232,1241,1271,1287,1296,1313,1330,1348,1644,1709,1935],also:[208,209,210,211,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,243,244,245,246,247,248,249,250,251,252,253,254,255,257,258,259,260,261,265,285,288,295,303,306,310,323,328,343,362,363,369,380,416,428,460,489,520,529,538,574,584,597,630,641,687,741,748,762,765,769,782,787,802,821,822,827,832,833,839,840,847,848,849,852,853,906,909,913,925,929,944,961,962,967,990,993,998,999,1000,1007,1008,1009,1017,1018,1019,1022,1023,1075,1086,1097,1138,1149,1191,1202,1237,1248,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1634,1649,1678,1688,1710,1715,1733,1750,1756,1785,1800,1818,1931,1935],alt:1935,alter:[364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],altern:[223,251,345,350,391,392,401,403,440,447,541,615,620,651,652,653,666,668,670,751,756,804,809,869,872,892,898,945,950,979,986,1042,1045,1065,1071,1107,1112,1159,1160,1161,1174,1176,1178,1212,1213,1222,1224,1258,1263,1935],although:1935,altitud:[223,226,254,255,259,260,274,275,360,407,452,604,674,819,859,903,959,1031,1077,1116,1182,1228,1267,1386,1400,1422,1512,1617,1646,1675,1712,1730,1748,1797,1815,1844,1867,1898,1911,1928,1935],alwai:[265,281,282,285,384,433,520,538,544,645,832,833,836,837,838,839,840,844,847,848,849,850,852,858,859,870,881,893,894,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1022,1023,1030,1031,1043,1054,1066,1067,1101,1153,1206,1252,1395,1415,1638,1703,1725,1743,1793,1810,1935],ambigu:1935,amount:282,ams:[287,289],anaconda3:273,analysi:[287,289,1931],analyt:265,ancil:[274,275,1007,1935],ancillari:[0,36,205,209,215,222,223,225,226,238,241,250,251,253,254,282,285,553,578,581,583,584,585,587,590,591,606,609,610,623,844,848,853,924,1013,1018,1023,1096,1458,1519,1522,1524,1525,1527,1530,1531,1543,1545,1549,1631,1634,1694,1769,1772,1774,1775,1777,1780,1781,1878,1881,1883,1884,1887,1888],ani:[0,208,209,210,216,217,218,219,221,223,226,228,229,230,231,237,238,239,243,244,245,246,248,251,254,255,260,261,264,265,272,276,281,282,285,288,295,296,306,307,310,323,341,342,349,355,360,369,370,373,380,388,400,402,406,407,416,417,420,428,446,450,452,460,461,470,483,489,490,520,529,530,533,538,540,541,542,543,544,545,546,547,548,549,550,551,552,553,562,564,574,575,584,590,593,597,598,609,619,630,631,634,641,665,667,669,673,674,685,687,688,692,698,699,702,741,742,748,755,760,765,766,769,782,800,801,808,814,819,827,828,831,832,833,836,837,838,839,840,844,847,848,849,850,852,859,862,870,881,882,891,893,894,896,897,903,909,910,913,925,942,943,949,954,959,967,968,974,985,993,994,997,998,999,1000,1002,1003,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1022,1023,1028,1031,1034,1043,1054,1055,1064,1066,1067,1069,1070,1075,1077,1081,1086,1087,1090,1097,1111,1115,1116,1138,1139,1142,1149,1173,1175,1177,1181,1182,1191,1192,1195,1202,1221,1223,1227,1228,1237,1238,1241,1248,1262,1266,1267,1273,1274,1289,1290,1302,1303,1319,1320,1336,1337,1350,1351,1356,1357,1383,1386,1399,1400,1403,1404,1420,1422,1425,1426,1450,1451,1458,1465,1467,1473,1474,1482,1483,1509,1512,1515,1516,1530,1533,1535,1536,1555,1556,1559,1574,1575,1585,1587,1588,1614,1617,1619,1620,1625,1626,1631,1646,1649,1650,1672,1675,1678,1679,1688,1689,1694,1710,1712,1715,1716,1729,1730,1733,1734,1747,1748,1750,1751,1756,1757,1767,1780,1783,1785,1786,1797,1800,1801,1814,1815,1818,1819,1841,1844,1866,1867,1876,1887,1890,1898,1910,1911,1927,1928,1931,1935],anoth:[246,282,287,289,323,380,428,470,540,563,584,609,641,699,748,782,843,852,925,974,1012,1022,1097,1149,1202,1248,1466,1935],apart:1935,api:[0,264,265,285,287,1932,1935],appear:[285,364,411,456,541,678,823,870,881,893,894,963,1003,1043,1054,1066,1067,1081,1120,1186,1232,1271,1935],append:[0,285,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],appli:[0,205,211,217,219,240,245,265,272,282,285,295,298,300,306,309,310,313,369,372,373,376,416,419,420,423,460,463,465,469,489,492,496,529,532,533,541,554,557,566,574,577,597,600,604,630,633,634,637,687,690,692,694,706,741,744,765,768,769,772,827,830,831,842,843,909,912,913,916,967,970,972,993,996,997,1011,1012,1086,1089,1090,1093,1129,1138,1141,1142,1145,1191,1194,1195,1198,1237,1240,1241,1244,1273,1276,1279,1289,1292,1294,1302,1305,1309,1319,1322,1326,1336,1339,1343,1350,1353,1356,1359,1403,1406,1425,1428,1450,1453,1473,1476,1482,1485,1515,1518,1535,1538,1555,1558,1574,1577,1587,1590,1619,1622,1625,1628,1649,1652,1678,1681,1688,1691,1715,1718,1733,1736,1750,1753,1756,1759,1785,1788,1800,1803,1818,1821,1932,1935],applic:[45,46,210,223,239,251,287,289,310,323,373,380,420,428,540,544,634,641,699,769,782,831,852,913,925,997,1003,1022,1081,1090,1097,1142,1149,1195,1202,1241,1248,1931,1935],apply_mask:[0,1935],approach:[265,1935],appropri:[43,169,219,246,265,285,539,1935],arang:[7,9,11,15,21,38,52,54,56,69,71,73,85,96,107,112,117,155,157,158,159,161,163,164,165,174,176,177,180,182,183,187,190,191,197,198,199,200,201,202,203,204,219,314,318,330,334,337,353,357,409,454,676,681,685,692,702,719,721,731,773,777,789,793,796,812,816,917,920,931,935,938,953,956,1118,1184,1230,1269,1362,1366,1368,1372,1374,1377,1381,1385,1488,1492,1494,1498,1500,1503,1507,1511,1593,1597,1599,1603,1605,1608,1612,1616,1655,1658,1660,1663,1665,1668,1671,1674,1824,1827,1829,1832,1834,1837,1840,1843,1855,1858,1861,1865,1916,1919,1922,1926,1935],arbitrari:[560,568,1463,1470],arbitrarili:[222,225,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063],archiv:270,area:[63,82,179,186,210,211,229,239,240,255,274,275,423,425,431,435,437,438,451,465,480,483,537,546,557,558,566,568,833,844,859,999,1002,1007,1011,1013,1031,1410,1413,1417,1421,1440,1457,1461,1470,1930,1935],areacella:1935,areal:1935,arg:[271,281,283,310,343,362,363,364,373,390,409,410,411,420,439,454,455,456,634,650,676,677,678,769,802,821,822,823,913,944,961,962,963,1090,1106,1118,1119,1120,1142,1158,1184,1185,1186,1195,1211,1230,1231,1232,1241,1257,1269,1270,1271],argument:[0,208,209,210,211,214,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,272,520,533,538,541,551,554,730,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1935],aris:1935,arithmet:[214,1931],arrai:[0,9,12,13,14,15,17,18,19,21,23,24,25,28,38,40,41,42,44,45,46,48,54,57,58,59,71,74,75,76,85,92,93,94,96,98,99,100,102,107,109,110,111,112,114,115,116,117,119,120,121,124,125,126,129,130,131,133,139,145,157,159,161,164,176,182,187,190,191,194,195,196,197,199,202,204,205,206,208,209,210,211,212,214,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,243,246,248,250,251,252,253,254,255,256,260,261,263,265,275,282,285,287,289,310,312,322,323,327,343,362,363,364,373,375,379,380,381,390,409,410,411,420,422,427,428,429,439,454,455,456,484,486,493,494,495,496,497,498,499,538,540,542,634,636,640,641,642,650,676,677,678,679,685,691,692,693,698,699,700,702,704,705,706,707,708,710,711,716,719,721,729,731,733,734,735,769,771,781,782,786,802,821,822,823,831,844,849,851,852,866,867,868,873,874,875,885,886,887,888,889,890,901,913,915,924,925,928,944,961,962,963,997,1003,1010,1013,1019,1021,1022,1025,1038,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1074,1075,1080,1081,1090,1092,1096,1097,1098,1106,1118,1119,1120,1121,1123,1126,1127,1128,1129,1130,1131,1132,1133,1142,1144,1148,1149,1150,1158,1184,1185,1186,1195,1197,1201,1202,1203,1211,1230,1231,1232,1241,1243,1247,1248,1249,1257,1269,1270,1271,1272,1278,1279,1280,1282,1283,1284,1285,1286,1287,1288,1293,1294,1295,1296,1297,1299,1306,1307,1308,1309,1310,1311,1312,1313,1314,1316,1323,1324,1325,1326,1327,1328,1329,1330,1331,1333,1340,1341,1342,1343,1344,1345,1346,1347,1348,1361,1370,1390,1393,1408,1412,1487,1496,1559,1572,1592,1601,1631,1644,1654,1661,1693,1694,1699,1709,1710,1720,1723,1738,1741,1754,1805,1808,1823,1830,1854,1859,1902,1905,1915,1920,1930],array_lik:[208,209,210,218,219,221,223,226,228,229,230,237,238,239,243,246,248,251,254,255,260,261,355,406,450,673,814,954,1075,1115,1181,1227,1266,1383,1399,1420,1509,1614,1672,1710,1729,1747,1814,1841,1866,1910,1927],arraymixin:[207,232],articl:[287,289],asanyarrai:[122,290,484,1121,1297,1314,1331],ascertain:[835,1002],aspect:[225,253,265],assign:[214,263,685],associ:[217,221,222,225,245,248,538,542,849,866,867,868,873,874,875,885,886,887,888,889,890,1019,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1935],assum:[210,226,231,233,239,254,313,349,376,400,402,423,446,465,604,619,637,665,667,669,694,755,772,808,842,891,897,916,949,972,985,1011,1064,1070,1093,1111,1145,1173,1175,1177,1198,1221,1223,1244,1262,1933,1935],atmospher:[287,289],atmosphere_hybrid_height_coordin:[36,274,275,276,284,604,606,610,613,614,623,839,840,847,1007,1008,1009,1017,1543,1545,1549,1935],atol:[0,213,272,283,323,380,428,470,540,584,609,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],attempt:[0,836,837,838,1004,1005,1006],attribut:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,205,207,208,209,210,211,212,213,214,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,243,245,246,248,249,250,251,252,253,254,255,256,260,261,265,282,285,291,296,297,299,307,308,327,370,371,381,417,418,429,459,461,462,485,490,491,493,530,531,575,576,598,599,631,632,642,688,689,742,743,766,767,786,828,829,843,870,871,881,882,893,894,895,896,910,911,928,968,969,994,995,1003,1012,1025,1043,1044,1054,1055,1066,1067,1068,1069,1087,1088,1098,1122,1126,1139,1140,1150,1192,1193,1203,1238,1239,1249,1274,1275,1278,1290,1291,1293,1298,1303,1304,1306,1315,1320,1321,1323,1332,1337,1338,1340,1349,1351,1352,1354,1357,1358,1370,1393,1404,1405,1412,1426,1427,1451,1452,1474,1475,1483,1484,1496,1516,1517,1536,1537,1556,1557,1559,1575,1576,1588,1589,1601,1620,1621,1626,1627,1650,1651,1661,1679,1680,1689,1690,1699,1716,1717,1723,1734,1735,1741,1751,1752,1754,1757,1758,1786,1787,1801,1802,1808,1819,1820,1830,1859,1905,1920,1931],attributeerror:265,augment:214,author:[287,289],automat:[264,282,901,1074,1644,1709,1935],aux_lat:1935,aux_lon:1935,aux_nam:1935,auxiliari:[0,205,208,210,215,216,217,220,222,225,226,237,239,241,243,244,245,247,250,253,254,274,275,276,282,285,322,539,553,609,832,840,998,1007,1009,1458,1935],auxiliary_coordin:[8,156,215,241,282,538,542,553,554,840,1009,1458,1935],auxiliary_coordinate_lat:1935,auxiliary_coordinate_lon:1935,auxiliary_coordinate_nam:1935,auxiliarycoordin:[0,1,215,241,265,277,554,832,840,854,998,1009,1024,1631,1635,1694,1698,1935],auxiliarycoordinate0:[554,556,605,612,622,832,840,845,854,855,998,1009,1015,1024,1026,1460,1542,1547,1548,1631,1632,1635,1636,1639,1694,1696,1698,1700,1704,1935],auxiliarycoordinate1:[554,601,602,605,612,624,832,840,854,998,1009,1024,1539,1540,1542,1547,1550,1635,1698,1935],auxiliarycoordinate2:[832,840,854,998,1009,1024,1631,1635,1694,1698,1935],avail:[0,213,275,276,288,364,411,456,678,823,963,1003,1120,1186,1232,1271,1935],averag:[211,240],avoid:242,awar:265,axes:[0,208,209,210,211,221,223,224,226,227,230,237,238,239,240,248,251,252,254,303,343,362,363,390,409,410,439,454,455,459,465,466,469,470,471,474,480,483,494,537,541,542,548,556,562,563,650,676,677,702,716,718,719,720,721,730,731,733,762,802,821,822,835,842,844,845,855,861,901,902,906,944,961,962,1002,1003,1011,1013,1015,1026,1033,1038,1074,1075,1076,1079,1080,1106,1118,1119,1127,1158,1184,1185,1211,1230,1231,1257,1269,1270,1307,1324,1341,1430,1433,1436,1440,1457,1460,1465,1466,1631,1632,1636,1641,1644,1645,1694,1696,1700,1706,1709,1710,1711],axi:[205,208,209,210,211,215,216,218,221,222,224,225,227,228,229,230,237,238,239,240,241,244,248,250,252,253,255,282,285,317,329,336,341,342,343,356,362,363,390,409,410,439,454,455,466,480,483,537,538,539,541,542,548,549,550,552,553,554,556,649,650,676,677,702,716,719,721,730,731,733,776,788,795,800,801,802,815,821,822,835,844,845,849,850,855,861,901,902,919,930,937,942,943,944,955,961,962,972,974,990,1000,1007,1013,1015,1019,1020,1026,1033,1037,1038,1074,1076,1079,1080,1105,1106,1118,1119,1157,1158,1184,1185,1210,1211,1230,1231,1256,1257,1269,1270,1365,1371,1376,1384,1430,1440,1457,1458,1460,1491,1497,1502,1510,1596,1602,1607,1615,1631,1632,1636,1641,1644,1645,1657,1662,1667,1673,1694,1696,1700,1706,1709,1711,1826,1831,1836,1842,1935],axis_i:1935,axis_mod:[541,542,1935],axis_t:1935,axis_x:1935,axis_z:1935,axisi:1935,axist:1935,axisx:1935,back:1935,balanc:1931,bar:[285,311,341,342,352,360,374,387,405,407,421,449,452,544,551,635,648,649,672,674,701,717,725,770,800,801,811,819,834,852,864,865,871,881,882,894,895,896,900,903,914,942,943,952,959,1001,1022,1036,1037,1044,1054,1055,1067,1068,1069,1073,1077,1091,1104,1105,1114,1116,1143,1156,1157,1180,1182,1196,1209,1210,1226,1228,1242,1255,1256,1265,1267,1360,1380,1386,1389,1398,1400,1407,1419,1422,1472,1477,1478,1479,1486,1506,1512,1591,1611,1617,1629,1643,1646,1653,1670,1675,1692,1708,1712,1719,1728,1730,1737,1746,1748,1789,1796,1797,1804,1813,1815,1822,1839,1844,1847,1848,1849,1850,1853,1864,1867,1892,1897,1898,1901,1909,1911,1914,1925,1928,1935],bartholomew:[264,287,289],base:[1,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,265,285,543,1932,1935],basenam:1935,basi:[262,1931],basic:[1931,1935],becaus:[209,221,224,248,249,252,285,287,289,470,609,1935],becom:[285,1935],been:[43,45,46,169,264,265,282,285,287,289,300,310,311,314,315,316,317,318,319,320,321,324,326,327,329,330,331,332,333,335,340,346,347,348,363,373,374,377,378,381,383,385,386,393,394,396,397,398,399,420,421,424,425,426,429,431,432,434,435,436,441,443,444,466,467,468,471,472,473,474,475,476,496,498,533,554,556,557,566,578,579,581,582,585,586,587,588,605,612,616,617,618,634,635,638,639,642,644,646,647,654,655,656,658,659,660,661,662,663,695,696,697,703,706,707,709,710,711,712,713,714,715,729,745,747,749,750,752,753,754,769,770,773,774,775,776,777,778,779,780,783,785,786,788,789,790,791,792,794,799,805,806,807,822,831,834,843,844,845,846,855,857,861,863,870,876,877,879,880,881,883,884,893,894,913,914,917,918,919,920,921,922,923,926,928,930,931,932,933,934,936,941,946,947,948,962,973,975,976,980,982,983,990,997,1001,1012,1013,1014,1015,1016,1025,1026,1029,1032,1033,1035,1043,1049,1050,1052,1053,1054,1056,1057,1066,1067,1090,1091,1094,1095,1098,1100,1102,1103,1108,1109,1110,1129,1130,1132,1142,1143,1146,1147,1150,1152,1154,1155,1162,1163,1164,1166,1167,1168,1169,1170,1171,1195,1196,1199,1200,1203,1205,1207,1208,1214,1215,1217,1218,1219,1220,1241,1242,1245,1246,1249,1251,1253,1254,1259,1260,1261,1279,1294,1309,1310,1312,1326,1327,1329,1343,1344,1345,1347,1360,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1375,1378,1389,1391,1392,1393,1394,1396,1397,1407,1409,1410,1411,1412,1413,1414,1416,1417,1418,1430,1431,1432,1433,1434,1435,1436,1437,1438,1460,1472,1477,1478,1486,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1501,1504,1519,1520,1522,1523,1525,1526,1527,1528,1542,1547,1560,1561,1562,1563,1564,1565,1566,1567,1568,1572,1578,1580,1581,1582,1591,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1606,1609,1629,1631,1632,1633,1636,1637,1641,1642,1653,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1666,1669,1683,1684,1685,1692,1694,1695,1696,1697,1699,1700,1702,1705,1706,1707,1719,1721,1722,1723,1724,1726,1727,1737,1739,1740,1741,1742,1744,1745,1760,1762,1763,1764,1769,1770,1772,1773,1775,1776,1777,1778,1789,1791,1792,1795,1804,1806,1807,1808,1809,1811,1812,1822,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1835,1838,1847,1848,1849,1853,1855,1856,1857,1858,1859,1860,1862,1863,1870,1872,1873,1878,1879,1881,1882,1884,1885,1892,1894,1895,1896,1901,1903,1904,1905,1906,1907,1908,1914,1916,1917,1918,1919,1920,1921,1923,1924,1931,1935],befor:[249,285,360,407,452,566,590,593,674,760,819,894,896,903,959,1067,1069,1077,1116,1182,1228,1267,1386,1400,1422,1512,1530,1533,1585,1617,1646,1675,1712,1730,1748,1767,1780,1783,1797,1815,1844,1867,1876,1887,1890,1898,1911,1928],behav:[264,1935],behaviour:[0,213,263,265,292,303,366,413,486,551,557,566,627,681,685,762,906,990,1083,1135,1188,1234,1930,1932,1935],being:[0,265,272,285,292,303,313,323,350,366,376,380,401,403,413,423,428,447,465,486,540,557,561,604,620,627,637,641,666,668,670,681,685,694,699,722,756,762,772,782,809,842,852,870,881,892,893,894,898,906,916,925,950,972,986,990,1011,1022,1043,1054,1065,1066,1067,1071,1083,1093,1097,1112,1135,1145,1149,1174,1176,1178,1188,1198,1202,1222,1224,1234,1244,1248,1263,1464,1931,1932,1933,1935],belong:[228,231,234,235],below:[0,281,282,285,1935],bespok:[272,1935],best:285,beta:694,better:0,between:[0,205,271,283,285,313,323,376,380,423,428,465,470,540,542,584,604,609,637,641,694,699,748,772,782,842,852,916,925,972,1011,1022,1093,1097,1145,1149,1198,1202,1244,1248,1931,1935],beyond:1931,big:285,bin:273,binari:[214,285],bit:285,block:[218,233,285],blower:[287,289],bool:[208,209,210,211,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,273,278,279,280,282,284,285,301,310,312,313,322,323,334,335,336,337,338,339,340,341,343,344,348,353,354,355,357,358,359,360,361,362,363,364,373,375,376,379,380,384,385,386,387,390,398,399,406,407,408,409,410,411,420,422,423,427,428,433,434,435,436,437,439,442,444,445,450,452,453,454,455,456,465,469,470,474,475,476,477,497,536,540,541,542,543,544,545,546,547,548,549,550,552,553,565,569,584,588,590,591,593,604,608,609,612,613,618,623,625,634,636,637,640,641,645,646,647,648,650,661,662,663,673,674,675,676,677,678,691,692,693,694,699,700,702,713,714,715,716,730,733,734,736,748,750,754,760,769,771,772,781,782,793,794,795,796,797,798,799,800,802,803,807,812,813,814,816,817,818,819,820,821,822,823,831,841,842,843,851,852,853,861,862,863,881,882,883,884,894,896,901,903,904,913,915,916,924,925,935,936,937,938,939,940,941,942,944,948,953,954,956,957,958,959,960,961,962,963,972,974,976,977,983,984,987,997,1003,1007,1010,1011,1012,1021,1022,1030,1032,1033,1034,1035,1036,1038,1054,1055,1056,1057,1067,1069,1074,1075,1077,1078,1079,1080,1081,1090,1092,1093,1096,1097,1101,1102,1103,1104,1106,1110,1115,1116,1117,1118,1119,1120,1131,1142,1144,1145,1148,1149,1153,1154,1155,1156,1158,1169,1170,1171,1181,1182,1183,1184,1185,1186,1195,1197,1198,1201,1202,1206,1207,1208,1209,1211,1219,1220,1227,1228,1229,1230,1231,1232,1241,1243,1244,1247,1248,1252,1253,1254,1255,1257,1261,1266,1267,1268,1269,1270,1271,1284,1295,1311,1328,1346,1361,1374,1375,1376,1377,1378,1379,1381,1382,1383,1385,1386,1387,1390,1395,1396,1397,1399,1400,1401,1408,1415,1416,1417,1418,1420,1422,1423,1436,1437,1438,1456,1458,1468,1478,1487,1500,1501,1502,1503,1504,1505,1507,1508,1509,1511,1512,1513,1528,1530,1531,1533,1547,1549,1551,1559,1566,1567,1568,1582,1585,1592,1605,1606,1607,1608,1609,1610,1612,1613,1614,1616,1617,1618,1630,1634,1639,1641,1642,1644,1646,1647,1654,1665,1666,1667,1668,1669,1671,1672,1674,1675,1676,1685,1693,1703,1704,1705,1706,1707,1709,1710,1712,1713,1720,1725,1726,1727,1729,1730,1731,1738,1743,1744,1745,1747,1748,1749,1764,1767,1778,1780,1781,1783,1795,1797,1798,1805,1810,1811,1812,1814,1815,1816,1823,1834,1835,1836,1837,1838,1840,1841,1843,1844,1845,1849,1854,1861,1862,1863,1865,1866,1867,1868,1876,1887,1888,1890,1896,1898,1899,1902,1907,1908,1910,1911,1912,1915,1922,1923,1924,1926,1927,1928,1929],both:[217,220,245,247,265,692,702,1931,1935],bound:[0,265,274,275,276,277,310,313,314,319,320,323,324,325,328,331,332,334,338,339,341,342,343,353,358,359,362,363,433,645,769,772,773,778,779,782,783,784,787,790,791,793,797,798,800,801,802,812,817,818,821,822,842,858,913,916,917,921,922,925,926,927,929,932,933,935,939,940,942,943,944,953,957,958,961,962,1011,1030,1101,1153,1206,1252,1362,1368,1374,1381,1415,1488,1494,1500,1507,1593,1599,1605,1612,1638,1655,1660,1665,1671,1703,1725,1743,1793,1810,1824,1829,1834,1840,1855,1858,1861,1865,1916,1919,1922,1926],boundari:[229,255,363,822,962],bounds1:[313,772,916],bounds2:1935,bounds_arrai:1935,bounds_nam:[313,772,916],bradi:264,branch:264,breakdown:281,bridg:265,brief:264,bring:[499,732,1133,1287,1296,1313,1330,1348],broadcast:[219,685,1935],bryan:264,bug:[0,1932,1934],bugfix:264,build:[287,289,842,1011,1931],built:[214,287,289,293,294,304,305,367,368,414,415,458,459,487,488,502,517,518,527,528,569,572,573,595,596,628,629,682,684,686,736,739,740,763,764,825,826,907,908,965,966,991,992,1084,1085,1124,1125,1136,1137,1189,1190,1235,1236,1300,1301,1317,1318,1334,1335,1931,1935],bypass:1935,c_item:[558,1461],c_kei:[560,1463],c_valu:[568,1470],cach:[541,542,543,544,545,546,547,548,549,550,551,552,553,1458],calcul:[265,719,721,731,1930],calendar:[9,15,21,38,45,46,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,219,246,327,355,406,429,450,642,673,695,698,699,703,713,726,786,814,928,954,1025,1075,1098,1115,1150,1181,1203,1227,1249,1266,1370,1383,1393,1399,1412,1420,1496,1509,1560,1563,1566,1569,1601,1614,1661,1672,1699,1710,1723,1729,1741,1747,1808,1814,1830,1841,1859,1866,1905,1910,1920,1927,1935],call:[215,265,282,285,291,293,294,302,304,305,323,365,367,368,380,412,414,415,428,457,458,459,470,485,487,488,502,514,517,518,520,522,523,525,527,528,533,538,540,541,544,554,569,570,572,573,584,594,595,596,609,626,628,629,641,680,682,683,684,686,699,736,737,739,740,748,761,763,764,782,824,825,826,832,833,836,837,838,839,840,844,847,848,849,850,852,859,905,907,908,925,964,965,966,974,989,991,992,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1022,1023,1031,1082,1084,1085,1097,1122,1124,1125,1134,1136,1137,1149,1187,1189,1190,1202,1233,1235,1236,1248,1298,1300,1301,1315,1317,1318,1332,1334,1335,1349,1355,1388,1402,1424,1443,1445,1446,1448,1471,1481,1514,1534,1552,1573,1586,1624,1648,1677,1687,1694,1714,1732,1755,1768,1784,1799,1817,1846,1852,1869,1877,1891,1900,1913,1935],callabl:[298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],can:[0,205,208,209,210,213,214,215,216,217,218,219,221,223,225,226,228,229,230,231,237,238,239,241,243,244,245,246,248,251,253,254,255,260,261,264,265,267,272,281,282,284,285,287,289,310,342,354,355,373,388,406,420,438,450,478,520,538,542,544,545,546,547,548,549,550,551,552,614,634,649,673,695,696,697,703,709,712,713,714,715,724,726,727,728,769,801,813,814,831,832,833,836,837,838,839,840,844,847,848,849,850,859,865,866,867,868,873,874,875,885,886,887,888,889,890,901,913,943,954,978,997,998,999,1000,1003,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1037,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1074,1075,1081,1090,1105,1115,1142,1157,1181,1195,1210,1227,1241,1256,1266,1382,1383,1399,1420,1508,1509,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1613,1614,1631,1644,1672,1694,1709,1710,1729,1747,1814,1841,1866,1910,1927,1930,1931,1932,1933,1935],cannot:[210,239,249,285,1007],canon:[342,388,438,478,539,614,649,801,865,943,978,1037,1105,1157,1210,1256,1935],capabl:[265,1931],care:[214,291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1559,1754],caron:[287,289],carri:[45,46,219],cast:679,categoris:281,cater:[287,289],caus:[0,541],cdl:[0,282,287,289,1935],cell:[0,205,208,209,210,211,215,221,222,223,225,229,237,238,239,240,241,248,250,251,253,255,274,275,276,282,287,289,310,363,384,423,427,428,433,459,465,466,467,468,469,470,471,472,473,474,475,476,478,479,480,481,482,483,546,547,553,562,645,699,769,822,833,844,853,858,859,862,901,913,962,999,1000,1002,1007,1011,1013,1030,1031,1034,1074,1101,1153,1206,1252,1395,1415,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1458,1465,1634,1638,1644,1694,1703,1709,1725,1743,1793,1810,1930],cell_area:[210,1935],cell_measur:[20,160,215,241,282,285,437,438,553,1458,1935],cell_measure_a:282,cell_measure_o:282,cell_method1:1935,cell_method2:1935,cell_method:[26,162,205,215,241,459,547,553,557,561,566,1002,1011,1023,1458,1464,1935],cell_method_for_axis_0:[562,1465],cell_method_for_axis_1:[562,1465],cellmeasur:[1,215,241,265,277,546,833,999,1935],cellmeasure0:[437,438,546,833,901,999,1074,1644,1709,1935],cellmeasure1:546,cellmethod0:[63,82,179,186,537,547,557,558,560,561,566,1002,1023,1457,1461,1463,1464,1935],cellmethod1:[477,478,547,561,1002,1023,1464,1935],cellmethod:[1,63,82,179,186,215,241,265,277,537,547,557,558,562,566,568,1002,1011,1023,1457,1461,1465,1470,1935],central:[225,253,265,288,1935],certain:[0,301,497,1131,1284,1295,1311,1328,1346],cf_role:[274,275,276,342,388,438,539,649,801,864,865,943,1037,1105,1157,1210,1256,1935],cf_version:265,cfconvent:[205,287,289],cfdm:[0,1,264,265,288,289,1930,1931,1932,1934,1935],cfdm_tutorial_fil:[1933,1935],cfdmimplement:[0,265,275,277,282,285],cfdump:[287,289],cftime:[0,45,273,288,1935],chain:[541,1935],chang:[264,265,267,271,272,281,283,287,499,533,564,702,722,723,724,732,843,853,990,1012,1080,1133,1287,1296,1313,1330,1348,1467,1634,1932,1935],changelog:264,charact:[282,345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,869,872,878,891,892,897,898,899,945,949,950,951,979,981,985,986,1042,1045,1051,1064,1065,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264,1935],check:[0,282,298,309,323,372,380,419,428,463,492,532,540,563,577,600,609,633,641,690,744,768,782,830,843,852,912,925,970,974,996,1012,1022,1089,1097,1141,1149,1194,1202,1240,1248,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1466,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],checkout:264,checksum:285,child:[249,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818],choic:288,chosen:1003,chunk:285,chunksiz:[0,285,722,723,724],circumst:1935,class_low:[297,308,371,418,462,491,531,576,599,632,689,743,767,829,911,969,995,1088,1140,1193,1239,1275,1291,1304,1321,1338,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820],classic:[0,285,1935],classmethod:[249,297,301,308,371,418,462,491,497,531,576,599,632,689,698,743,767,829,853,911,969,995,1088,1131,1140,1193,1239,1275,1284,1291,1295,1304,1311,1321,1328,1338,1346,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1634,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820],clear:[213,285,722,723,724,1935],clear_coordin:[0,602,624,1540,1550],clear_domain_ancillari:[583,590,1524,1530,1774,1780,1883,1887],clear_filters_appli:[0,541,542,543,544,545,546,547,548,549,550,551,552,553,554,557,566],clear_paramet:[589,593,758,760,1529,1533,1583,1585,1765,1767,1779,1783,1874,1876,1886,1890],clear_properti:[321,352,360,378,405,407,426,449,452,639,672,674,780,811,819,846,900,903,923,952,959,1016,1073,1077,1095,1114,1116,1147,1180,1182,1200,1226,1228,1246,1265,1267,1367,1380,1386,1392,1398,1400,1411,1419,1422,1493,1506,1512,1598,1611,1617,1633,1643,1646,1659,1670,1675,1697,1708,1712,1722,1728,1730,1740,1746,1748,1791,1796,1797,1807,1813,1815,1828,1839,1844,1857,1864,1867,1894,1897,1898,1904,1909,1911,1918,1925,1928,1935],client:285,climat:[205,287,289],climatolog:[0,209,238,315,326,344,354,774,785,803,813,835,1002,1363,1369,1379,1382,1489,1495,1505,1508,1594,1600,1610,1613],climatological_time_ax:0,clone:264,closest:249,cls:[295,296,298,306,307,309,369,370,372,416,417,419,460,461,463,489,490,492,529,530,532,574,575,577,597,598,600,630,631,633,687,688,690,741,742,744,765,766,768,827,828,830,909,910,912,967,968,970,993,994,996,1086,1087,1089,1138,1139,1141,1191,1192,1194,1237,1238,1240,1273,1274,1276,1289,1290,1292,1302,1303,1305,1319,1320,1322,1336,1337,1339,1350,1351,1353,1356,1357,1359,1403,1404,1406,1425,1426,1428,1450,1451,1453,1473,1474,1476,1482,1483,1485,1515,1516,1518,1535,1536,1538,1555,1556,1558,1574,1575,1577,1587,1588,1590,1619,1620,1622,1625,1626,1628,1649,1650,1652,1678,1679,1681,1688,1689,1691,1715,1716,1718,1733,1734,1736,1750,1751,1753,1756,1757,1759,1785,1786,1788,1800,1801,1803,1818,1819,1821],cmip7:[321,333,340,361,378,383,386,408,426,432,436,453,639,644,647,675,780,792,799,820,846,857,863,904,923,934,941,960,1016,1029,1035,1078,1095,1100,1103,1117,1147,1152,1155,1183,1200,1205,1208,1229,1246,1251,1254,1268,1367,1373,1378,1387,1392,1394,1397,1401,1411,1414,1418,1423,1493,1499,1504,1513,1598,1604,1609,1618,1633,1637,1642,1647,1659,1664,1669,1676,1697,1702,1707,1713,1722,1724,1727,1731,1740,1742,1745,1749,1791,1792,1795,1798,1807,1809,1812,1816,1828,1833,1838,1845,1857,1860,1863,1868,1894,1895,1896,1899,1904,1906,1908,1912,1918,1921,1924,1929],cmip:285,cms:[281,282],code:[0,264,265,272,281,313,376,423,637,772,842,916,1011,1093,1145,1198,1244,1932,1934,1935],colect:[323,782,925],collaps:1931,collect:[218,222,225,228,233,234,235,250,253,257,258,562,1465,1935],colon:[341,437,800,942],column:[363,822,962,1935],com:[0,264,288,1934],combin:[218,227,228,230,233,234,235,249,272,276,285,1931,1935],command:[0,265,282,287,288,289,313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],comment:[211,240,282,313,376,423,465,604,637,772,842,870,871,881,882,893,894,895,896,916,972,1011,1043,1044,1054,1055,1066,1067,1068,1069,1093,1145,1198,1244,1935],commit:[264,265],committe:[287,289],common:[287,289,852,1022,1935],commonli:265,commut:1935,compar:[284,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1930,1935],comparison:[214,323,380,428,470,540,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],compil:[546,547,551,836,837,838,1004,1005,1006],complet:[220,247,1935],complex:1935,complianc:[282,287,289,843,1012,1931],compliant:[282,287,289,843,1012,1931,1935],complic:265,compon:[1,36,37,209,216,217,220,238,242,244,245,247,265,285,303,313,322,376,379,423,427,465,604,606,607,608,609,610,611,623,625,637,640,762,772,781,842,851,866,867,868,873,874,875,885,886,887,888,889,890,906,916,924,972,1011,1021,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1093,1096,1145,1148,1198,1201,1244,1247,1472,1477,1478,1479,1543,1544,1545,1546,1549,1551,1847,1848,1849,1850,1935],compos:[229,255,1935],comprehens:[0,287,289,1931],compress:[0,1,28,44,102,133,139,145,218,227,228,230,233,234,235,285,287,289,300,323,364,380,411,428,456,494,495,496,540,641,678,699,704,705,706,707,710,711,782,823,852,868,875,889,890,925,963,1022,1041,1048,1062,1063,1081,1097,1120,1127,1128,1129,1130,1149,1186,1202,1232,1248,1271,1279,1294,1307,1308,1309,1310,1324,1325,1326,1327,1341,1342,1343,1344,1345,1930],compressed_arrai:[212,227,233,234,235,494,704,705,706,734,1127,1307,1324,1341,1935],compressed_ax:[494,1127,1307,1324,1341],compressed_dimens:[212,227,1935],compressed_file_contigu:1003,compressed_file_index:1003,compressedarrai:[0,227,233,234,235],compression_ax:706,compression_typ:[212,300,496,1129,1279,1294,1309,1326,1343],compris:[224,252,284,341,387,437,477,557,613,648,800,864,942,977,1036,1104,1156,1209,1255,1930,1932],comput:[223,251,287,289,691,1935],computed_standard_nam:[604,1935],concaten:[313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],conceiv:[287,289],concis:1935,conda:288,confer:[287,289],configur:[0,271,281,282,283,285,323,341,380,387,428,437,470,477,520,538,540,544,584,609,613,641,648,699,748,782,800,832,833,839,840,847,848,849,852,925,942,974,977,998,999,1000,1007,1008,1009,1017,1018,1019,1022,1023,1036,1097,1104,1149,1156,1202,1209,1248,1255,1935],confirm:288,conform:[282,1935],conjunct:285,connect:[282,1935],consequ:[265,285],consid:[271,282,283,287,289,323,380,428,470,540,584,609,641,691,699,748,782,852,925,1022,1097,1149,1202,1248,1935],consider:1930,consist:[205,208,210,211,217,221,222,225,226,237,239,240,245,248,253,254,263,313,376,423,465,604,637,694,772,842,866,867,868,873,874,875,885,886,887,888,889,890,916,972,1011,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1093,1145,1198,1244,1935],constant:[0,1,213,271,272,281,283,1935],constitut:[323,380,428,540,609,641,782,852,925,974,1022,1097,1149,1202,1248,1935],constrain:[226,254],construct:[0,1,8,20,26,35,53,62,70,77,81,95,156,160,162,166,175,178,181,184,185,189,205,208,209,210,211,216,217,218,220,221,223,224,226,228,229,237,238,239,240,244,245,247,248,251,252,254,255,258,263,265,274,275,276,282,284,285,287,288,289,303,310,313,317,322,325,329,335,336,343,354,356,362,363,364,373,376,385,388,389,411,420,423,427,428,434,442,456,465,466,469,470,478,480,483,584,585,587,601,602,605,608,609,612,622,624,634,637,646,678,699,762,769,772,776,781,784,788,794,795,802,813,815,821,822,823,831,832,833,835,837,838,839,840,842,843,844,845,847,848,849,850,851,852,853,854,855,856,859,860,861,866,867,868,870,873,874,875,881,882,885,886,887,888,889,890,893,894,901,902,906,913,916,919,924,927,930,936,937,944,955,961,962,963,972,974,990,997,998,999,1000,1002,1003,1005,1006,1007,1008,1009,1011,1012,1013,1015,1017,1018,1019,1020,1021,1022,1023,1024,1026,1028,1031,1032,1033,1038,1039,1040,1041,1043,1046,1047,1048,1054,1055,1058,1059,1060,1061,1062,1063,1066,1067,1074,1075,1076,1079,1080,1081,1090,1093,1096,1102,1120,1142,1145,1154,1186,1195,1198,1207,1232,1241,1244,1253,1271,1365,1371,1375,1376,1382,1384,1396,1416,1430,1440,1491,1497,1501,1502,1508,1510,1525,1527,1539,1540,1542,1547,1548,1550,1596,1602,1606,1607,1613,1615,1631,1632,1634,1635,1636,1639,1640,1641,1644,1645,1657,1662,1666,1667,1673,1694,1696,1698,1700,1704,1705,1706,1709,1710,1711,1726,1744,1775,1777,1794,1811,1826,1831,1835,1836,1842,1862,1884,1907,1923,1930,1931],construct_item:[836,838,1004,1006,1935],construct_kei:[836,837,1004,1005,1935],construct_typ:[561,1464],contain:[0,2,27,43,45,46,101,122,127,132,138,144,150,169,192,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,223,224,225,226,228,229,230,231,236,237,238,239,240,241,243,244,245,246,247,248,251,252,253,254,255,256,257,259,260,261,265,270,272,275,276,277,282,285,287,288,289,298,301,303,309,312,313,328,345,349,350,351,355,372,375,376,382,391,392,395,400,401,402,403,404,406,419,422,423,430,440,446,447,448,450,463,465,470,492,497,532,536,543,547,548,551,577,600,604,609,615,619,620,621,633,636,637,643,651,652,653,657,664,665,666,667,668,669,670,671,673,690,694,708,744,751,755,756,757,762,768,771,772,787,804,808,809,810,814,830,842,853,856,869,872,876,878,879,883,891,892,897,898,899,906,912,915,916,929,945,949,950,951,954,970,972,979,981,985,986,990,996,1003,1007,1010,1011,1028,1042,1045,1049,1051,1052,1056,1064,1065,1070,1071,1072,1075,1089,1092,1093,1099,1107,1111,1112,1113,1115,1123,1131,1141,1144,1145,1151,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1181,1194,1197,1198,1204,1212,1213,1216,1221,1222,1223,1224,1225,1227,1240,1243,1244,1250,1258,1262,1263,1264,1266,1272,1276,1277,1280,1283,1284,1288,1292,1295,1299,1305,1311,1316,1322,1328,1333,1339,1346,1353,1359,1361,1383,1390,1399,1406,1408,1420,1428,1453,1456,1485,1487,1509,1518,1538,1558,1577,1590,1592,1614,1622,1628,1634,1652,1654,1672,1681,1691,1693,1710,1718,1720,1729,1736,1738,1747,1753,1759,1788,1803,1805,1814,1821,1823,1841,1854,1866,1902,1910,1915,1927,1933,1934,1935],content:[0,282,285,870,881,893,894,1043,1054,1066,1067,1930,1933,1935],contenxt:1935,context:[0,213,214,271,272,281,283,500,501,515,516,1935],contigu:[218,228,233,235,285,300,363,364,411,456,496,678,706,734,822,823,866,867,868,873,874,875,885,886,887,888,889,890,962,963,1003,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1081,1120,1129,1186,1232,1271,1279,1294,1309,1326,1343,1933,1935],contract:228,contribut:[226,254,287],control:[0,265,282,843,1012],convei:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],conveni:1935,convent:[0,1,205,206,225,231,253,262,263,264,265,267,282,285,286,287,288,289,310,363,373,420,634,769,822,831,852,870,881,893,894,896,913,962,997,1011,1022,1043,1054,1066,1067,1069,1090,1142,1195,1241,1930,1932,1934],convers:[0,36,45,46,214,216,223,244,251,285,606,609,610,613,614,623,1543,1545,1549],convert:[0,208,209,210,216,217,218,219,221,223,226,228,229,230,237,238,239,243,244,245,246,248,251,254,255,260,261,282,285,297,308,313,355,371,376,406,418,423,450,462,491,531,576,599,632,637,673,689,698,743,767,772,814,829,842,911,916,954,969,995,1011,1075,1088,1093,1115,1140,1145,1181,1193,1198,1227,1239,1244,1266,1275,1291,1304,1321,1338,1352,1358,1383,1399,1405,1420,1427,1452,1475,1484,1509,1517,1537,1557,1576,1589,1614,1621,1627,1651,1672,1680,1690,1710,1717,1729,1735,1747,1752,1758,1787,1802,1814,1820,1841,1866,1910,1927,1935],coord:[274,275,287,289,844,859,1007,1011,1013,1031,1930,1935],coordin:[0,1,36,205,208,209,210,215,216,220,221,222,223,224,225,226,229,237,238,239,241,244,247,248,250,251,252,253,254,255,265,274,275,276,282,285,287,289,322,344,354,389,538,539,542,553,601,604,605,606,608,609,610,612,613,614,622,623,624,781,803,813,832,835,839,842,843,844,847,849,850,862,866,868,873,875,885,886,889,890,901,998,1007,1008,1011,1012,1013,1017,1019,1020,1034,1039,1041,1046,1048,1058,1059,1062,1063,1074,1379,1382,1458,1539,1542,1543,1545,1547,1548,1549,1550,1610,1613,1631,1644,1694,1709],coordinate_convers:[37,217,245,604,606,610,623,1543,1545,1549,1935],coordinate_conversion_h:1935,coordinate_conversion_v:1935,coordinate_refer:[35,166,215,241,553,1458,1935],coordinateconvers:[36,217,245,265,277,606,610,623,1543,1545,1549,1935],coordinaterefer:[0,1,215,220,241,247,265,277,554,839,854,1008,1024,1635,1698,1935],coordinatereference0:[613,614,839,1008,1935],coordinatereference1:[554,613,614,839,854,1008,1024,1635,1698,1935],copi:[208,209,210,211,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,257,258,259,260,261,264,265,284,291,301,302,323,353,355,357,358,359,360,361,365,380,406,407,408,412,428,450,452,453,457,470,485,497,514,522,523,540,563,564,565,566,570,584,590,591,592,593,594,609,623,625,626,641,673,674,675,680,699,737,748,759,760,761,782,812,814,816,817,818,819,820,824,842,852,853,894,896,901,903,904,905,925,953,954,956,957,958,959,960,964,974,989,1007,1011,1022,1067,1069,1074,1075,1077,1078,1082,1097,1115,1116,1117,1122,1131,1134,1149,1181,1182,1183,1187,1202,1227,1228,1229,1233,1248,1266,1267,1268,1284,1295,1298,1311,1315,1328,1332,1346,1349,1355,1381,1383,1385,1386,1387,1388,1399,1400,1401,1402,1420,1422,1423,1424,1445,1446,1466,1467,1468,1471,1479,1481,1507,1509,1511,1512,1513,1514,1530,1531,1532,1533,1534,1549,1551,1552,1573,1584,1585,1586,1612,1614,1616,1617,1618,1624,1634,1644,1646,1647,1648,1671,1672,1674,1675,1676,1677,1687,1709,1710,1712,1713,1714,1729,1730,1731,1732,1747,1748,1749,1755,1766,1767,1768,1780,1781,1782,1783,1784,1797,1798,1799,1814,1815,1816,1817,1840,1841,1843,1844,1845,1846,1850,1852,1865,1866,1867,1868,1869,1875,1876,1877,1887,1888,1889,1890,1891,1898,1899,1900,1910,1911,1912,1913,1926,1927,1928,1929,1930],core:[0,1,207,208,209,210,211,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,232,265,701,717,725,1931],corner:1935,correct:[287,289,1935],correctli:[285,470,609],correspond:[45,205,208,209,210,211,215,216,218,220,221,222,223,225,226,228,229,230,233,234,235,237,238,239,240,241,243,244,247,248,250,251,253,254,255,257,258,259,260,261,272,281,282,285,298,303,309,323,343,362,363,372,380,419,428,463,470,492,509,532,538,540,542,577,584,600,609,613,614,633,641,690,699,716,744,748,762,768,782,802,821,822,830,849,852,870,881,893,894,906,912,925,944,961,962,970,974,996,1007,1019,1022,1038,1043,1054,1066,1067,1089,1097,1141,1149,1194,1202,1240,1248,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],could:[0,217,245,263,282,285,542,543,548,549,550,551,1935],count:[233,235,265,277,319,320,331,332,338,339,343,358,359,362,363,390,409,410,439,454,455,702,707,716,719,721,730,731,733,778,779,790,791,797,798,802,817,818,821,822,866,867,868,873,874,875,885,886,887,888,889,890,921,922,932,933,939,940,944,957,958,961,962,1003,1038,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1079,1080,1106,1118,1119,1158,1184,1185,1211,1230,1231,1257,1269,1270,1310,1344,1935],count_arrai:1935,count_properti:[1003,1935],count_vari:[233,235,1935],counterpart:265,cover:1935,coverag:0,creat:[249,264,265,274,282,285,287,289,295,296,306,307,313,369,370,376,416,417,423,460,461,465,489,490,505,529,530,561,574,575,597,598,604,630,631,637,687,688,694,698,741,742,765,766,772,827,828,842,853,870,881,893,894,895,896,901,909,910,916,967,968,972,993,994,1003,1007,1011,1043,1054,1066,1067,1068,1069,1074,1086,1087,1093,1138,1139,1145,1191,1192,1198,1237,1238,1244,1273,1274,1289,1290,1302,1303,1319,1320,1336,1337,1350,1351,1356,1357,1403,1404,1425,1426,1450,1451,1464,1473,1474,1482,1483,1515,1516,1535,1536,1555,1556,1574,1575,1587,1588,1619,1620,1625,1626,1634,1644,1649,1650,1678,1679,1688,1689,1709,1715,1716,1733,1734,1750,1751,1756,1757,1785,1786,1800,1801,1818,1819,1930,1931],creation:[0,205,206,265,287,289,1931],creation_command:[0,1935],criteria:[310,373,420,520,538,634,769,831,832,833,836,837,838,839,840,844,847,848,849,850,859,913,997,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1090,1142,1195,1241,1935],cross:[842,1011,1935],crs:1935,current:[271,272,281,283,285,341,387,437,477,613,648,723,800,942,977,1036,1104,1156,1209,1255],custom:[242,265],customis:1935,cut:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],dai:[45,46,63,82,179,186,219,246,275,276,537,557,558,566,568,836,837,838,840,842,844,847,850,1002,1004,1005,1006,1009,1011,1013,1017,1020,1457,1461,1470,1935],dap:1935,data1:[313,376,423,637,772,916,1011,1093,1145,1198,1244],data:[0,1,2,3,7,10,11,12,13,14,16,17,18,19,22,23,24,25,27,28,29,30,31,32,39,40,41,42,52,55,56,57,58,59,69,72,73,74,75,76,90,92,93,94,97,98,99,100,101,102,103,104,105,106,108,109,110,111,113,114,115,116,118,119,120,121,122,123,127,128,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,155,158,163,165,174,177,180,183,192,193,198,200,201,203,207,211,212,216,217,220,222,224,227,231,232,233,234,235,240,244,245,247,250,252,256,263,265,270,275,277,282,285,287,289,290,310,312,313,314,316,318,322,323,324,325,327,328,330,334,335,337,343,353,355,357,362,363,364,373,375,376,377,379,380,381,382,385,390,406,409,410,411,420,422,423,424,427,428,429,430,434,439,450,454,455,456,465,484,498,536,537,538,540,542,543,548,556,559,567,584,604,609,634,636,637,638,640,641,642,643,646,650,673,676,677,678,748,769,771,772,773,775,777,781,782,783,784,786,787,789,793,794,796,802,812,814,816,821,822,823,831,841,842,843,844,845,849,850,851,852,855,856,859,860,861,870,881,893,894,895,896,901,902,913,915,916,917,918,920,924,925,926,927,928,929,931,935,936,938,944,953,954,956,961,962,963,974,990,997,1003,1007,1010,1011,1012,1013,1014,1015,1019,1020,1021,1022,1025,1026,1028,1031,1032,1033,1038,1043,1054,1066,1067,1068,1069,1074,1075,1076,1079,1080,1081,1090,1092,1093,1094,1096,1097,1098,1099,1102,1106,1115,1118,1119,1120,1121,1123,1132,1142,1144,1145,1146,1148,1149,1150,1151,1154,1158,1181,1184,1185,1186,1195,1197,1198,1199,1201,1202,1203,1204,1207,1211,1227,1230,1231,1232,1241,1243,1244,1245,1247,1248,1249,1250,1253,1257,1266,1269,1270,1271,1277,1282,1297,1299,1312,1314,1316,1329,1331,1333,1347,1361,1362,1364,1366,1368,1370,1372,1374,1375,1377,1381,1383,1385,1390,1391,1393,1396,1399,1408,1409,1412,1416,1420,1456,1457,1460,1462,1469,1487,1488,1490,1492,1494,1496,1498,1500,1501,1503,1507,1509,1511,1592,1593,1595,1597,1599,1601,1603,1605,1606,1608,1612,1614,1616,1630,1631,1632,1636,1640,1641,1644,1645,1654,1655,1656,1658,1660,1661,1663,1665,1666,1668,1671,1672,1674,1693,1694,1695,1696,1699,1700,1705,1706,1709,1710,1711,1720,1721,1723,1726,1729,1738,1739,1741,1744,1747,1794,1805,1806,1808,1811,1814,1823,1824,1825,1827,1829,1830,1832,1834,1835,1837,1840,1841,1843,1854,1855,1856,1858,1859,1861,1862,1865,1866,1902,1903,1905,1907,1910,1915,1916,1917,1919,1920,1922,1923,1926,1927,1930,1931,1932],data_ax:1935,data_disk:1935,data_lik:[208,209,210,218,219,221,223,226,228,229,230,237,238,239,243,246,248,251,254,255,260,261,355,406,450,673,814,954,1075,1115,1181,1227,1266,1383,1399,1420,1509,1614,1672,1710,1729,1747,1814,1841,1866,1910,1927],data_memori:1935,data_nam:[313,376,423,637,772,842,916,1011,1093,1145,1198,1244],dataset:[0,231,265,282,285,287,288,289,310,373,420,634,769,831,843,866,867,868,873,874,875,885,886,887,888,889,890,913,997,1003,1012,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1090,1142,1195,1241,1277,1286,1930,1931],dataset_compli:[225,282,1935],datatyp:[0,285],date:[45,46],datetim:[45,46],datetime360dai:[45,1935],datetime_arrai:[46,1935],datetime_as_str:45,datetimegregorian:[45,1935],datum:[0,36,265,277,604,607,609,611,625,1544,1546,1551,1935],davi:[287,289],david:[264,287,289],debian:273,debug:[272,278,281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],decor:249,decoupl:265,decreas:[221,248],deduc:[210,239],deep:[208,209,210,211,213,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,284,299,312,360,361,375,407,408,422,452,453,464,493,504,519,536,565,580,590,591,593,603,636,674,675,693,746,760,771,819,820,841,853,894,896,903,904,915,959,960,971,1010,1067,1069,1077,1078,1092,1116,1117,1126,1144,1182,1183,1197,1228,1229,1243,1267,1268,1278,1293,1306,1323,1340,1354,1361,1386,1387,1390,1400,1401,1408,1422,1423,1429,1456,1468,1480,1487,1512,1513,1521,1530,1531,1533,1541,1559,1579,1585,1592,1617,1618,1630,1634,1646,1647,1654,1675,1676,1682,1693,1712,1713,1720,1730,1731,1738,1748,1749,1754,1761,1767,1771,1780,1781,1783,1790,1797,1798,1805,1815,1816,1823,1844,1845,1851,1854,1867,1868,1871,1876,1880,1887,1888,1890,1893,1898,1899,1902,1911,1912,1915,1928,1929,1935],deepcopi:[265,291,299,302,312,365,375,412,422,457,464,485,493,504,514,519,523,536,570,580,594,603,626,636,680,693,737,746,761,771,824,841,905,915,964,971,989,1010,1082,1092,1122,1126,1134,1144,1187,1197,1233,1243,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1355,1361,1388,1390,1402,1408,1424,1429,1446,1456,1471,1480,1481,1487,1514,1521,1534,1541,1552,1559,1573,1579,1586,1592,1624,1630,1648,1654,1677,1682,1687,1693,1714,1720,1732,1738,1754,1755,1761,1768,1771,1784,1790,1799,1805,1817,1823,1846,1851,1852,1854,1869,1871,1877,1880,1891,1893,1900,1902,1913,1915,1935],def:265,default_fill_valu:[219,246],defin:[0,45,46,205,207,212,213,214,217,219,220,222,224,225,229,236,245,247,249,250,252,253,255,265,275,282,285,287,289,295,296,297,298,301,303,306,307,308,309,310,323,345,350,351,366,369,370,371,372,373,380,391,392,395,401,403,404,413,416,417,418,419,420,428,440,447,448,460,461,462,463,470,489,490,491,492,497,520,529,530,531,532,538,541,542,544,546,547,549,550,551,552,574,575,576,577,584,597,598,599,600,609,615,620,621,627,630,631,632,633,634,641,651,652,653,657,664,666,668,670,671,681,685,687,688,689,690,692,699,700,722,741,742,743,744,748,751,756,757,762,765,766,767,768,769,782,804,809,810,827,828,829,830,831,832,833,836,837,838,839,840,844,847,848,849,850,852,859,869,872,878,892,898,899,906,909,910,911,912,913,925,945,950,951,967,968,969,970,974,979,981,986,990,993,994,995,996,997,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1022,1023,1031,1042,1045,1051,1065,1071,1072,1083,1086,1087,1088,1089,1090,1097,1107,1112,1113,1123,1131,1135,1138,1139,1140,1141,1142,1149,1159,1160,1161,1165,1172,1174,1176,1178,1179,1188,1191,1192,1193,1194,1195,1202,1212,1213,1216,1222,1224,1225,1234,1237,1238,1239,1240,1241,1248,1258,1263,1264,1272,1273,1274,1275,1276,1284,1288,1289,1290,1291,1292,1295,1299,1302,1303,1304,1305,1311,1316,1319,1320,1321,1322,1328,1333,1336,1337,1338,1339,1346,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821,1935],definit:[217,220,225,226,245,247,253,254,881,882,1054,1055],degre:[274,275,547,554,840,847,854,1007,1009,1017,1023,1024,1635,1698,1935],degree:[854,1024,1635,1698],degree_n:[854,1024,1635,1698],degrees_:[274,275,554,832,840,998,1007,1009,1935],degrees_east:[63,82,179,186,274,275,287,289,313,388,389,537,557,558,566,568,694,772,836,837,838,842,844,850,859,916,1004,1005,1006,1011,1013,1020,1031,1457,1461,1470,1694,1930,1935],degrees_n:[274,275,554,832,840,998,1007,1009,1935],degrees_north:[63,82,179,186,274,275,287,289,325,537,557,558,559,566,567,568,784,836,837,838,842,844,850,859,927,1004,1005,1006,1011,1013,1020,1031,1457,1461,1462,1469,1470,1631,1930,1935],del_ax:[471,474,475,480,1433,1436,1437,1440],del_bound:[7,52,69,155,163,174,180,198,201,203,324,334,353,783,793,812,926,935,953,1368,1374,1381,1494,1500,1507,1599,1605,1612,1660,1665,1671,1829,1834,1840,1858,1861,1865,1919,1922,1926],del_calendar:[697,703,713,726,1562,1563,1566,1569],del_climatolog:[0,326,344,354,785,803,813,1369,1379,1382,1495,1505,1508,1600,1610,1613],del_construct:[854,859,901,1024,1031,1074,1635,1639,1644,1698,1704,1709,1935],del_coordin:[601,612,622,1539,1547,1548],del_coordinate_convers:[610,623,1545,1549],del_data:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,314,327,335,355,381,385,406,429,434,450,642,646,673,773,786,794,814,917,928,936,954,1025,1032,1075,1098,1102,1115,1150,1154,1181,1203,1207,1227,1249,1253,1266,1362,1370,1375,1383,1393,1396,1399,1412,1416,1420,1488,1496,1501,1509,1593,1601,1606,1614,1655,1661,1666,1672,1699,1705,1710,1723,1726,1729,1741,1744,1747,1808,1811,1814,1824,1830,1835,1841,1855,1859,1862,1866,1905,1907,1910,1916,1920,1923,1927,1935],del_data_ax:[855,861,902,1026,1033,1076,1636,1641,1645,1700,1706,1711],del_datax:[855,861,902,1636,1641,1645],del_datum:[611,625,1546,1551],del_domain_ancillari:[578,585,587,591,1519,1525,1527,1531,1769,1775,1777,1781,1878,1884,1888],del_fill_valu:[709,714,727,1564,1567,1570],del_geometri:[329,336,356,788,795,815,930,937,955,1371,1376,1384,1497,1502,1510,1602,1607,1615,1662,1667,1673,1831,1836,1842],del_interior_r:[0,11,56,73,158,165,177,183,200,330,337,357,789,796,816,931,938,956,1372,1377,1385,1498,1503,1511,1603,1608,1616,1663,1668,1674,1832,1837,1843],del_measur:[431,435,438,451,1413,1417,1421],del_method:[472,475,477,478,481,1434,1437,1441],del_node_count:[331,338,358,790,797,817,932,939,957],del_paramet:[579,586,588,592,745,749,750,759,1520,1526,1528,1532,1578,1581,1582,1584,1760,1763,1764,1766,1770,1776,1778,1782,1870,1873,1875,1879,1885,1889],del_part_node_count:[332,339,359,791,798,818,933,940,958],del_properti:[311,333,340,342,361,374,383,386,408,421,432,436,453,635,644,647,649,675,770,792,799,801,820,834,857,863,865,904,914,934,941,943,960,1001,1029,1035,1037,1078,1091,1100,1103,1105,1117,1143,1152,1155,1157,1183,1196,1205,1208,1210,1229,1242,1251,1254,1256,1268,1360,1373,1378,1387,1389,1394,1397,1401,1407,1414,1418,1423,1486,1499,1504,1513,1591,1604,1609,1618,1629,1637,1642,1647,1653,1664,1669,1676,1692,1702,1707,1713,1719,1724,1727,1731,1737,1742,1745,1749,1789,1792,1795,1798,1804,1809,1812,1816,1822,1833,1838,1845,1853,1860,1863,1868,1892,1895,1896,1899,1901,1906,1908,1912,1914,1921,1924,1929,1935],del_qualifi:[473,476,479,482,1435,1438,1439,1442],del_siz:[975,976,988,1684,1685,1686],del_unit:[695,712,715,728,1560,1565,1568,1571],delet:[0,282,285,581,582,695,696,697,747,1522,1523,1560,1561,1562,1580,1762,1772,1773,1872,1881,1882,1935],delimit:[345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,869,872,878,891,892,897,898,899,945,949,950,951,979,981,985,986,1042,1045,1051,1064,1065,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264],delta:694,demonstr:[265,1935],denot:285,dep:288,depend:[0,208,210,216,221,223,226,231,237,239,244,248,251,254,273,282,1932,1935],deprec:[0,542,562,1465],depth:[0,296,307,370,417,461,490,530,557,566,575,598,631,688,742,766,828,910,968,994,1087,1139,1192,1238,1274,1290,1303,1320,1337,1351,1357,1404,1426,1451,1474,1483,1516,1536,1556,1575,1588,1620,1626,1650,1679,1689,1716,1734,1751,1757,1786,1801,1819],deriv:[274,1007,1935],describ:[205,208,210,211,221,222,223,225,226,229,237,239,240,248,250,251,253,254,255,265,282,285,313,376,423,465,494,520,533,538,544,554,557,566,604,637,772,832,833,836,837,838,839,840,842,844,847,848,849,850,859,916,972,998,999,1000,1004,1005,1006,1008,1009,1011,1013,1017,1018,1019,1020,1023,1031,1093,1127,1145,1198,1244,1307,1324,1341,1935],descript:[8,20,26,35,53,62,70,77,81,95,156,160,162,166,175,178,181,184,185,189,205,208,209,210,211,216,218,221,222,223,225,226,228,229,230,237,238,239,240,243,244,248,250,251,253,254,255,259,260,261,264,273,274,275,276,282,285,287,288,289,322,323,379,380,427,428,469,470,540,542,544,551,584,608,609,640,641,699,748,781,782,851,852,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,924,925,974,1021,1022,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1096,1097,1148,1149,1201,1202,1247,1248,1935],descriptor:[285,1935],design:[205,265,287,289,1931,1935],desir:[209,219,265,1935],detail:[265,272,274,275,276,279,281,282,285,287,289,301,323,363,380,428,470,497,538,540,542,584,609,641,699,748,782,822,849,852,925,962,974,1000,1019,1022,1097,1131,1149,1202,1248,1284,1295,1311,1328,1346],detect:285,determin:[297,308,371,418,462,491,531,576,599,632,689,743,767,829,911,969,995,1088,1140,1193,1239,1275,1291,1304,1321,1338,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820,1935],dev:[287,289],develop:1935,dict:[208,209,210,211,213,216,218,220,221,222,223,225,226,228,229,230,237,238,239,240,243,244,247,248,250,251,253,254,255,257,258,259,260,261,285,298,309,311,352,360,372,374,389,405,407,419,421,449,452,463,479,492,510,512,532,537,541,542,543,544,545,546,547,548,549,550,552,553,558,565,577,578,579,583,589,590,593,600,633,635,672,674,690,744,745,758,760,768,770,811,819,830,834,843,870,871,881,882,894,896,900,903,912,914,952,959,970,996,1001,1003,1012,1043,1044,1054,1055,1067,1069,1073,1077,1089,1091,1114,1116,1141,1143,1180,1182,1194,1196,1226,1228,1240,1242,1265,1267,1276,1292,1305,1322,1339,1353,1359,1360,1380,1386,1389,1398,1400,1406,1407,1419,1422,1428,1439,1453,1457,1458,1461,1468,1476,1485,1486,1506,1512,1518,1519,1520,1524,1529,1530,1533,1538,1558,1577,1578,1583,1585,1590,1591,1611,1617,1622,1628,1629,1643,1646,1652,1653,1670,1675,1681,1691,1692,1708,1712,1718,1719,1728,1730,1736,1737,1746,1748,1753,1759,1760,1765,1767,1769,1770,1774,1779,1780,1783,1788,1789,1796,1797,1803,1804,1813,1815,1821,1822,1839,1844,1853,1864,1867,1870,1874,1876,1878,1879,1883,1886,1887,1890,1892,1897,1898,1901,1909,1911,1914,1925,1928,1935],dict_item:[558,1461],dict_kei:[560,1463],dict_valu:[568,1470],dictionari:[208,209,210,211,216,218,220,221,222,223,225,226,228,229,230,237,238,239,240,242,243,244,247,248,250,251,253,254,255,257,258,259,260,261,272,285,298,309,360,372,407,419,452,463,492,505,506,511,532,533,541,542,543,544,545,546,547,548,549,550,551,552,553,554,565,577,590,593,600,633,674,690,744,760,768,819,830,843,894,896,903,912,959,970,996,1012,1067,1069,1077,1089,1116,1141,1182,1194,1228,1240,1267,1276,1292,1305,1322,1339,1353,1359,1386,1400,1406,1422,1428,1453,1458,1468,1476,1485,1512,1518,1530,1533,1538,1558,1577,1585,1590,1617,1622,1628,1646,1652,1675,1681,1691,1712,1718,1730,1736,1748,1753,1759,1767,1780,1783,1788,1797,1803,1815,1821,1844,1867,1876,1887,1890,1898,1911,1928,1935],didn:0,differ:[209,216,217,224,228,244,245,252,265,271,283,285,292,301,303,323,364,366,380,411,413,428,456,470,486,497,540,584,609,627,641,678,681,685,699,748,762,782,823,852,870,881,893,894,906,925,963,974,990,1003,1007,1022,1043,1054,1066,1067,1083,1097,1120,1123,1131,1135,1149,1186,1188,1202,1232,1234,1248,1271,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],dim:1935,dim_1:1935,dim_2:1935,dim_i:1935,dim_t:1935,dim_x:1935,dim_z:1935,dimens:[0,4,5,12,13,17,18,23,24,30,40,41,49,50,57,58,74,75,92,93,98,99,104,109,110,114,115,119,120,124,125,129,130,135,141,147,152,153,171,172,194,195,205,208,209,210,212,215,216,217,220,221,222,223,224,225,227,229,231,233,234,235,237,238,239,241,243,244,245,247,248,250,251,252,253,255,274,275,276,282,285,287,289,292,301,303,323,366,380,391,393,395,396,398,400,401,413,428,459,486,495,497,538,539,540,542,548,549,553,609,627,641,651,652,654,655,657,658,659,661,662,664,665,666,667,668,681,685,702,704,705,724,762,781,782,840,843,844,847,849,850,852,859,866,867,873,874,876,879,885,886,887,888,906,925,974,977,978,979,980,981,982,983,984,985,986,987,990,1003,1007,1009,1011,1012,1013,1017,1019,1020,1022,1031,1039,1040,1046,1047,1049,1052,1058,1059,1060,1061,1081,1083,1097,1123,1128,1131,1135,1149,1159,1160,1162,1163,1165,1166,1167,1169,1170,1172,1173,1174,1175,1176,1188,1202,1212,1214,1216,1217,1219,1221,1222,1234,1248,1272,1284,1288,1295,1299,1308,1311,1316,1325,1328,1333,1342,1346,1458,1930],dimension:[0,217,222,226,245,250,254,287,289,363,539,735,814,822,962,1614,1935],dimension_coordin:[53,175,215,241,282,538,541,542,553,554,557,561,566,840,842,1009,1011,1458,1464,1935],dimension_coordinate_i:1935,dimension_coordinate_t:1935,dimension_coordinate_x:1935,dimension_coordinate_z:1935,dimensioncoordin:[0,1,63,82,179,186,215,241,265,277,537,554,557,558,559,566,567,568,836,837,838,840,842,844,847,850,854,1004,1005,1006,1009,1011,1013,1017,1020,1024,1457,1461,1462,1469,1470,1635,1698,1935],dimensioncoordinate0:[63,82,179,186,217,245,537,557,558,559,560,561,566,567,601,602,604,605,609,612,622,624,836,837,838,840,842,847,850,1004,1005,1006,1009,1011,1017,1020,1457,1461,1462,1463,1464,1469,1539,1540,1542,1547,1548,1550,1935],dimensioncoordinate1:[63,82,179,186,217,245,537,545,554,557,558,560,561,566,605,612,622,836,837,838,840,842,844,847,850,854,1004,1005,1006,1009,1011,1013,1017,1020,1024,1076,1457,1461,1463,1464,1542,1547,1548,1635,1639,1698,1704,1711,1935],dimensioncoordinate2:[63,82,179,186,217,245,537,554,557,558,560,561,566,836,837,838,840,842,845,847,850,854,1004,1005,1006,1009,1011,1015,1017,1020,1024,1026,1033,1457,1461,1463,1464,1632,1635,1696,1698,1700,1706,1935],dimensioncoordinate3:[840,847,850,1009,1017,1020,1935],dimensioncoordinate99:[1639,1704],dimi:1935,dimt:1935,dimx:1935,direct:[263,1935],directli:[1007,1935],directori:[282,285,288,1933,1935],disabl:[272,281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],discov:1081,discret:[222,227,230,250,274,275,276,364,411,456,678,823,963,1003,1120,1186,1232,1271],discuss:[264,1935],disk:[0,231,265,282,285,287,289,499,732,1133,1287,1296,1313,1330,1348],displai:[0,273,282,285,322,323,379,380,427,428,469,470,540,584,608,609,640,641,699,748,781,782,843,851,852,924,925,974,1012,1021,1022,1096,1097,1148,1149,1201,1202,1247,1248,1935],distinct:1935,distribut:[226,254,1935],doc:[264,265],docstr:[249,265,295,296,297,298,306,307,308,309,369,370,371,372,416,417,418,419,460,461,462,463,489,490,491,492,529,530,531,532,574,575,576,577,597,598,599,600,630,631,632,633,687,688,689,690,741,742,743,744,765,766,767,768,827,828,829,830,909,910,911,912,967,968,969,970,993,994,995,996,1086,1087,1088,1089,1138,1139,1140,1141,1191,1192,1193,1194,1237,1238,1239,1240,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821],docstringrewritemeta:[0,265],document:[0,264,288,1932,1935],doe:[0,208,209,210,216,217,218,221,226,228,229,237,238,239,244,245,248,254,264,265,282,285,287,289,292,303,364,366,411,413,456,486,512,533,541,542,627,678,681,685,762,823,843,854,906,963,990,1003,1012,1024,1081,1083,1120,1135,1186,1188,1232,1234,1271,1635,1698,1931,1935],doi:[285,287,289],doing:1935,dom1:[864,865],domain:[0,1,205,208,209,210,211,215,217,218,221,223,224,226,228,229,237,238,239,240,241,245,248,251,252,254,255,274,275,282,284,285,287,289,466,480,483,537,538,539,541,542,548,549,550,552,553,556,578,581,583,584,585,587,590,591,609,924,972,974,990,1000,1007,1011,1013,1015,1018,1019,1020,1026,1027,1033,1038,1074,1075,1076,1080,1430,1440,1457,1458,1460,1519,1522,1524,1525,1527,1530,1531,1694,1696,1700,1701,1706,1709,1710,1711,1769,1772,1774,1775,1777,1780,1781,1878,1881,1883,1884,1887,1888,1931],domain_anc_a:1935,domain_anc_b:1935,domain_anc_orog:1935,domain_ancillari:[36,70,181,215,216,241,244,258,282,553,578,581,585,587,590,591,606,610,623,1458,1519,1522,1525,1527,1530,1531,1543,1545,1549,1769,1772,1775,1777,1780,1781,1878,1881,1884,1887,1888,1935],domain_ancillary_a:1935,domain_ancillary_b:1935,domain_ancillary_orog:1935,domain_ax:[1000,1935],domain_axi:[77,184,215,241,541,553,561,842,984,987,1011,1458,1464,1935],domain_axisi:1935,domain_axist:1935,domain_axisx:1935,domain_latitud:1935,domainancillari:[1,36,215,241,265,277,606,610,623,848,1018,1543,1545,1549,1935],domainancillary0:[545,578,583,590,604,848,1018,1519,1524,1530,1769,1774,1780,1878,1883,1887,1935],domainancillary1:[578,583,590,604,848,861,902,1018,1033,1076,1519,1524,1530,1641,1645,1706,1711,1769,1774,1780,1878,1883,1887,1935],domainancillary2:[216,244,258,578,581,583,585,587,590,591,604,848,1007,1018,1519,1522,1524,1525,1527,1530,1531,1769,1772,1774,1775,1777,1780,1781,1878,1881,1883,1884,1887,1888,1935],domainaxi:[0,1,63,82,179,186,215,241,265,277,537,554,557,558,566,568,842,850,854,1011,1020,1024,1457,1461,1470,1635,1698,1935],domainaxis0:[63,82,179,186,211,240,480,483,537,557,558,560,561,562,566,842,850,855,861,901,902,1002,1011,1015,1020,1026,1033,1074,1076,1440,1457,1461,1463,1464,1465,1636,1641,1644,1645,1696,1700,1706,1709,1711,1935],domainaxis1:[63,82,179,186,211,240,466,471,474,480,483,537,539,542,547,554,557,558,560,561,562,566,842,845,850,854,855,861,901,902,984,987,1011,1015,1020,1023,1024,1026,1033,1074,1075,1076,1430,1433,1436,1440,1457,1461,1463,1464,1465,1632,1635,1636,1641,1644,1645,1696,1698,1700,1706,1709,1710,1711,1935],domainaxis2:[63,82,179,186,211,240,480,537,539,542,547,554,557,558,560,561,566,842,850,854,901,1011,1015,1020,1023,1024,1026,1033,1038,1074,1075,1440,1457,1461,1463,1464,1635,1644,1696,1698,1700,1706,1709,1710,1935],domainaxis3:[539,547,561,716,850,1020,1023,1038,1464,1935],domainaxis4:539,don:0,done:[263,563,1466,1930,1935],dot:[296,297,307,308,370,371,417,418,461,462,490,491,530,531,575,576,598,599,631,632,688,689,742,743,766,767,828,829,910,911,968,969,994,995,1087,1088,1139,1140,1192,1193,1238,1239,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1650,1651,1679,1680,1689,1690,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820],doubl:1935,download:[288,1933,1935],drach:[287,289],draft:264,dsg:[274,275,276,364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],dtype:[0,214,219,231,285,290,313,376,423,484,637,679,694,698,772,842,916,1011,1093,1121,1145,1198,1244,1297,1314,1331,1935],due:282,dummi:1935,dump:[520,538,544,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1023,1031,1935],duplic:[0,285],durat:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],dure:[0,288,691,1935],each:[205,208,209,217,218,221,223,225,228,229,233,234,235,237,238,245,248,251,253,255,264,265,272,273,274,275,276,281,285,292,301,303,313,362,363,366,376,409,410,413,423,454,455,465,486,497,533,541,554,604,627,637,676,677,681,685,694,702,719,721,724,730,731,733,762,772,821,822,835,842,852,870,881,885,886,887,888,889,890,893,894,906,916,961,962,972,990,1003,1011,1022,1043,1054,1058,1059,1060,1061,1062,1063,1066,1067,1079,1080,1083,1093,1118,1119,1123,1131,1135,1145,1184,1185,1188,1198,1230,1231,1234,1244,1269,1270,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1931,1935],earlier:282,earth_radiu:[37,216,220,244,247,257,258,582,586,588,590,592,593,604,607,611,625,747,749,750,759,760,1523,1526,1528,1530,1532,1533,1544,1546,1551,1580,1581,1582,1584,1585,1762,1763,1764,1766,1767,1773,1776,1778,1780,1782,1783,1872,1873,1875,1876,1882,1885,1887,1889,1890,1935],easi:1935,easier:[1931,1935],easiest:1935,easili:[282,285,1935],eastward_wind:[275,276,1286,1935],eaton:[287,289],edit:[264,285,1935],edu:[205,287,289],effect:[0,272,1935],effici:[285,364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1931,1935],either:[211,222,224,240,250,252,265,272,281,287,289,291,298,299,301,309,372,419,463,480,485,492,493,497,512,532,539,577,600,633,690,692,744,768,830,912,970,996,1089,1122,1123,1126,1131,1141,1194,1240,1272,1276,1278,1284,1288,1292,1293,1295,1298,1299,1305,1306,1311,1315,1316,1322,1323,1328,1332,1333,1339,1340,1346,1349,1353,1354,1359,1406,1428,1440,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1754,1759,1788,1803,1821,1935],elaps:1935,element:[3,6,10,14,16,19,22,25,29,32,39,42,47,51,55,59,72,76,90,94,97,100,103,106,108,111,113,116,118,121,123,126,128,131,134,137,140,143,146,149,151,154,170,173,193,196,205,212,220,222,224,225,227,228,231,233,234,235,247,250,252,253,263,265,282,292,303,310,313,323,366,373,376,380,413,420,423,428,465,486,533,540,554,557,566,584,604,609,627,634,637,641,652,664,668,681,685,691,692,694,698,699,700,701,717,719,721,725,731,735,748,762,769,772,782,831,842,843,852,906,913,916,925,972,974,990,997,1003,1011,1012,1022,1083,1090,1093,1097,1135,1142,1145,1149,1160,1172,1176,1188,1195,1198,1202,1234,1241,1244,1248,1935],ellipsi:[301,497,1123,1131,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],els:[265,380,506,511,540,555,641,1097,1149,1202,1248,1459,1935],embed:[298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],emerg:[281,1935],emploi:[282,291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1559,1754,1930,1935],empti:[231,282,284,300,328,345,350,351,382,391,392,395,401,403,404,430,440,447,448,496,510,533,554,557,566,615,620,621,643,651,652,653,657,664,666,668,670,671,702,704,706,708,751,756,757,787,804,809,810,843,856,869,872,878,892,898,899,929,945,950,951,979,981,986,1002,1012,1028,1042,1045,1051,1065,1071,1072,1099,1107,1112,1113,1129,1151,1159,1160,1161,1165,1172,1174,1176,1178,1179,1204,1212,1213,1216,1222,1224,1225,1250,1258,1263,1264,1279,1294,1309,1326,1343,1935],enabl:[0,287,289,1935],encod:[205,265,287,289,1003,1931,1935],encount:[843,1012,1935],end:[282,1931],endian:[285,1935],enforc:[287,289,1931],enhanc:[0,287,289,1934],enough:1935,ensur:[0,242,265,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063],enter:[500,515],entireti:[313,376,423,637,772,842,916,1011,1093,1145,1198,1244],entri:[264,533,554],environ:[0,285,287,289],epsilon:[271,283,1935],equal:[0,87,188,271,272,281,282,283,285,310,364,373,387,411,420,456,544,566,634,648,678,692,769,823,831,864,913,963,997,1003,1036,1081,1090,1104,1120,1142,1156,1186,1195,1209,1232,1241,1255,1271,1701],equat:1935,equival:[0,7,9,11,15,21,38,52,54,56,69,71,73,85,87,96,107,112,117,155,157,158,159,161,163,164,165,174,176,177,180,182,183,187,188,190,191,197,198,199,200,201,202,203,204,208,209,210,211,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,272,281,282,285,299,312,323,330,375,380,422,428,464,470,493,504,519,520,536,540,541,564,580,584,603,609,636,641,692,693,699,746,748,771,782,789,832,833,840,841,847,848,852,915,925,931,971,974,998,999,1009,1010,1017,1018,1022,1023,1092,1097,1126,1144,1149,1197,1202,1243,1248,1278,1293,1306,1323,1340,1354,1361,1372,1390,1408,1429,1456,1467,1480,1487,1498,1521,1541,1559,1579,1592,1603,1630,1654,1663,1682,1693,1720,1738,1754,1761,1771,1790,1805,1823,1832,1851,1854,1871,1880,1893,1902,1915,1935],erron:0,error:[0,285,1935],especi:1935,establish:1935,estim:[226,254,1935],etc:[264,1931,1935],evalu:[219,691],even:[0,285,312,375,422,636,771,844,853,870,881,893,894,915,1007,1010,1013,1043,1054,1066,1067,1092,1144,1197,1243,1361,1390,1408,1487,1592,1631,1634,1654,1693,1694,1720,1738,1805,1823,1854,1902,1915,1930,1935],event:1935,everi:[263,274,275,276,1935],exact:[0,542],exactli:[221,248,559,567,692,1000,1003,1462,1469,1935],exampl:[0,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,62,63,69,70,71,72,73,74,75,76,77,81,82,85,87,90,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,236,237,238,239,240,241,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,263,267,270,271,272,273,274,275,276,277,281,282,283,284,285,287,288,289,290,291,295,299,300,301,302,303,306,310,311,312,313,314,315,316,317,318,319,320,321,323,324,325,326,327,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,369,373,374,375,376,377,378,380,381,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,416,420,421,422,423,424,425,426,428,429,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,460,464,465,466,467,468,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,489,493,494,495,496,497,498,499,520,529,533,536,537,538,539,540,542,543,544,545,546,547,548,549,550,551,552,553,554,556,557,558,559,560,561,562,564,566,567,568,570,574,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,597,601,602,603,604,605,606,607,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,630,634,635,636,637,638,639,641,642,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,683,685,687,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,719,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,737,741,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,765,769,770,771,772,773,774,775,776,777,778,779,780,782,783,784,785,786,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,827,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,909,913,914,915,916,917,918,919,920,921,922,923,925,926,927,928,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,967,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,993,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1086,1090,1091,1092,1093,1094,1095,1097,1098,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1138,1142,1143,1144,1145,1146,1147,1149,1150,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1191,1195,1196,1197,1198,1199,1200,1202,1203,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1237,1241,1242,1243,1244,1245,1246,1248,1249,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1273,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1289,1293,1294,1295,1296,1297,1298,1302,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1319,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1336,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1354,1355,1356,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1450,1456,1457,1458,1460,1461,1462,1463,1464,1465,1467,1469,1470,1471,1472,1473,1477,1478,1479,1480,1481,1482,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1555,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1624,1625,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1682,1683,1684,1685,1686,1687,1688,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1754,1755,1756,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1933,1935],example_domain:[275,276,836,837,838],example_field:[0,63,82,87,179,186,188,274,277,284,325,388,389,437,438,477,478,537,558,560,561,568,613,614,708,732,784,831,835,842,843,844,853,856,859,927,997,1004,1005,1006,1011,1012,1013,1015,1026,1028,1031,1033,1076,1456,1457,1458,1461,1463,1464,1467,1470,1634,1694,1696,1700,1701,1706,1711,1930,1935],exc_typ:[501,516],exc_valu:[501,516],exce:1935,except:[0,224,252,265,272,282,285,314,315,316,317,318,319,320,321,323,324,325,326,327,329,330,331,332,333,346,347,377,378,380,381,383,393,394,396,397,424,425,426,428,429,431,432,441,443,466,467,468,470,471,472,473,498,540,556,559,562,567,581,582,584,585,586,605,609,616,617,638,639,641,642,644,654,655,656,658,659,660,695,696,697,699,703,705,707,709,710,711,712,729,747,748,749,752,753,773,774,775,776,777,778,779,780,782,783,784,785,786,788,789,790,791,792,805,806,836,837,838,844,845,846,850,852,854,855,857,876,877,879,880,901,917,918,919,920,921,922,923,925,926,927,928,930,931,932,933,934,946,947,973,974,975,980,982,1004,1005,1006,1013,1014,1015,1016,1020,1022,1024,1025,1026,1029,1049,1050,1052,1053,1074,1094,1095,1097,1098,1100,1108,1109,1130,1132,1146,1147,1149,1150,1152,1162,1163,1164,1166,1167,1168,1199,1200,1202,1203,1205,1214,1215,1217,1218,1245,1246,1248,1249,1251,1259,1260,1310,1312,1327,1329,1344,1345,1347,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1391,1392,1393,1394,1409,1410,1411,1412,1413,1414,1430,1431,1432,1433,1434,1435,1460,1462,1465,1469,1472,1477,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1522,1523,1525,1526,1542,1560,1561,1562,1563,1564,1565,1572,1580,1581,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1631,1632,1633,1635,1636,1637,1644,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1683,1684,1694,1695,1696,1697,1698,1699,1700,1702,1709,1721,1722,1723,1724,1739,1740,1741,1742,1762,1763,1772,1773,1775,1776,1791,1792,1806,1807,1808,1809,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1847,1848,1855,1856,1857,1858,1859,1860,1872,1873,1881,1882,1884,1885,1894,1895,1903,1904,1905,1906,1916,1917,1918,1919,1920,1921,1931,1935],exclud:[229,231,255,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1931,1935],exclus:[217,245,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818],execut:[213,214,313,376,423,637,702,772,842,916,1011,1093,1145,1198,1244,1935],exist:[0,205,222,225,282,285,287,289,566,692,695,696,697,703,709,712,713,714,715,726,727,728,843,844,854,859,866,867,868,873,874,875,885,886,887,888,889,890,901,984,1012,1013,1024,1031,1038,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1074,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1631,1635,1639,1644,1694,1698,1704,1709,1932,1935],exit:[213,214,501,516],expand:[343,390,439,650,716,802,944,1038,1106,1158,1211,1257,1935],expans:[0,282,285,1935],expect:[210,239,287,289,541,1935],expens:[242,265],experi:285,experienc:1931,explicit:1935,explicitli:[217,245,265,282,295,306,310,369,416,460,489,529,574,597,630,687,741,765,769,827,909,913,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],extend:[265,285],extens:[285,287,289,1931],extent:[0,208,221,223,229,237,248,251,255,282,843,1012,1935],extern:[0,265,282,285,287,289,364,411,442,445,456,678,823,963,1003,1081,1120,1186,1232,1271,1933],external1:282,external2:282,external_vari:[282,285,1935],extra:[208,209,221,223,229,237,238,248,251,255,265,282,285,312,375,422,636,771,915,1010,1092,1144,1197,1243,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1931,1932,1935],extract:[225,253],extrem:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],f_file:1935,facilit:[0,219,1931],fact:[211,240],failur:0,fals:[48,208,209,210,211,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,273,282,284,285,301,310,312,313,314,315,316,317,318,319,320,321,322,323,324,326,327,329,330,331,332,333,334,335,336,337,338,339,340,341,344,346,347,348,349,353,354,355,356,357,358,359,360,361,373,375,376,377,378,379,380,381,383,384,385,386,387,393,394,396,397,398,399,400,402,406,407,408,420,422,423,424,425,426,427,428,429,431,432,433,434,435,436,437,441,442,443,444,445,446,450,451,452,453,465,466,467,469,470,471,472,474,475,476,477,480,481,497,536,540,541,542,543,544,545,546,547,548,549,550,552,553,565,581,582,584,585,586,587,588,590,591,592,593,604,608,609,612,613,616,617,618,619,622,623,625,634,636,637,638,639,640,641,642,644,645,646,647,648,654,655,656,658,659,660,661,662,663,665,667,669,673,674,675,691,692,693,694,695,696,697,699,700,702,703,709,712,713,714,715,716,726,727,728,730,733,734,747,748,749,750,752,753,754,755,759,760,769,771,772,773,774,775,776,777,778,779,780,781,782,783,785,786,788,789,790,791,792,793,794,795,796,797,798,799,800,803,805,806,807,808,812,813,814,815,816,817,818,819,820,831,841,842,843,845,846,851,852,853,857,858,859,860,861,862,863,876,877,879,880,881,882,883,884,891,894,896,897,901,903,904,913,915,916,917,918,919,920,921,922,923,924,925,926,928,930,931,932,933,934,935,936,937,938,939,940,941,942,946,947,948,949,953,954,955,956,957,958,959,960,972,973,974,975,976,977,980,982,983,984,985,987,988,997,1003,1007,1010,1011,1012,1014,1015,1016,1021,1022,1025,1026,1029,1030,1031,1032,1033,1034,1035,1036,1038,1049,1050,1052,1053,1054,1055,1056,1057,1064,1067,1069,1070,1074,1075,1077,1078,1079,1080,1081,1090,1092,1093,1094,1095,1096,1097,1098,1100,1101,1102,1103,1104,1108,1109,1110,1111,1115,1116,1117,1131,1142,1144,1145,1146,1147,1148,1149,1150,1152,1153,1154,1155,1156,1162,1163,1164,1166,1167,1168,1169,1170,1171,1173,1175,1177,1181,1182,1183,1195,1197,1198,1199,1200,1201,1202,1203,1205,1206,1207,1208,1209,1214,1215,1217,1218,1219,1220,1221,1223,1227,1228,1229,1241,1243,1244,1245,1246,1247,1248,1249,1251,1252,1253,1254,1255,1259,1260,1261,1262,1266,1267,1268,1284,1295,1311,1328,1346,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1381,1382,1383,1384,1385,1386,1387,1390,1391,1392,1393,1394,1395,1396,1397,1399,1400,1401,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1420,1421,1422,1423,1430,1431,1433,1434,1436,1437,1438,1440,1441,1456,1468,1472,1477,1478,1479,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1507,1508,1509,1510,1511,1512,1513,1522,1523,1525,1526,1527,1528,1530,1531,1532,1533,1547,1548,1549,1551,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1580,1581,1582,1584,1585,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1612,1613,1614,1615,1616,1617,1618,1630,1631,1632,1633,1634,1637,1638,1639,1640,1641,1642,1644,1646,1647,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1671,1672,1673,1674,1675,1676,1683,1684,1685,1686,1693,1694,1695,1696,1697,1699,1700,1702,1703,1704,1705,1706,1707,1709,1710,1712,1713,1720,1721,1722,1723,1724,1725,1726,1727,1729,1730,1731,1738,1739,1740,1741,1742,1743,1744,1745,1747,1748,1749,1762,1763,1764,1766,1767,1772,1773,1775,1776,1777,1778,1780,1781,1782,1783,1791,1792,1793,1794,1795,1797,1798,1805,1806,1807,1808,1809,1810,1811,1812,1814,1815,1816,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1840,1841,1842,1843,1844,1845,1847,1848,1849,1850,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1865,1866,1867,1868,1872,1873,1875,1876,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1896,1898,1899,1902,1903,1904,1905,1906,1907,1908,1910,1911,1912,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1926,1927,1928,1929,1935],far:265,fast:[282,312,375,422,636,771,915,1010,1092,1144,1197,1243,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],faster:[264,541,542,543,544,545,546,547,548,549,550,551,552,553,1458,1930,1935],fastest:285,fault:0,featur:[0,218,228,233,234,235,274,275,276,285,1003,1081,1931,1935],featuretyp:[285,1935],feedback:1935,few:[1931,1935],fewer:1935,field:[0,1,205,211,215,216,217,222,224,226,240,241,244,245,250,252,254,263,265,274,275,276,277,282,284,285,287,288,289,296,297,307,308,313,370,371,376,381,417,418,423,461,462,465,470,490,491,530,531,538,542,553,559,562,567,575,576,598,599,604,608,609,631,632,637,688,689,742,743,766,767,772,828,829,844,845,849,852,853,859,870,881,893,894,902,910,911,916,968,969,972,1087,1088,1093,1096,1139,1140,1145,1192,1193,1198,1238,1239,1244,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1458,1462,1465,1469,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1632,1634,1645,1650,1651,1679,1680,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820,1930,1931],field_ancillari:[95,189,215,241,282,553,1458,1935],field_latitud:1935,fieldancillari:[1,215,241,265,277,1935],fieldancillary0:[545,1935],fielddomain:[222,225,250,253],file:[0,205,225,253,265,270,282,285,287,289,317,328,329,336,356,382,430,643,708,722,723,724,729,776,787,788,795,815,856,870,881,893,894,919,929,930,937,955,1007,1028,1043,1054,1066,1067,1099,1151,1204,1250,1277,1280,1286,1365,1371,1376,1384,1491,1497,1502,1510,1572,1596,1602,1607,1615,1657,1662,1667,1673,1826,1831,1836,1842,1930,1931,1933],file_attribut:285,file_descriptor:[285,1935],filenam:[231,265,270,282,285,1935],filer_by_measur:546,fill:[0,9,15,21,38,43,54,71,85,96,107,112,117,157,159,161,164,169,176,182,187,190,191,197,199,202,204,219,246,327,355,406,429,450,642,673,692,696,699,709,714,727,786,814,928,954,1025,1075,1098,1115,1150,1181,1203,1227,1249,1266,1370,1383,1393,1399,1412,1420,1496,1509,1561,1564,1567,1570,1601,1614,1661,1672,1699,1710,1723,1729,1741,1747,1808,1814,1830,1841,1859,1866,1905,1910,1920,1927,1935],fill_valu:[219,246,692,700],fillval:700,filter:[281,285,520,533,538,542,543,544,545,546,547,548,549,550,551,552,553,554,557,566,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1467,1935],filter_by_:[541,551],filter_by_axi:[0,541,1935],filter_by_data:[541,1935],filter_by_ident:[215,520,533,538,541,542,832,833,840,847,848,998,999,1009,1017,1018,1023,1935],filter_by_kei:[541,1935],filter_by_measur:[0,541,1935],filter_by_method:[0,541,557,566,1935],filter_by_nax:[0,533,538,541,542,849,1019,1935],filter_by_ncdim:[0,541,548,1935],filter_by_ncvar:[0,541,1935],filter_by_properti:[0,541,554,836,837,838,1004,1005,1006,1935],filter_by_s:[0,541,1935],filter_by_typ:[538,541,542,546,547,554,557,566,832,833,840,847,848,998,999,1009,1017,1018,1023,1935],filter_kwarg:[215,520,538,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031],filters_appli:[533,541,542,543,544,545,546,547,548,549,550,551,552,553,557,566],find:1935,first:[0,282,285,296,297,307,308,342,370,371,388,417,418,438,461,462,478,490,491,510,530,531,533,539,554,575,576,598,599,614,631,632,649,688,689,701,742,743,766,767,801,828,829,865,910,911,943,968,969,978,994,995,1003,1037,1087,1088,1105,1139,1140,1157,1192,1193,1210,1238,1239,1256,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1650,1651,1679,1680,1689,1690,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820,1935],first_el:[717,725],fist:1935,fix:[0,1932],flag:[285,1935],flat:[285,1935],flat_out:1935,flatten:[0,716,730,733,1935],fletcher32:285,fletcher:285,flexibl:265,float32:219,float64:[3,10,16,22,29,39,47,55,72,90,97,103,108,113,118,123,128,134,140,146,151,170,193,1935],fmt:285,follow:[0,205,215,217,222,225,241,245,250,253,263,264,282,285,292,303,310,342,364,366,373,388,411,413,420,438,456,478,486,512,539,553,614,627,634,649,678,681,685,762,769,801,823,831,865,906,913,943,963,978,990,997,1003,1037,1081,1083,1090,1105,1120,1135,1142,1157,1186,1188,1195,1210,1232,1234,1241,1256,1271,1458,1935],foo:[285,311,341,342,352,360,374,387,405,407,421,449,452,544,551,635,648,649,672,674,701,717,725,770,800,801,811,819,834,852,864,865,870,871,881,882,893,894,895,896,900,903,914,942,943,952,959,1001,1022,1036,1037,1043,1044,1054,1055,1066,1067,1068,1069,1073,1077,1091,1104,1105,1114,1116,1143,1156,1157,1180,1182,1196,1209,1210,1226,1228,1242,1255,1256,1265,1267,1360,1380,1386,1389,1398,1400,1407,1419,1422,1472,1477,1478,1479,1486,1506,1512,1591,1611,1617,1629,1643,1646,1653,1670,1675,1692,1708,1712,1719,1728,1730,1737,1746,1748,1789,1796,1797,1804,1813,1815,1822,1839,1844,1847,1848,1849,1850,1853,1864,1867,1892,1897,1898,1901,1909,1911,1914,1925,1928,1935],footnot:1935,forecast:[205,231,287,289,345,350,351,391,392,395,401,403,404,440,447,448,615,620,621,651,652,653,657,664,666,668,670,671,751,756,757,804,809,810,869,871,872,878,882,886,888,890,892,895,896,898,899,945,950,951,979,981,986,1042,1044,1045,1051,1055,1059,1061,1063,1065,1068,1069,1071,1072,1107,1112,1113,1159,1160,1161,1165,1172,1174,1176,1178,1179,1212,1213,1216,1222,1224,1225,1258,1263,1264,1935],forget:533,fork:[264,1934],form:[207,219,236,287,289,323,328,380,382,428,430,540,641,643,699,708,782,787,852,856,925,929,1022,1028,1097,1099,1149,1151,1202,1204,1248,1250,1935],format:[0,265,285,1935],former:1935,formula:[216,217,223,244,245,251,1935],formula_term:205,fortran:[292,301,303,366,413,486,497,627,681,685,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],forward:265,found:[282,285,342,388,438,478,509,539,614,649,801,865,943,978,1037,1105,1157,1210,1256,1932,1933,1935],four:[217,245,363,822,962],frame:[216,217,244,245],framework:0,from:[0,208,209,210,211,214,215,216,217,218,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,241,242,243,244,245,247,248,249,250,251,252,253,254,255,257,258,259,260,261,264,265,272,274,282,284,285,287,288,289,295,306,310,313,323,343,360,362,363,369,373,376,380,389,390,407,409,410,416,420,423,428,439,452,454,455,460,465,470,489,503,505,512,529,533,540,554,566,574,584,590,593,597,604,609,630,634,637,641,650,674,676,677,687,694,699,702,716,719,721,722,723,724,730,731,733,741,748,760,765,769,772,782,802,819,821,822,827,831,842,843,852,853,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,896,903,909,913,916,925,944,959,961,962,967,972,974,993,997,1007,1011,1012,1022,1038,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1069,1077,1079,1080,1086,1090,1093,1097,1106,1116,1118,1119,1138,1142,1145,1149,1158,1182,1184,1185,1191,1195,1198,1202,1211,1228,1230,1231,1237,1241,1244,1248,1257,1267,1269,1270,1273,1289,1302,1319,1336,1350,1356,1386,1400,1403,1422,1425,1450,1473,1482,1512,1515,1530,1533,1535,1555,1574,1585,1587,1617,1619,1625,1634,1646,1649,1675,1678,1688,1712,1715,1730,1733,1748,1750,1756,1767,1780,1783,1785,1797,1800,1815,1818,1844,1867,1876,1887,1890,1898,1911,1928,1930,1931,1933,1934],fromconstruct:[222,250,841,1630],fromkei:213,full:[272,322,379,427,469,608,640,698,781,851,924,1021,1096,1148,1201,1247],full_domain:[1007,1935],functool:265,fundament:205,further:[212,288,1931,1935],futur:[0,285,1935],gain:1935,gamma:694,gather:[227,230,287,289,300,364,411,456,496,678,706,823,868,875,889,890,963,1003,1041,1048,1062,1063,1081,1120,1129,1186,1232,1271,1279,1294,1309,1326,1343,1933],gathered_arrai:1935,gatheredarrai:[265,277,1935],gener:[205,210,217,222,239,245,250,273,281,288,323,341,380,387,428,437,470,477,584,609,613,641,648,699,748,782,800,852,925,942,974,977,1022,1036,1097,1104,1149,1156,1202,1209,1248,1255,1931,1934,1935],geoid_nam:[588,750,1528,1582,1764,1778],geometri:[0,11,56,73,158,165,177,183,200,261,274,275,276,287,289,317,318,319,320,329,330,331,332,336,338,339,356,358,359,364,411,456,678,776,777,778,779,788,789,790,791,795,797,798,815,817,818,823,862,866,868,869,873,875,876,878,879,883,885,886,889,890,891,892,919,920,921,922,930,931,932,933,937,939,940,955,957,958,963,1003,1034,1039,1041,1042,1046,1048,1049,1051,1052,1056,1058,1059,1062,1063,1064,1065,1120,1186,1232,1271,1365,1366,1371,1372,1376,1384,1491,1492,1497,1498,1502,1510,1596,1597,1602,1603,1607,1615,1657,1658,1662,1663,1667,1673,1826,1827,1831,1832,1836,1842,1933],geometry1:[869,878,892,1042,1051,1065],geometry_dimens:0,geophys:[220,247],geosci:[287,289],geoscienc:[287,289],geospati:1935,get:[0,213,265,285,551,558,559,560,567,568,586,610,695,696,697,703,709,712,713,714,715,726,727,728,749,855,1026,1461,1462,1463,1469,1470,1526,1545,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1581,1631,1636,1700,1763,1776,1873,1885,1935],get_ax:[466,474,480,1430,1436,1440,1935],get_bound:[7,52,69,155,163,174,180,198,201,203,314,325,334,353,773,784,793,812,917,927,935,953,1362,1374,1381,1488,1500,1507,1593,1605,1612,1655,1665,1671,1824,1834,1840,1855,1861,1865,1916,1922,1926,1935],get_calendar:[695,712,713,726,1560,1565,1566,1569],get_climatolog:[0,315,344,354,774,803,813,1363,1379,1382,1489,1505,1508,1594,1610,1613],get_compressed_ax:[44,495,705,1128,1308,1325,1342],get_compressed_axearrai:[495,1128,1308,1325,1342],get_compressed_dimens:[44,704,706],get_compressed_typ:[495,1128,1308,1325,1342],get_compression_typ:[44,364,411,456,678,704,705,734,823,963,1003,1081,1120,1186,1232,1271,1935],get_construct:[437,438,477,478,613,614,844,859,901,1013,1031,1074,1631,1639,1644,1694,1704,1709,1935],get_coordin:265,get_coordinate_convers:[36,606,611,623,1543,1546,1549,1935],get_count:[710,711,1003,1935],get_data:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,316,324,325,335,355,377,385,406,424,434,450,543,638,646,673,775,783,784,794,814,902,918,926,927,936,954,1014,1026,1032,1075,1076,1094,1102,1115,1146,1154,1181,1199,1207,1227,1245,1253,1266,1364,1368,1375,1383,1391,1396,1399,1409,1416,1420,1490,1494,1501,1509,1595,1599,1606,1614,1645,1656,1660,1666,1672,1695,1700,1705,1710,1711,1721,1726,1729,1739,1744,1747,1806,1811,1814,1825,1829,1835,1841,1856,1858,1862,1866,1903,1907,1910,1917,1919,1923,1927,1935],get_data_ax:[845,861,902,1015,1033,1076,1632,1641,1645,1696,1706,1711,1935],get_datum:[37,607,625,1544,1551,1935],get_domain:[0,87,188,1935],get_domain_ancillari:[581,583,587,591,1522,1524,1527,1531,1772,1774,1777,1781,1881,1883,1888],get_filenam:0,get_fill_valu:[692,696,700,714,727,1561,1567,1570],get_geometri:[317,336,356,776,795,815,919,937,955,1365,1376,1384,1491,1502,1510,1596,1607,1615,1657,1667,1673,1826,1836,1842,1935],get_index:[707,711,1003,1935],get_interior_r:[11,56,73,158,165,177,183,200,318,337,357,777,796,816,920,938,956,1366,1377,1385,1492,1503,1511,1597,1608,1616,1658,1668,1674,1827,1837,1843,1935],get_list:[707,710,1935],get_measur:[425,435,437,438,451,546,1410,1417,1421],get_method:[467,475,477,478,481,547,1431,1437,1441,1935],get_ncvar:1286,get_node_count:[319,332,338,358,778,791,797,817,921,933,939,957],get_paramet:[582,588,589,592,747,750,758,759,1523,1528,1529,1532,1580,1582,1583,1584,1762,1764,1765,1766,1773,1778,1779,1782,1872,1874,1875,1882,1886,1889],get_part_node_count:[320,339,359,779,798,818,922,940,958],get_properti:[321,340,352,361,378,386,405,408,426,436,449,453,639,647,672,675,780,799,811,820,846,863,900,904,923,941,952,960,1016,1035,1073,1078,1095,1103,1114,1117,1147,1155,1180,1183,1200,1208,1226,1229,1246,1254,1265,1268,1367,1378,1380,1387,1392,1397,1398,1401,1411,1418,1419,1423,1493,1504,1506,1513,1598,1609,1611,1618,1633,1642,1643,1647,1659,1669,1670,1676,1697,1707,1708,1713,1722,1727,1728,1731,1740,1745,1746,1749,1791,1795,1796,1798,1807,1812,1813,1816,1828,1838,1839,1845,1857,1863,1864,1868,1894,1896,1897,1899,1904,1908,1909,1912,1918,1924,1925,1929,1935],get_qualifi:[468,476,479,482,1432,1438,1439,1442,1935],get_siz:[552,973,976,988,1683,1685,1686,1935],get_unit:[697,703,715,728,1562,1563,1568,1571],getcwd:270,getncattr:1286,git:264,github:[0,264,281,282,288,1934,1935],give:[218,227,230,233,235,533,554,1935],given:[210,215,219,239,241,249,265,276,282,285,301,483,497,509,520,524,534,538,542,544,545,546,547,548,549,550,551,552,553,716,832,833,836,837,838,839,840,844,847,848,849,850,853,859,866,867,868,873,874,875,885,886,887,888,889,890,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1123,1131,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1447,1454,1458,1634,1935],global:[0,210,213,222,225,253,272,282,285,323,380,428,470,540,584,609,641,699,748,782,852,870,881,893,894,925,974,1022,1043,1054,1066,1067,1097,1149,1202,1248,1930],global_attribut:[285,1935],global_com:[870,881,893,894,1043,1054,1066,1067],gmd:[287,289],graphic:[287,289],greater:[271,283,285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],greek_lett:[854,1024,1635,1698],gregori:[264,287,289],gregorian:[45,46,274,275,1935],grid:[205,274,275,613,614,832,840,998,1007,1009,1935],grid_latitud:[209,274,275,276,284,554,840,847,854,1007,1009,1017,1024,1635,1698,1935],grid_longitud:[274,275,276,284,533,554,840,847,854,1007,1009,1017,1024,1635,1698,1935],grid_map:1935,grid_mapping_nam:[274,275,554,613,614,1935],grid_north_pole_latitud:1935,grid_north_pole_longitud:1935,group:[0,231,282,285,287,289,345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,866,867,868,869,871,872,878,882,886,888,890,891,892,895,896,897,898,899,945,949,950,951,979,981,985,986,1039,1040,1041,1042,1044,1045,1051,1055,1059,1061,1063,1064,1065,1068,1069,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264,1281],had:1935,hand:214,handl:285,hankin:[287,289],hard:698,hartnett:[287,289],has:[43,45,46,48,169,213,225,253,265,274,275,276,285,295,300,306,310,315,317,318,319,320,321,326,329,331,332,333,335,340,343,346,347,348,363,369,373,378,383,385,386,390,393,394,396,397,398,399,416,420,425,426,431,432,434,435,436,439,441,443,444,460,467,468,472,473,475,476,489,496,498,512,529,544,551,557,574,581,582,585,586,587,588,597,605,612,616,617,618,630,634,639,644,646,647,650,654,655,656,658,659,660,661,662,663,687,695,696,697,703,706,707,709,710,711,712,713,714,716,729,741,747,749,750,752,753,754,765,769,774,776,777,778,779,780,785,788,790,791,792,794,799,802,805,806,807,822,827,831,836,837,838,844,846,857,859,860,863,870,876,877,879,880,881,882,883,884,893,894,909,913,919,920,921,922,923,930,932,933,934,936,941,944,946,947,948,962,967,973,975,976,980,982,983,993,997,1004,1005,1006,1007,1013,1016,1029,1031,1032,1035,1038,1043,1049,1050,1052,1053,1054,1055,1056,1057,1066,1067,1086,1090,1095,1100,1102,1103,1106,1108,1109,1110,1129,1130,1132,1138,1142,1147,1152,1154,1155,1158,1162,1163,1164,1166,1167,1168,1169,1170,1171,1191,1195,1200,1205,1207,1208,1211,1214,1215,1217,1218,1219,1220,1237,1241,1246,1251,1253,1254,1257,1259,1260,1261,1273,1279,1289,1294,1302,1309,1310,1312,1319,1326,1327,1329,1336,1343,1344,1345,1347,1350,1356,1363,1365,1366,1367,1369,1371,1373,1375,1378,1392,1394,1396,1397,1403,1410,1411,1413,1414,1416,1417,1418,1425,1431,1432,1434,1435,1437,1438,1450,1472,1473,1477,1478,1482,1489,1491,1492,1493,1495,1497,1499,1501,1504,1515,1522,1523,1525,1526,1527,1528,1535,1542,1547,1555,1560,1561,1562,1563,1564,1565,1566,1567,1572,1574,1580,1581,1582,1587,1594,1596,1597,1598,1600,1602,1604,1606,1609,1619,1625,1633,1637,1640,1642,1649,1657,1658,1659,1662,1664,1666,1669,1678,1683,1684,1685,1688,1697,1702,1705,1707,1715,1722,1724,1726,1727,1733,1740,1742,1744,1745,1750,1756,1762,1763,1764,1772,1773,1775,1776,1777,1778,1785,1791,1792,1794,1795,1800,1807,1809,1811,1812,1818,1826,1827,1828,1831,1833,1835,1838,1847,1848,1849,1857,1860,1862,1863,1872,1873,1881,1882,1884,1885,1894,1895,1896,1904,1906,1907,1908,1918,1921,1923,1924,1931,1935],has_ax:[466,471,480,1430,1433,1440],has_bound:[0,7,52,69,155,163,174,180,198,201,203,314,324,353,773,783,812,917,926,953,1362,1368,1381,1488,1494,1507,1593,1599,1612,1655,1660,1671,1824,1829,1840,1855,1858,1865,1916,1919,1926],has_calendar:[0,695,703,715,726,1560,1563,1568,1569],has_construct:[0,844,854,1013,1024,1631,1635,1694,1698],has_coordin:[605,622,1542,1548],has_data:[9,12,13,14,15,17,18,19,21,23,24,25,38,40,41,42,54,57,58,59,71,74,75,76,85,92,93,94,96,98,99,100,107,109,110,111,112,114,115,116,117,119,120,121,157,159,161,164,176,182,187,190,191,197,199,202,204,312,316,327,334,355,375,377,381,384,406,422,424,429,433,450,636,638,642,645,673,771,775,786,793,814,858,915,918,928,935,954,1010,1014,1025,1030,1075,1092,1094,1098,1101,1115,1144,1146,1150,1153,1181,1197,1199,1203,1206,1227,1243,1245,1249,1252,1266,1361,1364,1370,1374,1383,1390,1391,1393,1395,1399,1408,1409,1412,1415,1420,1487,1490,1496,1500,1509,1592,1595,1601,1605,1614,1638,1654,1656,1661,1665,1672,1693,1695,1699,1703,1710,1720,1721,1723,1725,1729,1738,1739,1741,1743,1747,1793,1805,1806,1808,1810,1814,1823,1825,1830,1834,1841,1854,1856,1859,1861,1866,1902,1903,1905,1910,1915,1917,1920,1922,1927,1935],has_data_ax:[845,855,902,1015,1026,1076,1632,1636,1645,1696,1700,1711],has_domain_ancillari:[581,585,591,1522,1525,1531,1772,1775,1781,1881,1884,1888],has_domain_ancillaryr:[583,1524,1774,1883],has_fill_valu:[0,696,709,727,1561,1564,1570],has_geometri:[317,329,356,776,788,815,919,930,955,1365,1371,1384,1491,1497,1510,1596,1602,1615,1657,1662,1673,1826,1831,1842],has_interior_r:[11,56,73,158,165,177,183,200,318,330,357,777,789,816,920,931,956,1366,1372,1385,1492,1498,1511,1597,1603,1616,1658,1663,1674,1827,1832,1843],has_measur:[425,431,451,1410,1413,1421],has_method:[467,472,481,1431,1434,1441],has_node_count:[319,331,358,778,790,817,921,932,957],has_paramet:[582,586,589,592,747,749,758,759,1523,1526,1529,1532,1580,1581,1583,1584,1762,1763,1765,1766,1773,1776,1779,1782,1872,1873,1874,1875,1882,1885,1886,1889],has_part_node_count:[320,332,359,779,791,818,922,933,958],has_properti:[321,333,352,361,378,383,405,408,426,432,449,453,639,644,672,675,780,792,811,820,846,857,900,904,923,934,952,960,1016,1029,1073,1078,1095,1100,1114,1117,1147,1152,1180,1183,1200,1205,1226,1229,1246,1251,1265,1268,1367,1373,1380,1387,1392,1394,1398,1401,1411,1414,1419,1423,1493,1499,1506,1513,1598,1604,1611,1618,1633,1637,1643,1647,1659,1664,1670,1676,1697,1702,1708,1713,1722,1724,1728,1731,1740,1742,1746,1749,1791,1792,1796,1798,1807,1809,1813,1816,1828,1833,1839,1845,1857,1860,1864,1868,1894,1895,1897,1899,1904,1906,1909,1912,1918,1921,1925,1929,1935],has_qualifi:[468,473,479,482,1432,1435,1439,1442],has_siz:[973,975,988,1683,1684,1686],has_unit:[0,697,712,713,728,1562,1565,1566,1571],hashabl:214,hassel:[264,287,289],hassell2020:[287,289],have:[0,208,209,210,215,216,221,237,239,244,248,249,264,265,272,281,282,285,287,289,310,311,314,316,323,324,327,330,335,338,339,343,363,373,374,377,380,381,385,390,420,421,424,428,429,434,439,466,471,474,520,533,538,541,542,543,544,545,546,547,548,549,550,551,552,553,554,556,557,566,578,579,584,609,634,635,638,641,642,646,650,699,715,716,745,748,769,770,773,775,782,783,786,789,794,797,798,802,822,831,832,833,834,836,837,838,839,840,843,844,845,847,848,849,850,852,855,860,861,862,901,913,914,917,918,925,926,928,931,936,939,940,944,962,990,997,998,999,1000,1001,1003,1004,1005,1006,1007,1008,1009,1012,1013,1014,1015,1017,1018,1019,1020,1022,1023,1025,1026,1032,1033,1034,1038,1074,1080,1090,1091,1094,1097,1098,1102,1106,1142,1143,1146,1149,1150,1154,1158,1195,1196,1199,1202,1203,1207,1211,1241,1242,1245,1248,1249,1253,1257,1360,1362,1364,1368,1370,1372,1375,1389,1391,1393,1396,1407,1409,1412,1416,1430,1433,1436,1458,1460,1486,1488,1490,1494,1496,1498,1501,1519,1520,1568,1578,1591,1593,1595,1599,1601,1603,1606,1629,1631,1632,1636,1640,1641,1644,1653,1655,1656,1660,1661,1663,1666,1692,1694,1695,1696,1699,1700,1705,1706,1709,1719,1721,1723,1726,1737,1739,1741,1744,1760,1769,1770,1789,1794,1804,1806,1808,1811,1822,1824,1825,1829,1830,1832,1835,1853,1855,1856,1858,1859,1862,1870,1878,1879,1892,1901,1903,1905,1907,1914,1916,1917,1919,1920,1923,1930,1931,1935],hdf5:[0,273,285,722,723,724],hdf:285,header:[0,313,376,423,465,604,637,772,842,916,972,1011,1093,1145,1198,1244],height:[274,275,287,289,544,551,1935],henc:1935,henceforth:1935,here:1935,hierach:1935,hierarch:[0,282,285,287,289,345,350,351,391,392,395,401,403,404,440,447,448,615,620,621,651,652,653,657,664,666,668,670,671,751,756,757,804,809,810,869,872,878,892,898,899,945,950,951,979,981,986,1042,1045,1051,1065,1071,1072,1107,1112,1113,1159,1160,1161,1165,1172,1174,1176,1178,1179,1212,1213,1216,1222,1224,1225,1258,1263,1264],hierarchi:[0,345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,869,872,878,891,892,897,898,899,945,949,950,951,979,981,985,986,1042,1045,1051,1064,1065,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264,1935],high:1935,higher:[211,240,282,285,287,289,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1931,1935],highest:1935,highli:1935,highlight:0,histori:[225,253,285,533,554,557,566,1467,1935],hold:[226,254,1935],home:[273,282,285,288],hood:1935,horizont:[0,210,217,220,239,245,247,1935],horizontal_cr:1935,hourli:[275,276],how:[205,211,225,240,253,264,265,282,285,1935],howev:[209,285,310,470,609,769,844,913,1013,1631,1694,1931,1935],hpa:[274,275],html:[281,282,287,289],http:[0,205,264,270,281,282,287,288,289,1934,1935],humid:1935,hydrolog:[287,289],ice:[211,240],idea:264,ident:[0,215,227,265,520,538,539,541,542,544,832,833,836,837,838,839,840,844,847,848,849,850,859,870,881,893,894,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1043,1054,1066,1067,1935],identif:[285,1935],identifi:[205,211,217,240,245,272,281,282,297,308,362,363,364,371,409,410,411,418,454,455,456,462,466,480,483,491,531,534,538,541,542,543,544,545,546,547,548,549,550,552,553,561,565,576,599,632,676,677,678,689,702,719,721,730,731,733,743,767,821,822,823,829,836,837,838,839,844,849,859,901,902,911,961,962,963,969,995,1000,1003,1004,1005,1006,1008,1013,1019,1031,1038,1074,1075,1076,1079,1080,1081,1088,1118,1119,1120,1140,1184,1185,1186,1193,1230,1231,1232,1239,1269,1270,1271,1275,1291,1304,1321,1338,1352,1358,1405,1427,1430,1440,1452,1454,1458,1464,1468,1475,1484,1517,1537,1557,1576,1589,1621,1627,1631,1639,1644,1645,1651,1680,1690,1694,1704,1709,1710,1711,1717,1735,1752,1758,1787,1802,1820,1932,1935],ieee:[287,289],ignor:[208,209,210,211,215,216,217,218,219,220,221,222,223,225,226,228,229,230,231,237,238,239,240,241,243,244,245,246,247,248,250,251,253,254,255,257,258,259,260,261,272,281,282,285,313,323,341,376,380,387,423,428,437,465,470,477,540,541,584,604,609,613,637,641,648,694,699,722,723,724,748,772,782,800,842,852,853,916,925,942,972,974,977,1011,1022,1036,1093,1097,1104,1145,1149,1156,1198,1202,1209,1244,1248,1255,1634,1935],ignore_compress:[0,323,380,428,540,641,699,782,852,925,1022,1097,1149,1202,1248],ignore_data_typ:[323,380,428,540,584,641,699,748,782,852,925,1022,1097,1149,1202,1248],ignore_fill_valu:[323,380,428,540,641,699,782,852,925,1022,1097,1149,1202,1248],ignore_properti:[323,380,428,641,782,852,925,1022,1097,1149,1202,1248],ignore_qualifi:470,ignore_typ:[323,380,428,470,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],iii:[363,822,962],illustr:1935,implement:[0,236,265,275,282,285,287,289,521,842,1011,1444,1935],impli:[217,220,224,245,247,252,323,380,428,540,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],implicitli:[210,217,226,239,245,254],improv:0,inaccur:285,includ:[0,215,225,229,241,253,255,265,282,285,287,289,322,388,427,608,640,781,851,924,1021,1096,1148,1201,1247,1931,1935],inclus:[310,373,420,543,634,769,831,913,997,1090,1142,1195,1241],incom:[355,406,450,673,814,954,1115,1181,1227,1266,1383,1399,1420,1509,1614,1672,1729,1747,1814,1841,1866,1910,1927],incompat:285,incomplet:[282,843,1012,1935],inconsist:1935,incorpor:[282,285,287,289,1935],incorrect:[0,1935],increas:[221,248,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],indent:[313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],independ:[2,28,43,44,45,46,102,122,127,133,139,145,150,169,192,205,208,209,221,224,225,237,238,248,252,253,265,282,287,289,290,292,301,303,327,366,381,413,429,484,486,497,564,627,642,679,681,685,762,786,906,928,990,1025,1083,1098,1121,1123,1131,1135,1150,1188,1203,1234,1249,1272,1284,1288,1295,1297,1299,1311,1314,1316,1328,1331,1333,1346,1370,1393,1412,1467,1496,1601,1661,1699,1723,1741,1808,1830,1859,1905,1920,1930,1935],index:[229,234,235,255,265,277,288,292,301,303,366,413,486,497,627,681,685,710,711,762,866,867,868,873,874,875,885,886,887,888,889,890,906,990,1003,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1081,1083,1123,1131,1188,1234,1272,1284,1288,1295,1299,1311,1316,1327,1328,1333,1345,1346],index_properti:1003,index_vari:[234,235],indexed_contigu:1003,indic:[208,209,210,211,221,227,230,237,238,239,240,248,267,285,292,301,303,366,413,483,486,497,627,681,685,762,906,990,1003,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1932,1935],indici:[301,497,1131,1284,1295,1311,1328,1346],individu:[222,229,250,255,276,541,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1935],inequ:[323,380,428,540,641,699,748,782,852,925,1022,1097,1149,1202,1248],infer:[219,282,1007,1935],infinit:[298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],influenc:1935,info:[213,265,272,280,281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],inform:[0,208,210,218,221,223,227,228,230,233,234,235,237,239,248,251,274,275,285,287,289,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1931,1935],infrastructur:[264,265],inherit:[249,265,287,289,295,306,369,388,389,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1930,1931,1935],inherited_properti:1935,initi:[264,853,1634,1935],initiali:242,initialis:[207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261,265,271,283,698,1935],initialise_data:0,initio:[287,289],inner:[229,255],inpalc:734,inplac:[0,310,316,327,335,343,355,362,363,364,373,377,385,390,406,409,410,411,420,424,429,434,439,450,454,455,456,634,638,642,646,650,673,676,677,678,692,700,702,716,730,733,734,769,775,786,794,802,814,821,822,823,831,913,918,928,936,944,954,961,962,963,997,1003,1014,1025,1032,1038,1075,1079,1080,1081,1090,1094,1098,1102,1106,1115,1118,1119,1120,1142,1146,1150,1154,1158,1181,1184,1185,1186,1195,1199,1203,1207,1211,1227,1230,1231,1232,1241,1245,1249,1253,1257,1266,1269,1270,1271,1364,1370,1375,1383,1391,1393,1396,1399,1409,1412,1416,1420,1490,1496,1501,1509,1595,1601,1606,1614,1656,1661,1666,1672,1695,1699,1705,1710,1721,1723,1726,1729,1739,1741,1744,1747,1806,1808,1811,1814,1825,1830,1835,1841,1856,1859,1862,1866,1903,1905,1907,1910,1917,1920,1923,1927,1930,1935],input:[0,208,209,210,211,213,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,285,301,497,853,1131,1284,1295,1311,1328,1346,1634],insert:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,265,313,327,343,353,355,357,358,359,360,376,390,406,407,423,429,439,450,452,465,511,590,593,604,623,625,637,642,650,673,674,694,716,760,772,786,802,812,814,816,817,818,819,842,894,896,901,903,916,928,944,953,954,956,957,958,959,972,1011,1025,1038,1067,1069,1074,1075,1077,1093,1098,1106,1115,1116,1145,1150,1158,1181,1182,1198,1203,1211,1227,1228,1244,1249,1257,1266,1267,1370,1381,1383,1385,1386,1393,1399,1400,1412,1420,1422,1496,1507,1509,1511,1512,1530,1533,1549,1551,1585,1601,1612,1614,1616,1617,1644,1646,1661,1671,1672,1674,1675,1699,1709,1710,1712,1723,1729,1730,1741,1747,1748,1767,1780,1783,1797,1808,1814,1815,1830,1840,1841,1843,1844,1859,1865,1866,1867,1876,1887,1890,1898,1905,1910,1911,1920,1926,1927,1928,1935],insert_dimens:[0,362,363,409,410,454,455,676,677,702,730,733,821,822,961,962,1079,1080,1118,1119,1184,1185,1230,1231,1269,1270,1930,1935],insight:1935,insist:1935,inspect:[265,282,285,287,289,835,984,1002,1930,1931],instal:287,instanc:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,285,310,312,313,314,315,316,317,318,319,320,321,323,324,325,326,327,329,330,331,332,333,346,347,355,373,375,376,377,378,380,381,383,390,393,394,396,397,406,409,410,420,422,423,424,425,426,428,429,431,432,439,441,443,450,454,455,465,466,467,468,470,471,472,473,498,520,540,541,544,551,556,557,559,567,581,582,584,585,586,604,605,609,616,617,634,636,637,638,639,641,642,644,650,654,655,656,658,659,660,673,676,677,694,695,696,697,699,703,705,707,709,710,711,712,729,747,748,749,752,753,769,771,772,773,774,775,776,777,778,779,780,782,783,784,785,786,788,789,790,791,792,805,806,814,836,837,838,842,844,845,846,850,852,853,854,855,857,860,876,877,879,880,913,915,916,917,918,919,920,921,922,923,925,926,927,928,930,931,932,933,934,946,947,954,972,973,974,975,980,982,1004,1005,1006,1010,1011,1013,1014,1015,1016,1020,1022,1024,1025,1026,1029,1049,1050,1052,1053,1075,1090,1092,1093,1094,1095,1097,1098,1100,1106,1108,1109,1115,1118,1119,1130,1132,1142,1144,1145,1146,1147,1149,1150,1152,1158,1162,1163,1164,1166,1167,1168,1181,1184,1185,1195,1197,1198,1199,1200,1202,1203,1205,1211,1214,1215,1217,1218,1227,1230,1231,1241,1243,1244,1245,1246,1248,1249,1251,1257,1259,1260,1266,1269,1270,1310,1312,1327,1329,1344,1345,1347,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1383,1390,1391,1392,1393,1394,1399,1408,1409,1410,1411,1412,1413,1414,1420,1430,1431,1432,1433,1434,1435,1460,1462,1469,1472,1477,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1509,1522,1523,1525,1526,1542,1560,1561,1562,1563,1564,1565,1572,1580,1581,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1614,1631,1632,1633,1634,1635,1636,1637,1640,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1672,1683,1684,1693,1694,1695,1696,1697,1698,1699,1700,1702,1710,1720,1721,1722,1723,1724,1729,1738,1739,1740,1741,1742,1747,1762,1763,1772,1773,1775,1776,1791,1792,1794,1805,1806,1807,1808,1809,1814,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1841,1847,1848,1854,1855,1856,1857,1858,1859,1860,1866,1872,1873,1881,1882,1884,1885,1894,1895,1902,1903,1904,1905,1906,1910,1915,1916,1917,1918,1919,1920,1921,1927,1930,1935],instance_dimens:228,instantan:[211,240],instanti:[222,250,313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244,1935],instead:[208,237,249,282,285,314,315,316,317,318,319,320,321,324,325,326,327,329,330,331,332,333,346,347,377,378,381,383,393,394,396,397,424,425,426,429,431,432,441,443,466,467,468,471,472,473,498,541,542,543,544,545,546,547,548,549,550,552,553,556,559,567,581,582,585,586,605,616,617,638,639,642,644,654,655,656,658,659,660,695,696,697,703,705,707,709,710,711,712,729,747,749,752,753,773,774,775,776,777,778,779,780,783,784,785,786,788,789,790,791,792,805,806,836,837,838,844,845,846,850,854,855,857,870,876,877,879,880,881,893,894,895,896,917,918,919,920,921,922,923,926,927,928,930,931,932,933,934,946,947,973,975,980,982,1004,1005,1006,1013,1014,1015,1016,1020,1024,1025,1026,1029,1033,1043,1049,1050,1052,1053,1054,1066,1067,1068,1069,1076,1094,1095,1098,1100,1108,1109,1130,1132,1146,1147,1150,1152,1162,1163,1164,1166,1167,1168,1199,1200,1203,1205,1214,1215,1217,1218,1245,1246,1249,1251,1259,1260,1310,1312,1327,1329,1344,1345,1347,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1391,1392,1393,1394,1409,1410,1411,1412,1413,1414,1430,1431,1432,1433,1434,1435,1458,1460,1462,1469,1472,1477,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1522,1523,1525,1526,1542,1560,1561,1562,1563,1564,1565,1572,1580,1581,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1631,1632,1633,1635,1636,1637,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1683,1684,1694,1695,1696,1697,1698,1699,1700,1702,1706,1711,1721,1722,1723,1724,1739,1740,1741,1742,1762,1763,1772,1773,1775,1776,1791,1792,1806,1807,1808,1809,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1847,1848,1855,1856,1857,1858,1859,1860,1872,1873,1881,1882,1884,1885,1894,1895,1903,1904,1905,1906,1916,1917,1918,1919,1920,1921,1935],institut:[225,253],instruct:[893,894,895,896,1066,1067,1068,1069,1935],instrument:[226,254,1935],int32:285,int64:[285,1935],int8:1935,intact:1935,integ:[0,224,252,272,281,282,285,292,296,301,303,307,323,343,362,363,366,370,380,390,409,410,413,417,428,439,454,455,461,470,486,490,494,497,530,538,540,542,548,552,575,584,598,609,627,631,641,650,676,677,681,685,688,699,702,716,719,721,724,730,731,733,742,748,762,766,782,802,821,822,828,849,852,906,910,925,944,961,962,968,974,990,994,1019,1022,1038,1079,1080,1083,1087,1097,1106,1118,1119,1123,1127,1131,1135,1139,1149,1158,1184,1185,1188,1192,1202,1211,1230,1231,1234,1238,1248,1257,1269,1270,1272,1274,1284,1288,1290,1295,1299,1303,1307,1311,1316,1320,1324,1328,1333,1337,1341,1346,1351,1357,1404,1426,1451,1474,1483,1516,1536,1556,1575,1588,1620,1626,1650,1679,1689,1716,1734,1751,1757,1786,1801,1819,1932,1935],intend:[265,282,1935],intent:459,interact:[287,289],interced:249,interchang:1935,interfac:[0,208,209,210,217,218,220,221,222,223,224,225,226,228,229,230,231,282,285,287,289,290,484,679,1121,1285,1297,1314,1331,1931],interior:[11,56,73,158,165,177,183,200,208,221,223,237,243,248,251,261,265,274,275,276,277,313,318,330,337,357,772,777,789,796,816,866,868,873,875,885,886,889,890,916,920,931,938,956,1039,1041,1046,1048,1058,1059,1062,1063,1366,1372,1377,1385,1492,1498,1503,1511,1597,1603,1608,1616,1658,1663,1668,1674,1827,1832,1837,1843,1935],interior_r:[208,221,223,237,243,248,251,261,318,330,337,357,777,789,796,816,866,868,873,875,885,886,889,890,920,931,938,956,1039,1041,1046,1048,1058,1059,1062,1063,1366,1372,1377,1385,1492,1498,1503,1511,1597,1603,1608,1616,1658,1663,1668,1674,1827,1832,1837,1843],interior_ring_nam:[313,772,916],interiorring_1:[889,1062],interlac:285,interleav:[228,234],intern:[285,287,289,1935],interpret:[0,208,209,221,237,238,248,265,282,287,289,470,609,1935],interv:[275,287,289,483,547,1007,1023,1935],introduc:[1932,1935],invalid:0,invers:557,inverse_filt:[0,533,541,542,543,544,545,546,547,548,549,550,551,552,553,554,566,1935],invok:265,involv:[1931,1935],ir1:[313,772,916],is_climatolog:[0,315,326,354,774,785,813,835,1363,1369,1382,1489,1495,1508,1594,1600,1613],is_extern:282,isinst:[2,27,28,43,101,102,122,127,132,133,138,139,144,145,150,169,192,290,484,1121,1297,1314,1331],isscalar:[12,17,23,40,57,74,92,98,109,114,119],issu:[0,205,225,264,282,1934,1935],item:[213,503,555,560,568,1459,1463,1470,1935],iter:[505,512,525,558,560,568,683,1448,1461,1463,1470],its:[9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,205,208,209,211,214,221,225,229,237,238,240,242,248,253,255,265,272,285,287,288,289,298,309,313,327,362,363,364,372,376,409,410,411,419,423,429,454,455,456,463,492,520,532,538,541,542,544,545,546,547,549,550,551,564,577,600,633,637,642,676,677,678,690,702,719,721,730,731,733,744,768,772,786,821,822,823,830,832,833,836,837,838,839,840,842,844,847,848,849,850,859,912,916,928,961,962,963,970,996,998,999,1000,1003,1004,1005,1006,1007,1008,1009,1011,1013,1017,1018,1019,1020,1023,1025,1031,1079,1080,1081,1089,1093,1098,1118,1119,1120,1141,1145,1150,1184,1185,1186,1194,1198,1203,1230,1231,1232,1240,1244,1249,1269,1270,1271,1276,1292,1305,1322,1339,1353,1359,1370,1393,1406,1412,1428,1453,1476,1485,1496,1518,1538,1558,1577,1590,1601,1622,1628,1652,1661,1681,1691,1699,1718,1723,1736,1741,1753,1759,1788,1803,1808,1821,1830,1859,1905,1920,1930,1933,1935],itself:[209,213,226,254,265,298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],iwi:264,jonathan:264,joss:[0,287,289],journal:[287,289],juck:264,julian:[45,46],just:[0,533,1935],kappa:[274,275,1007,1935],keep:1935,kei:[208,209,210,211,213,215,216,218,220,221,222,223,225,226,228,229,230,237,238,239,240,241,243,244,247,248,249,250,251,253,254,255,257,258,259,260,261,272,285,298,309,372,419,463,466,492,505,506,509,510,511,512,520,521,524,532,533,534,535,537,538,539,541,542,543,544,545,546,547,548,549,550,552,553,554,555,556,557,558,561,562,563,565,566,567,568,577,581,585,587,600,601,602,605,608,612,622,624,633,690,744,768,830,835,836,837,838,839,842,844,845,849,850,854,855,859,861,901,902,912,970,996,1000,1004,1005,1006,1007,1008,1011,1013,1015,1019,1020,1024,1026,1031,1033,1074,1076,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1430,1444,1447,1453,1454,1455,1457,1458,1459,1460,1461,1464,1465,1466,1468,1469,1470,1476,1485,1518,1522,1525,1527,1538,1539,1540,1542,1547,1548,1550,1558,1577,1590,1622,1628,1631,1632,1635,1636,1639,1641,1644,1645,1652,1681,1691,1694,1696,1698,1700,1704,1706,1709,1711,1718,1736,1753,1759,1772,1775,1777,1788,1803,1821,1881,1884,1935],kelvin:[376,637,1093,1145,1198,1244],keyerror:[265,509,510],keyword:[0,272,520,538,541,551,692,730,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1023,1031,1930,1932,1935],km2:[274,275,428,437,438,546,833,999,1007,1935],knowledg:[210,239,265,287,289],known:[231,1935],kwarg:[0,207,212,213,219,236,310,323,341,343,362,363,364,373,380,387,390,409,410,411,420,437,439,454,455,456,477,584,613,634,641,648,650,676,677,678,748,769,782,800,802,821,822,823,852,913,925,942,944,961,962,963,977,1022,1036,1090,1097,1104,1106,1118,1119,1120,1142,1149,1156,1158,1184,1185,1186,1195,1202,1209,1211,1230,1231,1232,1241,1248,1255,1257,1269,1270,1271,1443],label:1935,lack:[512,1935],lake:[229,255],land:[229,255,275,465,468,473,476,479,482,547,1007,1023,1432,1435,1438,1439,1442,1935],landpoint:1935,larg:[285,287,289,312,375,422,636,771,915,1010,1092,1144,1197,1243,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],larger:[265,557,566],last:[231,343,362,363,390,409,410,439,454,455,510,533,554,557,566,650,676,677,683,702,716,717,719,721,730,731,733,802,821,822,844,944,961,962,1013,1038,1079,1080,1106,1118,1119,1158,1184,1185,1211,1230,1231,1257,1269,1270,1694,1935],last_el:[701,725],lat:[549,550,842,1011,1935],lat_bnd:[842,1011,1935],later:1935,latest:[282,288],latitud:[63,82,179,186,208,217,245,265,274,275,276,284,287,289,325,537,544,551,554,557,558,559,566,567,568,729,784,832,836,837,838,840,842,844,850,854,859,927,998,1002,1004,1005,1006,1007,1009,1011,1013,1020,1024,1031,1457,1461,1462,1469,1470,1572,1631,1635,1698,1930,1935],latitude_longitud:[274,275,1935],latitude_of_projection_origin:[579,589,593,745,758,760,1520,1529,1533,1578,1583,1585,1760,1765,1767,1770,1779,1783,1870,1874,1876,1879,1886,1890],latter:[265,298,301,303,309,372,419,463,492,497,532,577,600,633,690,744,762,768,830,906,912,970,990,996,1089,1123,1131,1141,1194,1240,1272,1276,1284,1288,1292,1295,1299,1305,1311,1316,1322,1328,1333,1339,1346,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],lawrenc:[264,287,289],lazi:[282,1930,1935],learn:1935,least:[0,271,274,275,276,278,279,280,283,551,1935],least_significant_digit:285,leav:265,left:233,leftmost:1003,len:[526,1449,1935],length:285,less:[285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],letter:[282,546,547,836,837,838,1004,1005,1006],level:[0,272,278,279,280,281,282,285,287,289,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],lib:273,librari:[205,264,265,273,285,287,288,289,522,523,1445,1446,1935],lie:1935,lies:231,lifo:510,like:[213,215,241,264,272,459,507,508,1935],likewis:1935,limit:[282,285,1007,1935],line:[282,287,288,289,313,317,329,336,356,376,423,465,604,637,694,772,776,788,795,815,842,916,919,930,937,955,972,1011,1093,1145,1198,1244,1365,1371,1376,1384,1491,1497,1502,1510,1596,1602,1607,1615,1657,1662,1667,1673,1826,1831,1836,1842,1935],link:[0,285,1935],linkag:205,linux:[273,288],list:[227,264,265,272,273,276,277,282,284,295,306,313,341,369,376,387,416,423,437,460,465,477,489,494,529,560,568,574,597,604,613,630,637,648,687,694,704,711,741,765,772,800,827,842,864,868,875,889,890,909,916,942,967,972,977,993,1003,1011,1036,1041,1048,1062,1063,1086,1093,1104,1127,1130,1138,1145,1156,1191,1198,1209,1273,1289,1302,1307,1319,1324,1336,1341,1350,1356,1403,1425,1450,1463,1470,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],list_arrai:1935,list_properti:1003,list_vari:[227,1935],littl:[285,312,375,422,636,771,915,1010,1092,1144,1197,1243,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],load:[282,1930,1935],local:[264,288],locat:[205,208,216,217,221,222,223,225,237,244,245,248,250,251,253,265,273,274,275,276,288,1935],log:[272,278,279,280,281,282,285,287,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],log_level:[0,213,272,278,279,280,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],logger:[278,279,280],logic:[209,264,691,1931,1935],lon:[842,844,1011,1013,1935],lon_bnd:[842,1011,1935],long_nam:[218,222,225,228,229,230,250,253,274,275,311,319,320,321,331,332,338,339,340,341,342,352,358,359,360,374,378,386,387,388,405,407,421,426,436,437,438,449,452,544,551,635,639,647,648,649,672,674,770,778,779,780,790,791,797,798,799,800,801,811,817,818,819,832,834,836,837,838,840,846,854,863,864,865,900,903,914,921,922,923,932,933,939,940,941,942,943,952,957,958,959,998,1001,1003,1004,1005,1006,1007,1009,1016,1024,1035,1036,1037,1073,1077,1091,1095,1103,1104,1105,1114,1116,1143,1147,1155,1156,1157,1180,1182,1196,1200,1208,1209,1210,1226,1228,1242,1246,1254,1255,1256,1265,1267,1360,1367,1378,1380,1386,1389,1392,1397,1398,1400,1407,1411,1418,1419,1422,1486,1493,1504,1506,1512,1591,1598,1609,1611,1617,1629,1633,1635,1642,1643,1646,1653,1659,1669,1670,1675,1692,1697,1698,1707,1708,1712,1719,1722,1727,1728,1730,1737,1740,1745,1746,1748,1789,1791,1795,1796,1797,1804,1807,1812,1813,1815,1822,1828,1838,1839,1844,1853,1857,1863,1864,1867,1892,1894,1896,1897,1898,1901,1904,1908,1909,1911,1914,1918,1924,1925,1928,1935],longer:1935,longest:1935,longitud:[63,82,179,186,217,237,238,243,245,248,251,261,265,274,275,276,284,287,289,313,388,389,537,539,554,557,558,566,568,772,831,832,836,837,838,840,842,844,850,854,859,916,998,1002,1004,1005,1006,1007,1009,1011,1013,1020,1024,1031,1457,1461,1470,1635,1694,1698,1930,1935],longitude_axi:1935,longitude_of_central_meridian:[579,589,593,745,758,760,1520,1529,1533,1578,1583,1585,1760,1765,1767,1770,1779,1783,1870,1874,1876,1879,1886,1890],loss:[364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],lossi:[285,1935],lower:[0,297,308,371,418,462,491,531,576,599,632,689,743,767,829,911,969,995,1088,1140,1193,1239,1275,1291,1304,1321,1338,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820,1935],lowest:[285,1935],mac:288,made:[0,265,287,289,1934,1935],mai:[0,205,208,209,210,211,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,265,276,282,284,285,295,296,298,301,306,307,309,323,362,369,370,372,380,409,416,417,419,428,454,460,461,463,470,489,490,492,497,520,529,530,532,538,540,542,544,545,546,547,548,549,550,551,552,557,566,574,575,577,584,597,598,600,609,630,631,633,641,676,685,687,688,690,692,699,702,730,741,742,744,748,765,766,768,782,821,827,828,830,832,833,836,837,838,839,840,843,844,847,848,849,850,852,859,909,910,912,925,961,967,968,970,974,993,994,996,998,999,1000,1004,1005,1006,1007,1008,1009,1012,1013,1017,1018,1019,1020,1022,1023,1031,1075,1079,1086,1087,1089,1097,1118,1131,1138,1139,1141,1149,1184,1191,1192,1194,1202,1230,1237,1238,1240,1248,1269,1273,1274,1276,1284,1289,1290,1292,1295,1302,1303,1305,1311,1319,1320,1322,1328,1336,1337,1339,1346,1350,1351,1353,1356,1357,1359,1403,1404,1406,1425,1426,1428,1450,1451,1453,1473,1474,1476,1482,1483,1485,1515,1516,1518,1535,1536,1538,1555,1556,1558,1574,1575,1577,1587,1588,1590,1619,1620,1622,1625,1626,1628,1631,1649,1650,1652,1678,1679,1681,1688,1689,1691,1694,1710,1715,1716,1718,1733,1734,1736,1750,1751,1753,1756,1757,1759,1785,1786,1788,1800,1801,1803,1818,1819,1821,1930,1931,1932,1934,1935],main:1935,mainli:1935,major:[702,1932],make:[224,252,264,272,282,285,291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1754,1930,1935],man:1935,manag:[0,213,214,271,272,281,283],mandat:1931,mani:[215,241,313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244,1935],manipul:[265,287,289],manner:[265,541,1935],manual:[285,1935],map:[205,225,253,265,282,285,613,614,843,1012,1935],mark:[264,281,285,1935],martin:264,mask:[0,231,263,282,285,310,323,373,380,420,428,634,641,685,691,692,694,698,699,700,701,717,725,735,769,782,831,852,913,925,997,1022,1090,1097,1142,1149,1195,1202,1241,1248,1282],masked_c:[310,769,913],masked_q:1935,masked_v:[373,420,634,1090,1142,1195,1241],masked_x:831,maskedconst:[701,717,725],maskerror:0,master:264,match:[298,309,372,419,442,463,492,520,532,538,542,544,545,546,547,548,549,550,551,552,577,600,633,690,744,768,830,832,833,836,837,838,839,840,844,847,848,849,850,859,912,970,996,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1023,1031,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],matter:1935,max:[719,731],maxim:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],maximis:[282,1930,1935],maximum:[275,282,285,323,380,428,470,477,478,540,547,584,609,641,692,699,718,721,748,782,852,925,974,1007,1022,1023,1097,1149,1202,1248,1935],mbar:[850,1020],mean:[63,82,179,186,205,211,240,272,275,282,285,287,289,300,312,323,375,380,422,428,470,483,496,537,547,557,558,562,566,568,584,609,636,641,699,706,748,771,782,844,852,859,915,925,974,1002,1007,1010,1011,1013,1022,1023,1031,1092,1097,1129,1144,1149,1197,1202,1243,1248,1279,1294,1309,1326,1343,1361,1390,1408,1457,1461,1465,1470,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1932,1935],meant:[265,1931],measur:[205,210,215,222,225,239,241,250,253,274,275,282,423,425,427,428,431,435,437,438,451,541,546,553,699,833,999,1007,1410,1413,1417,1421,1458,1935],mechan:[282,285,1935],meet:1935,membership:[521,1444],memo:[291,302,365,412,457,485,514,523,570,594,626,680,737,761,824,905,964,989,1082,1122,1134,1187,1233,1298,1315,1332,1349,1355,1388,1402,1424,1446,1471,1481,1514,1534,1552,1573,1586,1624,1648,1677,1687,1714,1732,1755,1768,1784,1799,1817,1846,1852,1869,1877,1891,1900,1913],memor:1931,memori:[265,282,287,289,312,328,375,382,422,430,499,636,643,708,732,771,787,856,915,929,1010,1028,1092,1099,1133,1144,1151,1197,1204,1243,1250,1287,1296,1313,1330,1348,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1931],mercat:[216,244],messag:[0,264,281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],meta:265,metadata:[0,1,63,82,179,186,205,215,217,226,241,245,254,265,274,275,276,282,285,287,289,520,533,536,537,540,541,542,543,544,545,548,551,553,556,559,562,563,565,567,568,831,836,837,838,844,845,851,852,853,854,855,856,859,861,901,902,990,997,1003,1004,1005,1006,1007,1013,1015,1021,1022,1024,1026,1028,1031,1033,1074,1076,1080,1081,1456,1457,1458,1460,1462,1465,1466,1468,1469,1470,1631,1632,1634,1635,1636,1639,1641,1644,1645,1694,1696,1698,1700,1704,1706,1709,1711],meteorolog:[287,289],method:[0,205,207,208,209,210,211,212,213,214,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,265,275,276,282,285,287,289,295,296,298,306,307,309,310,323,369,370,372,373,380,416,417,419,420,428,459,460,461,463,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,489,490,492,512,520,529,530,532,533,538,540,541,542,543,544,545,546,547,549,550,551,552,553,554,557,562,566,574,575,577,584,597,598,600,609,630,631,633,634,641,687,688,690,692,699,722,723,724,741,742,744,748,765,766,768,769,782,827,828,830,831,832,833,835,836,837,838,839,840,842,844,847,848,849,850,852,853,859,866,867,868,873,874,875,885,886,887,888,889,890,901,909,910,912,913,925,967,968,970,974,993,994,996,997,998,999,1000,1002,1003,1004,1005,1006,1007,1008,1009,1011,1013,1017,1018,1019,1020,1022,1023,1031,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1074,1075,1081,1086,1087,1089,1090,1097,1138,1139,1141,1142,1149,1191,1192,1194,1195,1202,1237,1238,1240,1241,1248,1273,1274,1276,1289,1290,1292,1302,1303,1305,1319,1320,1322,1336,1337,1339,1350,1351,1353,1356,1357,1359,1403,1404,1406,1425,1426,1428,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1450,1451,1453,1458,1465,1473,1474,1476,1482,1483,1485,1515,1516,1518,1535,1536,1538,1555,1556,1558,1574,1575,1577,1587,1588,1590,1619,1620,1622,1623,1625,1626,1628,1634,1644,1649,1650,1652,1678,1679,1681,1688,1689,1691,1694,1709,1710,1715,1716,1718,1733,1734,1736,1750,1751,1753,1756,1757,1759,1785,1786,1788,1800,1801,1803,1818,1819,1821,1930,1931,1932],method_descriptor:[295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818],methodolog:249,metr:[210,239,683,697,712,715,728,735,1562,1565,1568,1571],metric:[210,239],middl:1003,might:[211,226,240,254,1935],min:[721,731,1930],minim:[272,281],minimis:[842,1011],minimum:[0,282,285,323,380,428,467,470,472,475,481,540,562,584,609,641,692,699,719,720,748,782,852,925,974,1002,1022,1097,1149,1202,1248,1431,1434,1437,1441,1465,1935],minor:1932,miscellan:1,miss:[0,48,208,221,227,230,237,248,282,288,323,364,380,411,428,456,641,678,685,692,699,709,719,721,727,731,735,782,823,852,925,963,1003,1022,1081,1097,1120,1149,1186,1202,1232,1248,1271,1564,1570,1935],missing_valu:[0,231,282,310,323,373,380,420,428,540,634,641,769,782,831,852,913,925,997,1022,1090,1097,1142,1149,1195,1202,1241,1248,1935],mix:[45,46],mixin:[0,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,232,233,234,235,243,250,253,257,258,259,260,261],mixtur:284,mode:[0,285,542,1935],model2:231,model:[208,209,210,211,216,217,220,221,222,223,224,225,226,237,238,239,240,243,244,245,247,248,250,251,252,253,254,265,275,277,282,285,287,289,323,345,350,351,380,391,392,395,401,403,404,428,440,447,448,540,609,615,620,621,641,651,652,653,657,664,666,668,670,671,751,756,757,782,804,809,810,843,852,864,865,869,872,878,892,898,899,925,945,950,951,974,979,981,986,1012,1022,1042,1045,1051,1065,1071,1072,1097,1107,1112,1113,1149,1159,1160,1161,1165,1172,1174,1176,1178,1179,1202,1212,1213,1216,1222,1224,1225,1248,1258,1263,1264,1931,1932,1935],model_a:1935,modif:[291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1754,1931],modifi:[249,265,282,285,287,289,355,406,450,459,538,673,814,832,833,839,840,847,848,849,954,998,999,1000,1008,1009,1017,1018,1019,1023,1075,1115,1181,1227,1266,1383,1399,1420,1509,1559,1614,1672,1710,1729,1747,1814,1841,1866,1910,1927,1930,1931,1935],modul:1935,monoton:[208,221,237,248],month:[287,289],monthli:[275,276],more:[0,208,211,217,223,226,237,240,245,251,254,264,265,276,282,285,287,289,292,301,303,323,364,366,380,411,413,428,456,470,486,497,540,541,584,609,627,641,678,681,685,692,699,748,762,782,823,836,837,838,852,906,925,963,974,990,1003,1004,1005,1006,1022,1081,1083,1097,1120,1123,1131,1135,1149,1186,1188,1202,1232,1234,1248,1271,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1931,1935],most:[221,233,248,557,566,683,844,1013,1694,1935],move:[0,1935],much:[282,1007,1931,1935],multi:[222,250],multidimension:[219,227,230,246,814,1614,1935],multipl:[0,222,225,229,249,255,272,276,282,541,551,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1935],multipli:0,must:[210,213,221,228,239,248,249,285,291,298,299,301,309,323,372,380,419,428,463,470,485,492,493,497,532,540,577,584,600,609,633,641,685,690,692,699,744,748,768,782,814,830,852,912,925,970,974,996,1003,1022,1089,1097,1122,1123,1126,1131,1141,1149,1194,1202,1240,1248,1272,1276,1278,1284,1288,1292,1293,1295,1298,1299,1305,1306,1311,1315,1316,1322,1323,1328,1332,1333,1339,1340,1346,1349,1353,1354,1359,1406,1428,1453,1476,1485,1518,1538,1558,1559,1577,1590,1614,1622,1628,1652,1681,1691,1718,1736,1753,1754,1759,1788,1803,1821,1931,1935],mutabl:265,my_cfdmimplement:265,my_coordin:265,my_field:265,my_field_2:265,my_field_3:265,my_implement:265,my_implementation2:265,my_implementation_2:265,my_netcdf:265,my_netcdfread:265,my_read:265,my_read_2:265,my_read_3:265,my_writ:265,n_field:275,name:[0,205,207,208,209,210,211,212,215,216,217,218,220,221,222,223,224,225,226,228,229,230,231,236,237,238,239,240,241,243,244,247,248,250,251,253,254,255,257,258,259,260,261,264,265,270,272,273,274,275,281,282,285,295,296,297,306,307,308,313,321,323,328,333,340,341,342,345,346,347,348,349,350,351,361,369,370,371,376,378,380,382,383,386,387,388,391,392,393,394,395,396,397,398,399,400,401,402,403,404,408,416,417,418,423,426,428,430,432,436,437,438,440,441,443,444,446,447,448,453,459,460,461,462,465,466,468,470,473,476,480,482,483,489,490,491,529,530,531,533,539,540,544,549,550,551,554,574,575,576,581,582,584,585,586,587,588,591,597,598,599,604,609,613,614,615,616,617,618,619,620,621,630,631,632,637,639,641,643,644,647,648,649,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,675,687,688,689,694,708,741,742,743,747,748,749,750,751,752,753,754,755,756,757,765,766,767,772,780,782,787,792,799,800,801,804,805,806,807,808,809,810,820,827,828,829,832,840,842,846,852,856,857,863,864,865,866,867,868,869,872,873,874,875,876,877,878,879,880,883,884,885,886,887,888,889,890,891,892,897,898,899,904,909,910,911,916,923,925,929,934,941,942,943,945,946,947,948,949,950,951,960,967,968,969,972,974,977,978,979,980,981,982,983,985,986,993,994,995,998,1007,1009,1011,1016,1022,1028,1029,1035,1036,1037,1039,1040,1041,1042,1045,1046,1047,1048,1049,1050,1051,1052,1053,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1070,1071,1072,1078,1086,1087,1088,1093,1095,1097,1099,1100,1103,1104,1105,1107,1108,1109,1110,1111,1112,1113,1117,1138,1139,1140,1145,1147,1149,1151,1152,1155,1156,1157,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1183,1191,1192,1193,1198,1200,1202,1204,1205,1208,1209,1210,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1229,1237,1238,1239,1244,1246,1248,1250,1251,1254,1255,1256,1258,1259,1260,1261,1262,1263,1264,1268,1273,1274,1275,1280,1283,1289,1290,1291,1302,1303,1304,1319,1320,1321,1336,1337,1338,1350,1351,1352,1356,1357,1358,1367,1373,1378,1387,1392,1394,1397,1401,1403,1404,1405,1411,1414,1418,1423,1425,1426,1427,1430,1432,1435,1438,1440,1442,1450,1451,1452,1472,1473,1474,1475,1477,1478,1479,1482,1483,1484,1493,1499,1504,1513,1515,1516,1517,1522,1523,1525,1526,1527,1528,1531,1535,1536,1537,1555,1556,1557,1574,1575,1576,1580,1581,1582,1587,1588,1589,1598,1604,1609,1618,1619,1620,1621,1625,1626,1627,1633,1637,1642,1647,1649,1650,1651,1659,1664,1669,1676,1678,1679,1680,1688,1689,1690,1697,1702,1707,1713,1715,1716,1717,1722,1724,1727,1731,1733,1734,1735,1740,1742,1745,1749,1750,1751,1752,1756,1757,1758,1762,1763,1764,1772,1773,1775,1776,1777,1778,1781,1785,1786,1787,1791,1792,1795,1798,1800,1801,1802,1807,1809,1812,1816,1818,1819,1820,1828,1833,1838,1845,1847,1848,1849,1850,1857,1860,1863,1868,1872,1873,1881,1882,1884,1885,1888,1894,1895,1896,1899,1904,1906,1908,1912,1918,1921,1924,1929,1931,1932,1935],namespac:[313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],nativ:285,natur:[0,205,1935],nax:[541,548],nc_clear_component_dimension_group:[222,225,873,885,886,1046,1058,1059,1935],nc_clear_component_sample_dimension_group:[222,225,874,887,888,1047,1060,1061,1935],nc_clear_component_variable_group:[222,225,875,889,890,1048,1062,1063,1935],nc_clear_dimension_group:[0,224,395,401,657,666,981,986,1165,1174,1216,1222,1935],nc_clear_geometry_variable_group:[0,878,892,1051,1065,1935],nc_clear_global_attribut:[210,222,225,285,881,893,894,1054,1066,1067,1935],nc_clear_group_attribut:[0,222,225,882,895,896,1055,1068,1069,1935],nc_clear_hdf5_chunks:[285,723,724],nc_clear_sample_dimension_group:[664,668,1172,1176,1935],nc_clear_unlimit:0,nc_clear_variable_group:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,285,350,351,403,404,447,448,620,621,670,671,756,757,809,810,898,899,950,951,1071,1072,1112,1113,1178,1179,1224,1225,1263,1264,1935],nc_del_component_dimens:[222,225,866,885,886,1039,1058,1059,1935],nc_del_component_sample_dimens:[222,225,867,887,888,1040,1060,1061,1935],nc_del_component_sample_dimension_group:[867,1040],nc_del_component_vari:[222,225,868,889,890,1041,1062,1063,1935],nc_del_dimens:[209,218,224,228,229,285,391,395,396,398,400,401,651,657,658,661,665,666,977,978,979,981,982,983,985,986,1159,1165,1166,1169,1173,1174,1212,1216,1217,1219,1221,1222,1935],nc_del_geometry_vari:[869,878,879,883,891,892,1042,1051,1052,1056,1064,1065],nc_del_sample_dimens:[218,228,652,659,662,664,667,668,1160,1167,1170,1172,1175,1176,1935],nc_del_vari:[208,209,210,217,218,220,221,222,223,225,226,228,229,230,285,342,345,347,348,349,350,351,392,397,399,402,403,404,438,440,443,444,446,447,448,615,617,618,619,620,621,649,653,660,663,669,670,671,751,753,754,755,756,757,801,804,806,807,808,809,810,865,872,880,884,897,898,899,943,945,947,948,949,950,951,1037,1045,1053,1057,1070,1071,1072,1105,1107,1109,1110,1111,1112,1113,1157,1161,1168,1171,1177,1178,1179,1210,1213,1218,1220,1223,1224,1225,1256,1258,1260,1261,1262,1263,1264,1935],nc_dimension_group:[0,224,391,401,651,666,979,986,1159,1174,1212,1222,1935],nc_geometry__variablegroup:[892,1065],nc_geometry_variable_group:[0,222,225,869,892,1042,1065,1935],nc_get_dimens:[209,218,224,228,229,285,391,393,395,398,400,401,549,651,654,657,661,665,666,979,980,981,983,985,986,1159,1162,1165,1169,1173,1174,1212,1214,1216,1219,1221,1222,1935],nc_get_extern:[445,1935],nc_get_geometry_vari:[222,225,869,876,878,883,891,892,1042,1049,1051,1056,1064,1065],nc_get_sample_dimens:[218,228,652,655,662,664,667,668,1160,1163,1170,1172,1175,1176,1935],nc_get_unlimited_ax:0,nc_get_vari:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,285,341,342,345,346,348,349,350,351,387,392,394,399,402,403,404,437,438,440,441,444,446,447,448,550,615,616,618,619,620,621,648,653,656,663,669,670,671,751,752,754,755,756,757,800,801,804,805,807,808,809,810,872,877,884,897,898,899,942,943,945,946,948,949,950,951,1036,1045,1050,1057,1070,1071,1072,1104,1107,1108,1110,1111,1112,1113,1156,1161,1164,1171,1177,1178,1179,1209,1213,1215,1220,1223,1224,1225,1255,1258,1259,1261,1262,1263,1264,1935],nc_global_attribut:[0,210,222,225,285,870,893,894,1043,1066,1067,1935],nc_group_attribut:[0,222,225,871,895,896,1044,1068,1069,1935],nc_has_dimens:[209,218,224,228,229,393,396,400,654,658,665,980,982,985,1162,1166,1173,1214,1217,1221,1935],nc_has_geometry_vari:[876,879,891,1049,1052,1064],nc_has_sample_dimens:[218,228,655,659,667,1163,1167,1175,1935],nc_has_vari:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,346,347,349,394,397,402,441,443,446,616,617,619,656,660,669,752,753,755,805,806,808,877,880,897,946,947,949,1050,1053,1070,1108,1109,1111,1164,1168,1177,1215,1218,1223,1259,1260,1262,1935],nc_hdf5_chunksiz:[285,722,724],nc_is_unlimit:[0,224,282,285,987,1935],nc_is_unlimited_axi:0,nc_sample_dimension_group:[652,668,1160,1176,1935],nc_set_component_dimens:[222,225,866,873,886,1039,1046,1059,1935],nc_set_component_dimension_group:[222,225,866,873,885,1039,1046,1058,1935],nc_set_component_sample_dimens:[222,225,867,874,888,1040,1047,1061,1935],nc_set_component_sample_dimension_group:[222,225,867,874,887,1040,1047,1060,1935],nc_set_component_vari:[222,225,868,875,890,1041,1048,1063,1935],nc_set_component_variable_group:[222,225,868,875,889,1041,1048,1062,1935],nc_set_dimens:[209,218,224,228,229,285,391,393,395,396,398,401,651,654,657,658,661,666,842,972,977,978,979,980,981,982,983,986,1011,1159,1162,1165,1166,1169,1174,1212,1214,1216,1217,1219,1222,1935],nc_set_dimension_group:[0,224,391,395,651,657,979,981,1159,1165,1212,1216,1935],nc_set_extern:[442,1935],nc_set_geometry_vari:[222,225,869,876,878,879,883,892,1042,1049,1051,1052,1056,1065],nc_set_geometry_variable_group:[0,222,225,869,878,1042,1051,1935],nc_set_global_attribut:[0,210,222,225,285,870,881,1043,1054,1935],nc_set_group_attribut:[0,222,225,871,882,1044,1055,1935],nc_set_hdf5_chunks:[285,722,723],nc_set_sample_dimens:[218,228,652,655,659,662,664,668,1160,1163,1167,1170,1172,1176,1935],nc_set_sample_dimension_group:[652,664,1160,1172,1935],nc_set_unlimit:[0,224,282,285,984,1935],nc_set_unlimited_axi:0,nc_set_unlimited_dimens:0,nc_set_vari:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,285,345,346,347,348,350,351,392,394,397,399,403,404,440,441,443,444,447,448,615,616,617,618,620,621,649,653,656,660,663,670,671,751,752,753,754,756,757,804,805,806,807,809,810,842,864,865,872,877,880,884,898,899,945,946,947,948,950,951,1011,1037,1045,1050,1053,1057,1071,1072,1105,1107,1108,1109,1110,1112,1113,1157,1161,1164,1168,1171,1178,1179,1210,1213,1215,1218,1220,1224,1225,1256,1258,1259,1260,1261,1263,1264,1935],nc_set_variable_group:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,285,345,351,392,404,440,448,615,621,653,671,751,757,804,810,872,899,945,951,1045,1072,1107,1113,1161,1179,1213,1225,1258,1264,1935],nc_unlimit:0,nc_variable_group:[0,208,209,210,217,218,220,221,222,223,225,226,228,229,230,345,350,392,403,440,447,615,620,653,670,751,756,804,809,872,898,945,950,1045,1071,1107,1112,1161,1178,1213,1224,1258,1263,1935],nca:[0,264,281,282,288,1934],ncdim:[274,275,276,539,541,549,842,844,977,978,1011,1013,1935],ncdump:[282,1935],ncgen:282,ncvar:[231,274,275,287,289,341,342,387,388,437,438,541,544,550,613,614,648,649,800,801,844,848,859,864,865,942,943,1007,1011,1013,1018,1031,1036,1037,1104,1105,1156,1157,1209,1210,1255,1256,1930,1935],ndarrai:[2,27,28,43,44,45,46,101,102,122,127,132,133,138,139,144,145,150,169,192,232,256,290,301,484,497,679,1121,1131,1284,1295,1297,1311,1314,1328,1331,1346],ndim:[0,5,6,13,14,18,19,24,25,31,32,41,42,50,51,58,59,75,76,93,94,99,100,105,106,110,111,115,116,120,121,125,126,130,131,136,137,142,143,148,149,153,154,172,173,195,196,212,227,231,233,234,235,494,1127,1307,1324,1341,1935],nearli:213,necessari:[842,1011,1935],necessarili:1935,need:[210,212,217,218,223,227,228,230,233,234,235,239,245,251,265,295,306,369,416,459,460,489,529,574,597,630,687,741,765,827,842,909,967,993,1011,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1931,1935],neg:[282,285,296,307,323,343,362,363,370,380,390,409,410,417,428,439,454,455,461,470,490,530,540,575,584,598,609,631,641,650,676,677,688,699,702,716,719,721,730,731,733,742,748,766,782,802,821,822,828,852,910,925,944,961,962,968,974,994,1022,1038,1079,1080,1087,1097,1106,1118,1119,1139,1149,1158,1184,1185,1192,1202,1211,1230,1231,1238,1248,1257,1269,1270,1274,1290,1303,1320,1337,1351,1357,1404,1426,1451,1474,1483,1516,1536,1556,1575,1588,1620,1626,1650,1679,1689,1716,1734,1751,1757,1786,1801,1819],ness:[285,1935],netcdf3:[285,722,723,724,1935],netcdf3_64bit:285,netcdf3_64bit_data:[0,285],netcdf3_64bit_offset:[0,285],netcdf3_class:285,netcdf4:[0,45,46,231,273,282,285,287,288,289,292,303,366,413,486,627,681,685,762,906,990,1083,1135,1188,1234,1277,1281,1286,1930,1935],netcdf4_class:285,netcdf:[0,205,219,227,231,233,234,235,237,239,248,252,253,254,255,265,273,282,285,287,288,289,323,341,342,345,346,347,348,349,350,351,380,387,388,391,392,393,394,395,396,397,398,399,400,401,402,403,404,428,437,438,440,441,442,443,444,445,446,447,448,459,539,540,544,549,550,609,613,614,615,616,617,618,619,620,621,641,648,649,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,700,751,752,753,754,755,756,757,782,800,801,804,805,806,807,808,809,810,843,852,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,925,942,943,945,946,947,948,949,950,951,974,977,978,979,980,981,982,983,984,985,986,987,1003,1007,1012,1022,1036,1037,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1097,1104,1105,1107,1108,1109,1110,1111,1112,1113,1149,1156,1157,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1202,1209,1210,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1248,1255,1256,1258,1259,1260,1261,1262,1263,1264,1280,1281,1283,1285,1286,1931],netcdf_arrai:1935,netcdf_flatten:[0,288],netcdfarrai:[265,277,729,1572,1935],netcdfcompon:[222,225],netcdfdimens:[209,218,224,228,229],netcdfextern:210,netcdffilearrai:231,netcdfgeometri:[222,225],netcdfglobalattribut:[222,225],netcdfgroupattribut:[222,225],netcdfhdf5:219,netcdfread:[0,265],netcdfsampledimens:[218,228],netcdfunlimiteddimens:[0,224],netcdfunreferenc:[222,225],netcdfvari:[208,209,210,217,218,220,221,222,223,225,226,228,229,230],netcdfwrit:[0,265],network:[287,289],never:[265,860,1640,1794,1935],nevertheless:1935,new_:214,new_atol:266,new_extern:1935,new_fil:[265,1935],new_identifi:0,new_log_level:268,new_new_:214,new_par:1935,new_rtol:269,newer:[285,288],newest:288,next:1932,nino:[211,240],no_mask:[831,997],no_mask_q:1935,no_mask_x:831,node:[319,320,331,332,338,339,358,359,778,779,790,791,797,798,817,818,866,868,873,875,885,886,889,890,921,922,932,933,939,940,957,958,1039,1041,1046,1048,1058,1059,1062,1063,1935],node_count:[358,817,868,875,889,890,957,1041,1048,1062,1063],nodecount:[319,331,338,358,778,790,797,817,921,932,939,957],nodecountproperti:[265,277],noleap:[287,289],non:[0,205,208,221,237,248,282,285,287,289,295,296,298,306,307,309,323,369,370,372,380,416,417,419,428,460,461,463,470,489,490,492,529,530,532,540,562,574,575,577,584,597,598,600,609,630,631,633,641,687,688,690,695,696,697,699,703,709,712,713,714,715,726,727,728,741,742,744,748,765,766,768,782,827,828,830,843,844,852,909,910,912,925,967,968,970,974,993,994,996,1012,1013,1022,1086,1087,1089,1097,1138,1139,1141,1149,1191,1192,1194,1202,1237,1238,1240,1248,1273,1274,1276,1289,1290,1292,1302,1303,1305,1319,1320,1322,1336,1337,1339,1350,1351,1353,1356,1357,1359,1403,1404,1406,1425,1426,1428,1450,1451,1453,1465,1473,1474,1476,1482,1483,1485,1515,1516,1518,1535,1536,1538,1555,1556,1558,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1574,1575,1577,1587,1588,1590,1619,1620,1622,1625,1626,1628,1631,1649,1650,1652,1678,1679,1681,1688,1689,1691,1694,1715,1716,1718,1733,1734,1736,1750,1751,1753,1756,1757,1759,1785,1786,1788,1800,1801,1803,1818,1819,1821,1931,1935],none:[208,209,210,211,212,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261,265,272,273,282,285,301,310,313,314,315,316,317,318,321,322,323,324,326,327,329,330,333,334,335,336,337,340,341,343,344,346,347,348,349,353,354,355,356,357,358,359,360,361,362,363,364,373,376,377,378,379,380,381,383,385,386,387,390,393,394,396,397,398,399,400,402,406,407,408,409,410,411,420,423,424,425,426,427,428,429,431,432,434,435,436,437,439,441,443,444,445,446,450,451,452,453,454,455,456,465,469,470,477,480,481,482,483,497,503,512,534,540,541,542,543,544,545,546,547,548,549,550,551,552,553,555,557,563,564,566,581,582,584,585,586,587,588,590,591,592,593,604,608,609,613,616,617,618,619,622,623,624,625,634,637,638,639,640,641,642,644,646,647,648,650,654,655,656,658,659,660,661,662,663,665,667,669,673,674,675,676,677,678,685,692,694,695,696,697,698,699,700,702,703,709,712,713,714,715,716,718,719,720,721,724,726,727,728,730,731,732,733,734,747,748,749,750,752,753,754,755,759,760,769,772,773,774,775,776,777,780,781,782,783,785,786,788,789,792,793,794,795,796,799,800,802,803,805,806,807,808,812,813,814,815,816,817,818,819,820,821,822,823,831,836,837,838,842,843,846,851,852,855,857,861,863,866,867,868,870,871,873,874,875,876,877,879,880,881,882,883,884,885,886,887,888,889,890,891,893,894,895,896,897,901,902,903,904,913,916,917,918,919,920,923,924,925,926,928,930,931,934,935,936,937,938,941,942,944,946,947,948,949,953,954,955,956,957,958,959,960,961,962,963,972,973,974,975,976,977,980,982,983,985,987,988,997,1002,1003,1004,1005,1006,1011,1012,1014,1015,1016,1021,1022,1025,1026,1029,1032,1033,1035,1036,1038,1039,1040,1041,1043,1044,1046,1047,1048,1049,1050,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1066,1067,1068,1069,1070,1074,1075,1076,1077,1078,1079,1080,1081,1090,1093,1094,1095,1096,1097,1098,1100,1102,1103,1104,1106,1108,1109,1110,1111,1115,1116,1117,1118,1119,1120,1130,1131,1142,1145,1146,1147,1148,1149,1150,1152,1154,1155,1156,1158,1162,1163,1164,1166,1167,1168,1169,1170,1171,1173,1175,1177,1181,1182,1183,1184,1185,1186,1195,1198,1199,1200,1201,1202,1203,1205,1207,1208,1209,1211,1214,1215,1217,1218,1219,1220,1221,1223,1227,1228,1229,1230,1231,1232,1241,1244,1245,1246,1247,1248,1249,1251,1253,1254,1255,1257,1259,1260,1261,1262,1266,1267,1268,1269,1270,1271,1277,1283,1284,1285,1295,1311,1328,1346,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1381,1382,1383,1384,1385,1386,1387,1391,1392,1393,1394,1396,1397,1399,1400,1401,1409,1410,1411,1412,1413,1414,1416,1417,1418,1420,1421,1422,1423,1440,1441,1442,1454,1458,1459,1466,1467,1479,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1507,1508,1509,1510,1511,1512,1513,1522,1523,1525,1526,1527,1528,1530,1531,1532,1533,1548,1549,1550,1551,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1580,1581,1582,1584,1585,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1612,1613,1614,1615,1616,1617,1618,1633,1636,1637,1641,1642,1644,1645,1646,1647,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1671,1672,1673,1674,1675,1676,1683,1684,1685,1686,1695,1696,1697,1699,1700,1702,1705,1706,1707,1709,1710,1711,1712,1713,1721,1722,1723,1724,1726,1727,1729,1730,1731,1739,1740,1741,1742,1744,1745,1747,1748,1749,1762,1763,1764,1766,1767,1772,1773,1775,1776,1777,1778,1780,1781,1782,1783,1791,1792,1795,1797,1798,1806,1807,1808,1809,1811,1812,1814,1815,1816,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1840,1841,1842,1843,1844,1845,1850,1855,1856,1857,1858,1859,1860,1861,1862,1863,1865,1866,1867,1868,1872,1873,1875,1876,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1896,1898,1899,1903,1904,1905,1906,1907,1908,1910,1911,1912,1916,1917,1918,1919,1920,1921,1922,1923,1924,1926,1927,1928,1929,1935],nonetheless:[282,1935],nor:[364,411,456,678,823,844,963,1003,1013,1081,1120,1186,1232,1271,1694,1935],normal:856,normalis:[270,328,382,430,643,708,787,929,1028,1099,1151,1204,1250],note:[9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,208,209,210,211,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,264,265,272,281,282,285,287,289,323,327,363,380,381,428,429,459,470,520,538,540,544,584,609,641,642,698,699,748,782,786,822,832,833,836,837,838,839,840,844,847,848,849,850,852,853,859,925,928,962,974,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1022,1023,1025,1031,1097,1098,1149,1150,1202,1203,1248,1249,1299,1370,1393,1412,1496,1601,1634,1661,1699,1723,1741,1808,1830,1859,1905,1920,1935],now:[0,285,562,1465,1935],num2dat:[45,46],number:[4,6,12,14,17,19,23,25,30,32,40,42,49,51,57,59,74,76,92,94,98,100,104,106,109,111,114,116,119,121,124,126,129,131,135,137,141,143,147,149,152,154,171,173,194,196,208,209,212,218,221,223,224,227,230,231,233,234,235,237,238,248,251,252,264,271,272,275,282,283,287,289,323,380,428,470,526,540,544,548,557,566,584,609,641,692,699,748,782,842,852,925,1003,1011,1022,1097,1149,1202,1248,1449,1930,1933,1935],numer:[205,208,210,221,237,239,248,271,282,283,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1932,1935],numpi:[0,2,3,7,9,10,11,15,16,21,22,27,28,29,38,39,43,44,45,46,47,48,52,54,55,56,69,71,72,73,85,90,96,97,101,102,103,107,108,112,113,117,118,122,123,127,128,132,133,134,138,139,140,144,145,146,150,151,155,157,158,159,161,163,164,165,169,170,174,176,177,180,182,183,187,190,191,192,193,197,198,199,200,201,202,203,204,208,209,210,214,218,219,221,223,226,228,229,230,231,232,237,238,239,243,246,248,251,254,255,256,260,261,263,273,285,288,290,292,301,303,314,318,327,330,334,337,353,355,357,366,381,406,409,413,429,450,454,484,486,497,627,642,673,676,679,681,685,692,698,701,702,717,719,721,725,731,762,773,777,786,789,793,796,812,814,816,906,917,920,928,931,935,938,953,954,956,990,997,1025,1075,1083,1098,1115,1118,1121,1123,1131,1135,1150,1181,1184,1188,1203,1227,1230,1234,1249,1266,1269,1272,1284,1288,1295,1297,1299,1311,1314,1316,1328,1331,1333,1346,1362,1366,1368,1370,1372,1374,1377,1381,1383,1385,1393,1399,1412,1420,1488,1492,1494,1496,1498,1500,1503,1507,1509,1511,1593,1597,1599,1601,1603,1605,1608,1612,1614,1616,1655,1658,1660,1661,1663,1665,1668,1671,1672,1674,1699,1710,1723,1729,1741,1747,1808,1814,1824,1827,1829,1830,1832,1834,1837,1840,1841,1843,1855,1858,1859,1861,1865,1866,1905,1910,1916,1919,1920,1922,1926,1927,1935],numpy_arrai:1935,numpyarrai:[236,734,1287],object:[0,45,208,209,210,214,218,219,221,223,226,228,229,230,237,238,239,242,243,246,248,251,254,255,259,260,261,265,272,285,292,295,298,301,303,306,309,313,323,355,366,369,372,376,380,381,406,413,416,419,423,428,450,460,463,465,470,486,489,492,497,498,507,508,513,520,529,532,538,540,541,542,543,544,545,546,547,548,549,550,551,552,553,564,574,577,584,597,600,604,609,627,630,633,637,641,673,681,685,687,690,694,698,699,729,741,744,748,762,765,768,772,782,814,827,830,832,833,836,837,838,839,840,842,844,847,848,849,850,852,859,906,909,912,916,925,954,967,970,972,974,990,993,996,998,999,1000,1004,1005,1006,1008,1009,1011,1013,1017,1018,1019,1020,1022,1023,1031,1075,1083,1086,1089,1093,1097,1115,1123,1131,1132,1135,1138,1141,1145,1149,1181,1188,1191,1194,1198,1202,1227,1234,1237,1240,1244,1248,1266,1272,1273,1276,1284,1288,1289,1292,1295,1299,1302,1305,1311,1312,1316,1319,1322,1328,1329,1333,1336,1339,1346,1347,1350,1353,1356,1359,1383,1399,1403,1406,1420,1425,1428,1450,1453,1458,1467,1473,1476,1482,1485,1509,1515,1518,1535,1538,1555,1558,1572,1574,1577,1587,1590,1614,1619,1622,1625,1628,1649,1652,1672,1678,1681,1688,1691,1710,1715,1718,1729,1733,1736,1747,1750,1753,1756,1759,1785,1788,1800,1803,1814,1818,1821,1841,1866,1910,1927,1930,1935],obs:[218,228,229,887,1060,1935],observ:[287,289,1935],occasion:0,occupi:[218,233],occur:[0,242,249,282,843,1012,1931,1935],occurr:[866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063],ocean:[287,289],oceanographi:[287,289],off:[0,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],offset:285,often:1935,old:[0,214,271,281,283,578,579,583,589,590,593,745,758,760,1519,1520,1524,1529,1530,1533,1578,1583,1585,1760,1765,1767,1769,1770,1774,1779,1780,1783,1870,1874,1876,1878,1879,1883,1886,1887,1890],older:[282,285],omit:[0,227,229,230,255,282,285,323,380,428,470,540,641,699,719,721,731,782,852,925,1022,1097,1149,1202,1248,1935],onc:[265,272,298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],one:[0,208,211,213,216,217,221,222,224,225,226,229,237,240,244,245,248,252,254,255,272,274,275,276,281,282,285,292,303,313,323,362,366,376,380,409,413,423,428,454,470,486,539,540,544,548,551,553,559,563,567,584,609,627,637,641,676,681,685,699,730,735,748,762,772,782,821,842,852,866,867,868,873,874,875,885,886,887,888,889,890,906,916,925,961,974,990,1011,1022,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1079,1083,1093,1097,1118,1135,1145,1149,1184,1188,1198,1202,1230,1234,1244,1248,1269,1458,1462,1466,1469,1930,1935],ones:698,onli:[0,45,46,211,217,223,240,242,245,251,265,272,278,279,280,281,282,285,292,298,301,303,309,310,323,354,366,372,373,380,413,419,420,428,463,470,486,492,497,532,540,577,584,600,609,627,633,634,641,681,685,690,699,744,748,762,768,769,782,813,830,831,852,870,881,893,894,906,912,913,925,970,974,990,996,997,1007,1022,1043,1054,1066,1067,1083,1089,1090,1097,1123,1131,1135,1141,1142,1149,1188,1194,1195,1202,1234,1240,1241,1248,1272,1276,1284,1288,1292,1295,1299,1305,1311,1316,1322,1328,1333,1339,1346,1353,1359,1382,1406,1428,1453,1476,1485,1508,1518,1538,1558,1577,1590,1613,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1930,1931,1935],open:[0,285,287,289],opendap:[265,282,1935],oper:[0,214,265,282,285,287,289,310,312,323,343,355,362,363,364,373,375,380,390,406,409,410,411,420,422,428,439,450,454,455,456,470,520,521,538,540,542,544,545,546,547,549,550,551,584,609,634,636,641,650,673,676,677,678,692,699,700,702,716,730,733,734,748,769,771,782,802,814,821,822,823,831,832,833,836,837,838,839,840,844,847,848,849,850,852,859,913,915,925,944,954,961,962,963,974,997,998,999,1000,1003,1004,1005,1006,1008,1009,1010,1013,1017,1018,1019,1020,1022,1023,1031,1038,1075,1079,1080,1081,1090,1092,1097,1106,1115,1118,1119,1120,1142,1144,1149,1158,1181,1184,1185,1186,1195,1197,1202,1211,1227,1230,1231,1232,1241,1243,1248,1257,1266,1269,1270,1271,1361,1383,1390,1399,1408,1420,1444,1487,1509,1592,1614,1654,1672,1693,1710,1720,1729,1738,1747,1805,1814,1823,1841,1854,1866,1902,1910,1915,1927,1935],operand:214,oppos:[229,255,541,1935],option:[0,207,208,209,210,211,212,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,271,272,273,275,276,281,282,283,284,285,288,310,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,341,342,343,346,347,353,355,357,358,359,360,361,362,363,364,373,375,376,377,378,379,380,381,383,387,388,390,393,394,396,397,406,407,408,409,410,411,420,422,423,424,425,426,427,428,429,431,432,437,438,439,441,443,445,450,452,453,454,455,456,465,466,467,468,469,470,471,472,473,477,478,483,495,498,520,536,538,540,541,542,543,544,545,546,547,548,549,550,551,552,553,556,557,559,565,566,567,581,582,584,585,586,590,591,593,604,605,608,609,613,614,616,617,623,625,634,636,637,638,639,640,641,642,644,648,649,650,654,655,656,658,659,660,673,674,675,676,677,678,679,692,693,694,695,696,697,698,699,700,702,703,705,707,709,710,711,712,716,719,721,729,730,731,733,734,747,748,749,752,753,760,769,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,800,801,802,805,806,812,814,816,817,818,819,820,821,822,823,831,832,833,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,857,859,865,870,876,877,879,880,881,882,893,894,895,896,901,903,904,913,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,942,943,944,946,947,953,954,956,957,958,959,960,961,962,963,972,973,974,975,977,978,980,982,997,998,999,1000,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1029,1031,1033,1036,1037,1038,1043,1049,1050,1052,1053,1054,1055,1066,1067,1068,1069,1074,1075,1076,1077,1078,1079,1080,1081,1090,1092,1093,1094,1095,1096,1097,1098,1100,1104,1105,1106,1108,1109,1115,1116,1117,1118,1119,1120,1128,1130,1132,1142,1144,1145,1146,1147,1148,1149,1150,1152,1156,1157,1158,1162,1163,1164,1166,1167,1168,1181,1182,1183,1184,1185,1186,1195,1197,1198,1199,1200,1201,1202,1203,1205,1209,1210,1211,1214,1215,1217,1218,1227,1228,1229,1230,1231,1232,1241,1243,1244,1245,1246,1247,1248,1249,1251,1255,1256,1257,1259,1260,1266,1267,1268,1269,1270,1271,1308,1310,1312,1325,1327,1329,1342,1344,1345,1347,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1381,1383,1385,1386,1387,1390,1391,1392,1393,1394,1399,1400,1401,1408,1409,1410,1411,1412,1413,1414,1420,1422,1423,1430,1431,1432,1433,1434,1435,1456,1458,1460,1462,1468,1469,1472,1477,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1507,1509,1511,1512,1513,1522,1523,1525,1526,1530,1531,1533,1542,1549,1551,1559,1560,1561,1562,1563,1564,1565,1572,1580,1581,1585,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1612,1614,1616,1617,1618,1630,1631,1632,1633,1634,1635,1636,1637,1644,1646,1647,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1671,1672,1674,1675,1676,1683,1684,1693,1694,1695,1696,1697,1698,1699,1700,1702,1706,1709,1710,1711,1712,1713,1720,1721,1722,1723,1724,1729,1730,1731,1738,1739,1740,1741,1742,1747,1748,1749,1762,1763,1767,1772,1773,1775,1776,1780,1781,1783,1791,1792,1797,1798,1805,1806,1807,1808,1809,1814,1815,1816,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1840,1841,1843,1844,1845,1847,1848,1854,1855,1856,1857,1858,1859,1860,1865,1866,1867,1868,1872,1873,1876,1881,1882,1884,1885,1887,1888,1890,1894,1895,1898,1899,1902,1903,1904,1905,1906,1910,1911,1912,1915,1916,1917,1918,1919,1920,1921,1926,1927,1928,1929,1930,1935],order:[224,252,276,282,345,350,351,363,391,392,395,401,403,404,410,440,447,448,455,483,510,533,541,554,560,568,615,620,621,651,652,653,657,664,666,668,670,671,677,702,733,751,756,757,804,809,810,822,842,869,872,878,892,898,899,945,950,951,962,979,981,986,1011,1023,1042,1045,1051,1065,1071,1072,1080,1107,1112,1113,1119,1159,1160,1161,1165,1172,1174,1176,1178,1179,1185,1212,1213,1216,1222,1224,1225,1231,1258,1263,1264,1270,1463,1470,1623,1931,1935],ordereddict:[562,1023,1465],org:[205,287,288,289],organis:235,origin:[211,240,264,265,285,291,299,303,312,375,422,485,493,564,636,762,771,906,915,990,1010,1092,1122,1126,1144,1197,1243,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1361,1390,1408,1467,1487,1592,1654,1693,1720,1738,1754,1805,1823,1854,1902,1915,1930,1935],orog1:1935,orog:[36,216,244,258,578,581,583,585,587,590,591,604,606,610,623,1519,1522,1524,1525,1527,1530,1531,1543,1545,1549,1769,1772,1774,1775,1777,1780,1781,1878,1881,1883,1884,1887,1888,1935],orog_from_fil:1935,orographi:[216,244],orthogon:[219,246],other:[0,205,225,229,231,253,255,265,282,285,287,289,298,309,323,349,372,380,400,402,419,428,446,463,470,492,532,540,541,542,543,544,545,546,547,548,549,550,551,552,553,562,577,584,600,609,619,633,641,665,667,669,685,690,699,744,748,755,768,782,808,830,843,852,864,891,897,912,925,949,970,974,985,996,1007,1012,1022,1064,1070,1089,1097,1111,1141,1149,1173,1175,1177,1194,1202,1221,1223,1240,1248,1262,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1458,1465,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1931,1933,1935],otherwis:[0,43,48,169,273,282,285,322,323,334,335,337,338,339,340,348,355,379,380,385,386,398,399,406,427,428,434,435,436,444,450,469,470,474,475,476,509,540,564,584,588,608,609,612,618,640,641,646,647,661,662,663,673,691,699,713,714,715,748,750,754,781,782,793,794,796,797,798,799,807,814,843,851,852,861,862,863,883,884,924,925,935,936,938,939,940,941,948,954,974,976,983,1012,1021,1022,1032,1033,1034,1035,1056,1057,1075,1096,1097,1102,1103,1110,1115,1148,1149,1154,1155,1169,1170,1171,1181,1201,1202,1207,1208,1219,1220,1227,1247,1248,1253,1254,1261,1266,1374,1375,1377,1378,1383,1396,1397,1399,1416,1417,1418,1420,1436,1437,1438,1467,1478,1500,1501,1503,1504,1509,1528,1547,1566,1567,1568,1582,1605,1606,1608,1609,1614,1639,1641,1642,1665,1666,1668,1669,1672,1685,1704,1705,1706,1707,1710,1726,1727,1729,1744,1745,1747,1764,1778,1795,1811,1812,1814,1834,1835,1837,1838,1841,1849,1861,1862,1863,1866,1896,1907,1908,1910,1922,1923,1924,1927],out:[0,45,46,219,281,282,285,510,1935],outer:[229,255],outlin:1932,output:[0,273,276,282,285,313,323,376,380,423,428,465,470,520,538,540,544,584,604,609,637,641,699,722,723,724,748,772,782,832,833,836,837,838,839,840,842,844,847,848,849,850,852,859,916,925,972,974,984,987,998,999,1000,1004,1005,1006,1008,1009,1011,1013,1017,1018,1019,1020,1022,1023,1031,1093,1097,1145,1149,1198,1202,1244,1248],outsid:[287,289,1935],over:[0,211,225,226,240,253,254,303,465,683,691,719,721,731,762,906,1002,1003,1081,1935],overal:[282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],overrid:[213,265,1935],overridden:[265,272,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],overwrit:[285,1935],overwritten:285,own:[209,1935],p_gather:1935,pack:[285,1935],packag:[265,267,273,285,288,292,296,297,303,307,308,313,366,370,371,376,413,417,418,423,461,462,465,486,490,491,530,531,575,576,598,599,604,627,631,632,637,681,685,688,689,694,742,743,762,766,767,772,828,829,842,906,910,911,916,968,969,972,990,994,995,1011,1083,1087,1088,1093,1135,1139,1140,1145,1188,1192,1193,1198,1234,1238,1239,1244,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1650,1651,1679,1680,1689,1690,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820,1930,1931,1932,1935],pad:1935,page:[287,289,1935],pair:[215,241,510,558,852,1022,1461,1935],paper:[287,289],parallel:265,paramet:[0,36,37,207,208,209,210,211,212,213,214,215,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,245,246,248,250,251,252,253,254,255,256,259,260,261,265,270,271,272,273,274,275,276,278,279,280,281,282,283,284,285,295,296,298,301,306,307,309,310,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,340,341,342,343,346,347,349,350,353,354,355,356,357,358,359,360,361,362,363,364,369,370,372,373,375,376,377,378,379,380,381,383,386,387,388,390,393,394,396,397,400,401,402,403,406,407,408,409,410,411,416,417,419,420,422,423,424,425,426,427,428,429,431,432,436,437,438,439,441,443,445,446,447,450,451,452,453,454,455,456,460,461,463,465,466,467,468,469,470,471,472,473,476,477,478,480,481,482,483,489,490,492,495,497,498,520,529,530,532,534,536,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,556,557,559,561,565,566,567,574,575,577,579,581,582,584,585,586,587,588,590,591,592,593,597,598,600,604,605,606,607,608,609,610,611,612,613,614,616,617,619,620,622,623,624,625,630,631,633,634,636,637,638,639,640,641,642,644,647,648,649,650,654,655,656,658,659,660,665,666,667,668,669,670,673,674,675,676,677,678,679,687,688,690,692,693,694,695,696,697,698,699,700,702,703,705,707,709,710,711,712,716,719,721,724,726,727,728,729,730,731,733,734,741,742,744,745,747,748,749,750,752,753,755,756,759,760,765,766,768,769,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,799,800,801,802,805,806,808,809,812,813,814,815,816,817,818,819,820,821,822,823,827,828,830,831,832,833,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,857,859,861,863,865,866,867,868,873,874,875,876,877,879,880,881,882,885,886,887,888,889,890,891,892,893,894,895,896,897,898,901,902,903,904,909,910,912,913,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,941,942,943,944,946,947,949,950,953,954,955,956,957,958,959,960,961,962,963,967,968,970,972,973,974,975,977,978,980,982,985,986,987,988,993,994,996,997,998,999,1000,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1029,1031,1033,1035,1036,1037,1038,1039,1040,1041,1046,1047,1048,1049,1050,1052,1053,1054,1055,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1074,1075,1076,1077,1078,1079,1080,1081,1086,1087,1089,1090,1092,1093,1094,1095,1096,1097,1098,1100,1103,1104,1105,1106,1108,1109,1111,1112,1115,1116,1117,1118,1119,1120,1128,1130,1131,1132,1138,1139,1141,1142,1144,1145,1146,1147,1148,1149,1150,1152,1155,1156,1157,1158,1162,1163,1164,1166,1167,1168,1173,1174,1175,1176,1177,1178,1181,1182,1183,1184,1185,1186,1191,1192,1194,1195,1197,1198,1199,1200,1201,1202,1203,1205,1208,1209,1210,1211,1214,1215,1217,1218,1221,1222,1223,1224,1227,1228,1229,1230,1231,1232,1237,1238,1240,1241,1243,1244,1245,1246,1247,1248,1249,1251,1254,1255,1256,1257,1259,1260,1262,1263,1266,1267,1268,1269,1270,1271,1273,1274,1276,1284,1289,1290,1292,1295,1302,1303,1305,1308,1310,1311,1312,1319,1320,1322,1325,1327,1328,1329,1336,1337,1339,1342,1344,1345,1346,1347,1350,1351,1353,1356,1357,1359,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1378,1381,1382,1383,1384,1385,1386,1387,1390,1391,1392,1393,1394,1397,1399,1400,1401,1403,1404,1406,1408,1409,1410,1411,1412,1413,1414,1418,1420,1421,1422,1423,1425,1426,1428,1430,1431,1432,1433,1434,1435,1438,1440,1441,1442,1450,1451,1453,1454,1456,1458,1460,1462,1464,1468,1469,1472,1473,1474,1476,1477,1478,1479,1482,1483,1485,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1504,1507,1508,1509,1510,1511,1512,1513,1515,1516,1518,1520,1522,1523,1525,1526,1527,1528,1530,1531,1532,1533,1535,1536,1538,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1555,1556,1558,1559,1560,1561,1562,1563,1564,1565,1569,1570,1571,1572,1574,1575,1577,1578,1580,1581,1582,1584,1585,1587,1588,1590,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1609,1612,1613,1614,1615,1616,1617,1618,1619,1620,1622,1625,1626,1628,1630,1631,1632,1633,1634,1635,1636,1637,1639,1641,1642,1644,1645,1646,1647,1649,1650,1652,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1669,1671,1672,1673,1674,1675,1676,1678,1679,1681,1683,1684,1686,1688,1689,1691,1693,1694,1695,1696,1697,1698,1699,1700,1702,1704,1706,1707,1709,1710,1711,1712,1713,1715,1716,1718,1720,1721,1722,1723,1724,1727,1729,1730,1731,1733,1734,1736,1738,1739,1740,1741,1742,1745,1747,1748,1749,1750,1751,1753,1770,1772,1773,1775,1776,1777,1778,1780,1781,1782,1783,1785,1786,1788,1791,1792,1795,1797,1798,1800,1801,1803,1805,1806,1807,1808,1809,1812,1814,1815,1816,1818,1819,1821,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1838,1840,1841,1842,1843,1844,1845,1847,1848,1849,1850,1854,1855,1856,1857,1858,1859,1860,1863,1865,1866,1867,1868,1879,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1896,1898,1899,1902,1903,1904,1905,1906,1908,1910,1911,1912,1915,1916,1917,1918,1919,1920,1921,1924,1926,1927,1928,1929,1930,1931,1932,1935],parametersdomainancillari:[216,244],parent:[226,231,249,254,282,310,564,769,913,1933,1935],pars:[282,1931],part:[229,255,265,320,323,332,339,359,380,428,540,609,641,779,782,791,798,818,852,866,868,873,875,885,886,889,890,922,925,933,940,958,974,1022,1039,1041,1046,1048,1058,1059,1062,1063,1097,1149,1202,1248,1935],part_node_count:[359,818,866,868,873,875,885,886,889,890,958,1039,1041,1046,1048,1058,1059,1062,1063],partial:[220,247,265,282,843,1012,1935],particular:[217,245,282,285,295,306,362,369,409,416,454,460,489,529,574,597,630,676,687,730,741,765,821,827,909,961,967,993,1079,1086,1118,1138,1184,1191,1230,1237,1269,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1930,1932,1935],particularli:1935,partnodecount:[320,332,339,359,779,791,798,818,922,933,940,958],partnodecountproperti:[265,277],pass:[264,265,533,554],path:[0,273,282,285,1935],pattern:[265,298,309,372,419,463,492,520,532,538,542,544,545,546,547,549,550,551,577,600,633,690,744,768,830,832,833,836,837,838,839,840,844,847,848,849,850,859,912,970,996,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1023,1031,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],pdf:[287,289],per:282,perform:[0,282,287,551,691,1931,1935],permit:1932,permut:[363,410,455,677,733,822,962,1080,1119,1185,1231,1270,1935],persist:282,philosophi:[287,1935],phrase:1935,physic:[205,211,219,225,240,246,253,287,289,1935],place:[0,214,265,291,299,310,343,355,362,363,364,373,390,406,409,410,411,420,439,450,454,455,456,485,493,564,634,650,673,676,677,678,692,700,702,716,730,733,734,769,802,814,821,822,823,831,843,913,944,954,961,962,963,997,1003,1012,1038,1075,1079,1080,1081,1090,1106,1115,1118,1119,1120,1122,1126,1142,1158,1181,1184,1185,1186,1195,1211,1227,1230,1231,1232,1241,1257,1266,1269,1270,1271,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1383,1399,1420,1467,1509,1614,1672,1710,1729,1747,1754,1814,1841,1866,1910,1927,1935],planetari:[216,217,244,245,287,289],platform:[273,287,289],pleas:[264,287,289],plot:[287,289,1931],point:[0,224,227,230,252,1003,1081,1935],pointer:1935,polar:1935,pole:[274,275,276],polygon:[0,11,56,73,158,165,177,183,200,208,221,223,229,237,243,248,251,255,261,274,275,276,330,789,931,1372,1498,1603,1663,1832,1935],pop:213,popitem:213,popul:285,posit:[0,212,224,227,252,271,283,285,323,343,362,363,380,390,409,410,428,439,454,455,470,494,495,538,540,541,542,584,609,641,650,676,677,699,702,705,716,719,721,730,731,733,748,782,802,821,822,849,852,925,944,961,962,1019,1022,1038,1079,1080,1097,1106,1118,1119,1127,1128,1149,1158,1184,1185,1202,1211,1230,1231,1248,1257,1269,1270,1307,1308,1324,1325,1341,1342,1935],possibl:[0,265,274,281,282,285,298,309,323,341,372,380,387,419,428,437,463,470,477,492,532,540,542,577,584,600,609,613,633,641,648,690,699,744,748,768,782,800,830,843,852,864,870,881,893,894,895,896,912,925,942,970,974,977,996,1007,1012,1022,1036,1043,1054,1066,1067,1068,1069,1089,1097,1104,1141,1149,1156,1194,1202,1209,1240,1248,1255,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1931,1935],potenti:[242,265,281,1935],power:285,practic:[285,1931],pre:[285,1935],preced:[341,342,387,388,437,438,477,478,539,613,614,648,649,800,801,864,865,942,943,977,978,1036,1037,1104,1105,1156,1157,1209,1210,1255,1256,1935],precipitation_amount:[275,276,1935],precipitation_flux:[275,276,1935],precis:[211,240,285,364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],predefin:1935,predetermin:[562,1465],prefer:[310,769,866,867,868,873,874,875,885,886,887,888,889,890,913,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1935],prefix:[313,376,423,465,538,542,604,637,694,772,836,837,838,839,842,844,849,859,916,972,1000,1004,1005,1006,1008,1011,1013,1019,1031,1093,1145,1198,1244],presenc:[224,252,282,1935],present:[219,282,285,287,289,323,343,362,363,380,428,512,534,562,641,782,802,821,822,852,925,944,961,962,1022,1097,1149,1202,1248,1454,1465,1935],preserv:[282,285,363,822,962,1935],pressur:[311,352,360,374,405,407,421,449,452,635,672,674,770,811,819,834,850,900,903,914,952,959,1001,1020,1073,1077,1091,1114,1116,1143,1180,1182,1196,1226,1228,1242,1265,1267,1360,1380,1386,1389,1398,1400,1407,1419,1422,1486,1506,1512,1591,1611,1617,1629,1643,1646,1653,1670,1675,1692,1708,1712,1719,1728,1730,1737,1746,1748,1789,1796,1797,1804,1813,1815,1822,1839,1844,1853,1864,1867,1892,1897,1898,1901,1909,1911,1914,1925,1928],prevent:[0,285,298,309,313,372,376,419,423,463,492,532,577,600,633,637,690,744,768,772,830,842,912,916,970,996,1011,1089,1093,1141,1145,1194,1198,1240,1244,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],previou:[557,566,1935],previous:[533,557,566],print:[0,3,29,43,45,46,48,63,82,103,123,128,134,140,146,151,169,179,186,193,213,265,271,272,273,274,275,281,282,283,285,287,289,310,313,314,315,316,317,318,321,322,323,324,326,327,329,330,333,334,335,336,337,340,341,344,346,347,348,349,353,354,355,356,357,361,373,376,377,378,379,380,381,383,385,386,387,393,394,396,397,398,399,400,402,406,408,420,423,424,425,426,427,428,429,431,432,434,435,436,437,441,443,444,446,450,451,453,465,469,470,477,520,537,538,540,544,546,547,554,557,558,559,560,562,566,567,568,581,582,584,585,586,587,588,591,592,604,608,609,613,616,617,618,619,634,637,638,639,640,641,642,644,646,647,648,654,655,656,658,659,660,661,662,663,665,667,669,673,675,679,683,691,692,694,695,696,697,699,700,701,702,703,709,712,713,714,715,717,719,721,725,726,727,728,731,747,748,749,750,752,753,754,755,759,769,772,773,774,775,776,777,780,781,782,783,785,786,788,789,792,793,794,795,796,799,800,803,805,806,807,808,812,813,814,815,816,820,831,832,833,836,837,838,839,840,842,843,844,846,847,848,849,850,851,852,855,857,859,861,863,876,877,879,880,883,884,891,897,902,904,913,916,917,918,919,920,923,924,925,926,928,930,931,934,935,936,937,938,941,942,946,947,948,949,953,954,955,956,960,972,973,974,975,976,977,980,982,983,985,988,997,998,999,1000,1002,1003,1004,1005,1006,1007,1008,1009,1011,1012,1013,1014,1016,1017,1018,1019,1020,1021,1022,1023,1025,1029,1031,1032,1035,1036,1049,1050,1052,1053,1056,1057,1064,1070,1075,1078,1090,1093,1094,1095,1096,1097,1098,1100,1102,1103,1104,1108,1109,1110,1111,1115,1117,1142,1145,1146,1147,1148,1149,1150,1152,1154,1155,1156,1162,1163,1164,1166,1167,1168,1169,1170,1171,1173,1175,1177,1181,1183,1195,1198,1199,1200,1201,1202,1203,1205,1207,1208,1209,1214,1215,1217,1218,1219,1220,1221,1223,1227,1229,1241,1244,1245,1246,1247,1248,1249,1251,1253,1254,1255,1259,1260,1261,1262,1266,1268,1283,1285,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1381,1382,1383,1384,1385,1387,1391,1392,1393,1394,1396,1397,1399,1401,1409,1410,1411,1412,1413,1414,1416,1417,1418,1420,1421,1423,1457,1461,1462,1463,1465,1469,1470,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1507,1508,1509,1510,1511,1513,1522,1523,1525,1526,1527,1528,1531,1532,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1580,1581,1582,1584,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1612,1613,1614,1615,1616,1618,1633,1636,1637,1641,1642,1645,1647,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1671,1672,1673,1674,1676,1683,1684,1685,1686,1695,1697,1699,1702,1705,1707,1710,1713,1721,1722,1723,1724,1726,1727,1729,1731,1739,1740,1741,1742,1744,1745,1747,1749,1762,1763,1764,1766,1772,1773,1775,1776,1777,1778,1781,1782,1791,1792,1795,1798,1806,1807,1808,1809,1811,1812,1814,1816,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1840,1841,1842,1843,1845,1855,1856,1857,1858,1859,1860,1861,1862,1863,1865,1866,1868,1872,1873,1875,1881,1882,1884,1885,1888,1889,1894,1895,1896,1899,1903,1904,1905,1906,1907,1908,1910,1912,1916,1917,1918,1919,1920,1921,1922,1923,1924,1926,1927,1929,1930,1935],prior:[0,208,209,210,211,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,271,272,281,283,285,350,353,355,357,358,359,401,403,406,447,450,566,620,623,625,666,668,670,673,722,756,809,812,814,816,817,818,853,892,898,950,953,954,956,957,958,986,1065,1071,1075,1112,1115,1174,1176,1178,1181,1222,1224,1227,1263,1266,1381,1383,1385,1399,1420,1507,1509,1511,1549,1551,1612,1614,1616,1634,1671,1672,1674,1710,1729,1747,1814,1840,1841,1843,1865,1866,1910,1926,1927,1934,1935],privat:265,problem:[843,1012],process:[205,265,287,289,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],produc:[285,1935],profil:[235,1003,1081],profile_1:[274,275,276],profile_id:[274,275],program:1931,progress:[264,1935],project:[0,216,217,244,245,272,285,288,321,333,340,361,378,383,386,408,426,432,436,453,639,644,647,675,780,792,799,820,846,857,863,894,896,904,923,934,941,960,1011,1016,1029,1035,1067,1069,1078,1095,1100,1103,1117,1147,1152,1155,1183,1200,1205,1208,1229,1246,1251,1254,1268,1367,1373,1378,1387,1392,1394,1397,1401,1411,1414,1418,1423,1493,1499,1504,1513,1598,1604,1609,1618,1633,1637,1642,1647,1659,1664,1669,1676,1697,1702,1707,1713,1722,1724,1727,1731,1740,1742,1745,1749,1791,1792,1795,1798,1807,1809,1812,1816,1828,1833,1838,1845,1857,1860,1863,1868,1894,1895,1896,1899,1904,1906,1908,1912,1918,1921,1924,1929,1935],promot:[205,287,289],prop:[321,333,340,361,378,383,386,408,426,432,436,453,639,644,647,675,780,792,799,820,846,857,863,893,895,904,923,934,941,960,1016,1029,1035,1066,1068,1078,1095,1100,1103,1117,1147,1152,1155,1183,1200,1205,1208,1229,1246,1251,1254,1268,1367,1373,1378,1387,1392,1394,1397,1401,1411,1414,1418,1423,1493,1499,1504,1513,1598,1604,1609,1618,1633,1637,1642,1647,1659,1664,1669,1676,1697,1702,1707,1713,1722,1724,1727,1731,1740,1742,1745,1749,1791,1792,1795,1798,1807,1809,1812,1816,1828,1833,1838,1845,1857,1860,1863,1868,1894,1895,1896,1899,1904,1906,1908,1912,1918,1921,1924,1929],propag:[210,226,239,254],properti:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,205,217,220,245,247,249,265,275,276,282,285,287,289,303,310,311,313,319,320,321,322,323,327,331,332,333,338,339,340,341,342,358,359,360,361,373,374,376,378,379,380,381,383,386,387,388,389,407,408,420,421,423,426,427,428,429,432,436,437,438,452,453,539,540,541,544,551,559,567,608,634,635,637,639,640,641,642,644,647,648,649,674,675,762,769,770,772,778,779,780,781,782,786,790,791,792,797,798,799,800,801,817,818,819,820,831,834,836,837,838,846,851,852,857,863,864,865,870,871,881,882,893,894,895,896,903,904,906,913,914,916,921,922,923,924,925,928,932,933,934,939,940,941,942,943,957,958,959,960,990,997,1001,1003,1004,1005,1006,1007,1016,1021,1022,1025,1029,1035,1036,1037,1043,1044,1054,1055,1066,1067,1068,1069,1075,1077,1078,1090,1091,1093,1095,1096,1097,1098,1100,1103,1104,1105,1116,1117,1142,1143,1145,1147,1148,1149,1150,1152,1155,1156,1157,1182,1183,1195,1196,1198,1200,1201,1202,1203,1205,1208,1209,1210,1228,1229,1241,1242,1244,1246,1247,1248,1249,1251,1254,1255,1256,1267,1268,1360,1367,1370,1373,1378,1386,1387,1389,1392,1393,1394,1397,1400,1401,1407,1411,1412,1414,1418,1422,1423,1462,1469,1486,1493,1496,1499,1504,1512,1513,1591,1598,1601,1604,1609,1617,1618,1629,1633,1637,1642,1646,1647,1653,1659,1661,1664,1669,1675,1676,1692,1697,1699,1702,1707,1710,1712,1713,1719,1722,1723,1724,1727,1730,1731,1737,1740,1741,1742,1745,1748,1749,1804,1807,1808,1809,1812,1815,1816,1822,1828,1830,1833,1838,1844,1845,1853,1857,1859,1860,1863,1867,1868,1901,1904,1905,1906,1908,1911,1912,1914,1918,1920,1921,1924,1928,1929,1931],propertiesdata:[209,210,218,225,226,228,229,230,238,239,253,254,255,261],propertiesdatabound:[223,243,251],property_mod:[541,551],provid:[0,205,208,209,210,215,217,221,223,226,237,239,241,245,248,251,254,262,265,270,272,275,282,285,287,289,322,347,360,379,397,407,427,443,452,495,507,508,513,538,541,542,545,546,547,548,549,550,551,552,553,590,593,617,640,660,674,692,753,760,781,806,819,832,833,836,837,838,839,840,847,849,850,851,880,894,896,903,924,947,959,998,999,1000,1003,1004,1005,1006,1008,1009,1017,1019,1020,1021,1053,1067,1069,1077,1096,1109,1116,1128,1148,1168,1182,1201,1218,1228,1247,1260,1267,1308,1325,1342,1386,1400,1422,1458,1472,1477,1512,1530,1533,1585,1617,1646,1675,1712,1730,1748,1767,1780,1783,1797,1815,1844,1847,1848,1867,1876,1887,1890,1898,1911,1928,1931,1935],publish:[287,289],pull:1934,pure:1935,purpos:1935,push:264,pypi:288,python3:273,python:[0,264,265,273,282,287,289,558,560,568,1461,1463,1470,1930,1931,1933,1935],q2_file:1935,q_file:1935,qualifi:[211,240,465,468,469,470,473,476,482,483,1432,1435,1438,1442,1935],quantiti:[211,225,240,253,265,1935],queri:272,question:[272,470,609,1934],radiation_wavelength:1935,rag:[218,228,233,234,235,287,289,300,364,411,456,496,678,706,734,823,866,867,868,873,874,875,885,886,887,888,889,890,963,1003,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1081,1120,1129,1186,1232,1271,1279,1294,1309,1326,1343,1935],ragged_arrai:1935,ragged_contigu:1081,ragged_index:1081,ragged_indexed_contigu:1081,raggedcontigu:[233,235],raggedcontiguousarrai:[265,277,498,734,1132,1329,1347,1935],raggedindex:[234,235],raggedindexedarrai:[265,277,1935],raggedindexedcontiguousarrai:[265,277,1935],rais:[0,264,285,314,315,316,317,318,319,320,321,324,325,326,327,329,330,331,332,333,346,347,377,378,381,383,393,394,396,397,424,425,426,429,431,432,441,443,466,467,468,471,472,473,498,509,510,556,559,562,567,581,582,585,586,605,616,617,638,639,642,644,654,655,656,658,659,660,695,696,697,703,705,707,709,710,711,712,729,747,749,752,753,773,774,775,776,777,778,779,780,783,784,785,786,788,789,790,791,792,805,806,836,837,838,844,845,846,850,854,855,857,876,877,879,880,901,917,918,919,920,921,922,923,926,927,928,930,931,932,933,934,946,947,973,975,980,982,1004,1005,1006,1013,1014,1015,1016,1020,1024,1025,1026,1029,1049,1050,1052,1053,1074,1094,1095,1098,1100,1108,1109,1130,1132,1146,1147,1150,1152,1162,1163,1164,1166,1167,1168,1199,1200,1203,1205,1214,1215,1217,1218,1245,1246,1249,1251,1259,1260,1310,1312,1327,1329,1344,1345,1347,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1391,1392,1393,1394,1409,1410,1411,1412,1413,1414,1430,1431,1432,1433,1434,1435,1460,1462,1465,1469,1472,1477,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1522,1523,1525,1526,1542,1560,1561,1562,1563,1564,1565,1572,1580,1581,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1631,1632,1633,1635,1636,1637,1644,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1683,1684,1694,1695,1696,1697,1698,1699,1700,1702,1709,1721,1722,1723,1724,1739,1740,1741,1742,1762,1763,1772,1773,1775,1776,1791,1792,1806,1807,1808,1809,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1847,1848,1855,1856,1857,1858,1859,1860,1872,1873,1881,1882,1884,1885,1894,1895,1903,1904,1905,1906,1916,1917,1918,1919,1920,1921,1934,1935],random:282,rang:[282,285,310,324,373,381,420,559,567,634,685,769,783,814,831,913,926,997,1090,1142,1195,1241,1462,1469,1614,1935],rank:[292,303,366,413,486,627,681,685,762,906,990,1083,1135,1188,1234,1935],rare:1935,rather:[0,213,265,281,285,323,341,380,387,428,437,470,477,543,584,609,613,641,648,699,748,782,800,852,881,882,925,942,974,977,1022,1036,1054,1055,1097,1104,1149,1156,1202,1209,1248,1255,1930,1935],ratio:285,read:[0,1,225,231,265,277,285,287,289,310,317,329,336,356,373,420,634,708,729,769,776,788,795,815,831,843,856,913,919,930,937,955,997,1003,1007,1012,1028,1090,1142,1195,1241,1365,1371,1376,1384,1491,1497,1502,1510,1572,1596,1602,1607,1615,1657,1662,1667,1673,1826,1831,1836,1842,1930,1931],read_writ:[0,265],readi:1935,readm:288,real:[222,250,271,283,323,380,428,470,540,584,609,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],reason:[264,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],recal:1935,recent:[557,566,683,844,1013,1694,1935],recognis:0,recommend:1935,record:[208,211,221,223,229,237,240,248,251,255,285,1935],recreat:[265,285,310,373,420,634,769,831,913,997,1090,1142,1195,1241],rectifi:285,recurs:[298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],reduc:[227,230,292,303,366,413,486,627,681,685,762,906,990,1083,1135,1188,1234,1935],refer:[0,45,46,205,215,216,217,219,220,222,223,225,241,244,245,246,247,250,251,253,258,264,274,275,282,285,354,553,601,602,604,605,608,609,612,622,624,698,813,839,842,843,844,901,1007,1008,1011,1012,1013,1074,1382,1458,1508,1539,1540,1542,1547,1548,1550,1613,1631,1644,1694,1709,1931,1935],referenc:[217,220,223,245,247,251,842,844,1011,1013,1631,1694,1935],reflect:[265,272,1935],regard:1935,regardless:[242,282,285,323,380,428,470,540,551,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],region:[229,255,1935],regrid:[265,287,289,1931],regul:285,reinstat:1935,rel:[271,272,282,283,285,323,380,428,470,540,557,584,609,641,699,748,782,852,925,1022,1080,1097,1123,1149,1202,1248,1299,1316,1333,1935],relat:[0,205,208,209,216,217,221,226,237,238,244,245,248,254,1935],relationship:542,releas:[0,267,282,287,288,1935],relev:[217,245,282,310,769,913,1935],remain:[0,285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],remot:[264,287,289],remov:[0,222,225,285,311,314,315,316,317,318,319,320,321,345,346,355,362,364,374,377,378,391,392,393,394,406,409,411,421,424,425,426,440,441,450,454,456,466,467,468,503,509,510,533,578,579,581,582,601,605,606,607,615,616,635,638,639,651,652,653,654,655,656,673,676,678,730,745,747,751,752,770,773,774,775,776,777,778,779,780,804,805,814,821,823,834,844,845,846,853,866,867,868,869,870,871,872,873,874,875,876,877,914,917,918,919,920,921,922,923,945,946,954,961,963,973,979,980,1001,1003,1013,1014,1015,1016,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1075,1079,1081,1091,1094,1095,1107,1108,1115,1118,1120,1143,1146,1147,1159,1160,1161,1162,1163,1164,1181,1184,1186,1196,1199,1200,1212,1213,1214,1215,1227,1230,1232,1242,1245,1246,1258,1259,1266,1269,1271,1360,1362,1363,1364,1365,1366,1367,1383,1389,1391,1392,1399,1407,1409,1410,1411,1420,1430,1431,1432,1472,1486,1488,1489,1490,1491,1492,1493,1509,1519,1520,1522,1523,1539,1542,1543,1544,1578,1580,1591,1593,1594,1595,1596,1597,1598,1614,1629,1631,1632,1633,1634,1653,1655,1656,1657,1658,1659,1672,1683,1692,1694,1695,1696,1697,1710,1719,1721,1722,1729,1737,1739,1740,1747,1760,1762,1769,1770,1772,1773,1789,1791,1804,1806,1807,1814,1822,1824,1825,1826,1827,1828,1841,1847,1853,1855,1856,1857,1866,1870,1872,1878,1879,1881,1882,1892,1894,1901,1903,1904,1910,1914,1916,1917,1918,1927,1935],renam:0,reorder:[285,1935],repeat:1930,replac:[0,265,288,296,297,298,307,308,309,370,371,372,417,418,419,461,462,463,490,491,492,530,531,532,575,576,577,598,599,600,631,632,633,688,689,690,700,742,743,744,766,767,768,828,829,830,901,910,911,912,968,969,970,994,995,996,1074,1087,1088,1089,1139,1140,1141,1192,1193,1194,1238,1239,1240,1274,1275,1276,1290,1291,1292,1303,1304,1305,1320,1321,1322,1337,1338,1339,1351,1352,1353,1357,1358,1359,1404,1405,1406,1426,1427,1428,1451,1452,1453,1474,1475,1476,1483,1484,1485,1516,1517,1518,1536,1537,1538,1556,1557,1558,1575,1576,1577,1588,1589,1590,1620,1621,1622,1626,1627,1628,1644,1650,1651,1652,1679,1680,1681,1689,1690,1691,1709,1716,1717,1718,1734,1735,1736,1751,1752,1753,1757,1758,1759,1786,1787,1788,1801,1802,1803,1819,1820,1821,1935],report:[281,843,1012,1934],repositori:[264,1934],repr:[265,272,293,304,367,414,458,487,502,517,527,572,595,628,683,684,739,763,825,907,965,991,1084,1124,1136,1189,1235,1300,1317,1334,1553,1935],repres:[211,222,224,225,240,250,252,253,264,265,267,287,289,842,1011,1931,1932,1935],represent:[46,235,271,282,283,287,289,313,364,376,411,423,456,565,637,678,772,823,842,916,963,1003,1011,1081,1093,1120,1145,1186,1198,1232,1244,1271,1468,1935],representative_data:[313,376,423,637,772,842,916,1011,1093,1145,1198,1244],request:[265,285,541,870,871,881,882,1043,1044,1054,1055,1930,1934,1935],requir:[0,208,214,218,220,227,228,229,230,231,233,234,235,237,242,247,255,265,282,285,288,295,306,369,416,460,489,525,529,574,597,630,683,687,741,765,827,909,967,993,1003,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1448,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1930,1931,1932,1935],research:[894,896,1011,1067,1069,1935],reset:[350,401,403,447,620,666,668,670,756,809,892,898,950,986,1065,1071,1112,1174,1176,1178,1222,1224,1263],reshap:[7,11,52,56,69,73,155,158,163,165,174,177,180,183,198,200,201,203,219,314,318,324,330,334,337,353,357,409,454,676,681,685,692,702,719,721,731,773,777,783,789,793,796,812,816,917,920,926,931,935,938,953,956,1118,1184,1230,1269,1362,1366,1368,1372,1374,1377,1381,1385,1488,1492,1494,1498,1500,1503,1507,1511,1593,1597,1599,1603,1605,1608,1612,1616,1655,1658,1660,1663,1665,1668,1671,1674,1824,1827,1829,1832,1834,1837,1840,1843,1855,1858,1861,1865,1916,1919,1922,1926,1935],resid:1935,resolut:[211,240,1623],resolv:[282,285,1935],respect:[238,558,984,987,1461,1935],respons:1931,rest:1935,restrict:[298,301,309,372,419,463,492,497,532,577,600,633,690,744,768,830,912,970,996,1089,1123,1131,1141,1194,1240,1272,1276,1284,1288,1292,1295,1299,1305,1311,1316,1322,1328,1333,1339,1346,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],result:[0,272,285,364,411,456,541,551,557,566,678,691,823,963,1003,1007,1081,1120,1186,1232,1271,1935],retain:[285,499,732,1133,1287,1296,1313,1330,1348],retir:0,retriev:[226,254,287,289,533,1932,1935],revers:[363,410,455,677,733,822,962,1080,1119,1185,1231,1270,1935],review:0,rew:[287,289],rewrit:[265,295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818],rewritten:[287,289],rich:214,right:[214,1935],rightmost:1003,rilei:264,ring:[11,56,73,158,165,177,183,200,208,221,223,229,237,243,248,251,255,261,274,275,276,318,330,337,777,789,796,866,868,873,875,885,886,889,890,920,931,938,1039,1041,1046,1048,1058,1059,1062,1063,1201,1366,1372,1377,1492,1498,1503,1597,1603,1608,1658,1663,1668,1827,1832,1837,1935],root:[231,285,288,345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,869,872,878,891,892,897,898,899,945,949,950,951,979,981,985,986,1042,1045,1051,1064,1065,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264],rotat:[274,275,276],rotated_latitude_longitud:[274,275,554,613,614,839,854,1007,1008,1024,1635,1698,1935],row:[702,1935],row_siz:1935,rst:264,rtol:[0,213,271,272,323,380,428,470,540,584,609,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],rule:[282,285,292,303,366,413,486,627,681,685,762,906,990,1083,1135,1188,1234,1935],run:[264,288,1933,1935],run_test:[264,288],runtim:[281,500,501,515,516,1935],sadi:[264,287,289],same:[0,208,209,213,221,223,225,226,228,229,237,238,248,251,253,254,255,265,272,285,287,289,292,303,310,323,366,380,413,428,470,486,538,540,541,584,609,627,641,681,685,699,748,762,769,782,849,852,870,881,882,893,894,906,913,925,974,990,1019,1022,1043,1054,1055,1066,1067,1080,1083,1097,1135,1149,1188,1202,1234,1248,1932,1935],sampl:[211,222,225,226,233,234,235,240,254,274,275,276,364,411,456,655,659,662,667,678,823,867,874,887,888,963,1003,1040,1047,1060,1061,1120,1163,1167,1170,1175,1186,1232,1271],sample_dimens:[218,887,1060,1935],sample_fil:265,satellit:[226,254,1935],satisfi:1931,save:[0,364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],scalar:[0,205,208,216,221,224,237,244,248,252,285,692,700,701,717,725,727,814,1570,1614],scale:1935,scheme:1932,scientif:[287,289],script:1935,sea:[211,240],search:[282,520,538,542,544,545,546,547,549,550,551,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1023,1031],second:[285,725,1003,1935],second_el:[701,717],section:[363,822,962,1932,1935],see:[0,43,169,219,236,246,265,272,274,275,276,281,282,285,287,288,289,301,323,363,380,428,470,497,520,538,540,541,542,584,609,641,699,748,782,822,849,852,925,962,974,1000,1003,1019,1022,1097,1131,1149,1202,1248,1284,1295,1311,1328,1346,1935],seealso:[840,1009],seen:[564,1467,1935],segment:0,select:[210,215,222,225,274,275,276,285,322,362,379,409,427,454,520,538,541,542,543,544,545,546,547,548,549,550,551,552,553,557,566,640,676,702,730,781,821,832,833,836,837,838,839,840,844,847,848,849,850,851,859,870,871,881,882,893,894,895,924,961,998,999,1000,1004,1005,1006,1007,1008,1009,1013,1017,1018,1019,1020,1021,1023,1031,1043,1044,1054,1055,1066,1067,1068,1079,1096,1118,1148,1184,1201,1230,1247,1269,1458,1631,1694],self:[265,1443,1553,1554],sens:[287,289],separ:[296,297,307,308,313,370,371,376,417,418,423,461,462,465,490,491,530,531,575,576,598,599,604,631,632,637,688,689,694,742,743,766,767,772,828,829,842,910,911,916,968,969,972,994,995,1011,1087,1088,1093,1139,1140,1145,1192,1193,1198,1238,1239,1244,1274,1275,1290,1291,1303,1304,1320,1321,1337,1338,1351,1352,1357,1358,1404,1405,1426,1427,1451,1452,1474,1475,1483,1484,1516,1517,1536,1537,1556,1557,1575,1576,1588,1589,1620,1621,1626,1627,1650,1651,1679,1680,1689,1690,1716,1717,1734,1735,1751,1752,1757,1758,1786,1787,1801,1802,1819,1820,1935],sequenc:[211,215,217,231,235,240,241,245,282,284,285,292,295,301,303,306,323,345,350,351,362,363,366,369,380,391,392,395,401,403,404,409,410,413,416,428,440,447,448,454,455,460,470,480,483,486,489,497,529,541,574,597,615,620,621,624,627,630,641,651,652,653,657,664,666,668,670,671,676,677,681,685,687,692,702,719,721,724,730,731,733,741,751,756,757,762,765,782,804,809,810,821,822,827,852,869,872,878,886,888,890,892,898,899,901,902,906,909,925,945,950,951,961,962,967,979,981,986,990,993,1022,1042,1045,1051,1059,1061,1063,1065,1071,1072,1074,1075,1076,1079,1080,1083,1086,1097,1107,1112,1113,1118,1119,1123,1131,1135,1138,1149,1159,1160,1161,1165,1172,1174,1176,1178,1179,1184,1185,1188,1191,1202,1212,1213,1216,1222,1224,1225,1230,1231,1234,1237,1248,1258,1263,1264,1269,1270,1272,1273,1284,1288,1289,1295,1299,1302,1311,1316,1319,1328,1333,1336,1346,1350,1356,1403,1425,1440,1450,1473,1482,1515,1535,1550,1555,1574,1587,1619,1625,1644,1645,1649,1678,1688,1709,1710,1711,1715,1733,1750,1756,1785,1800,1818,1935],seri:[274,275,276],seriou:1935,serious:[281,1935],serv:[211,240],server:[265,282],session:[282,1930,1933,1935],set:[0,9,15,21,38,43,45,46,54,71,85,96,107,112,117,157,159,161,164,169,176,182,187,190,191,197,199,202,204,208,209,210,211,216,217,218,220,221,222,223,224,225,226,228,229,230,231,237,238,239,240,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261,272,281,282,285,295,296,306,307,310,313,314,315,316,317,318,319,320,321,323,324,325,326,327,328,329,330,331,332,333,335,340,345,346,347,348,349,350,351,353,354,355,356,357,358,359,360,361,369,370,373,376,377,378,380,381,382,383,385,386,391,392,393,394,395,396,397,398,399,400,401,402,403,404,406,407,408,416,417,420,423,424,425,426,428,429,430,431,432,434,435,436,440,441,443,444,445,446,447,448,450,451,452,453,460,461,465,466,467,468,470,471,472,473,474,475,476,480,481,482,489,490,498,505,507,508,529,530,540,556,557,559,566,567,574,575,581,582,584,585,586,587,588,590,591,592,593,597,598,601,602,604,605,609,612,615,616,617,618,619,620,621,622,623,624,625,630,631,634,637,638,639,641,642,643,644,646,647,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,673,674,675,685,687,688,692,694,695,696,697,699,700,703,705,707,708,709,710,711,712,713,714,715,724,726,727,728,729,741,742,747,748,749,750,751,752,753,754,755,756,757,759,760,765,766,769,772,773,774,775,776,777,778,779,780,782,783,784,785,786,787,788,789,790,791,792,794,799,804,805,806,807,808,809,810,812,813,814,815,816,817,818,819,820,827,828,831,835,836,837,838,842,844,845,846,850,852,854,855,856,857,861,863,866,867,868,869,872,873,874,875,876,877,878,879,880,883,884,885,886,887,888,889,890,891,892,894,896,897,898,899,901,902,903,904,909,910,913,916,917,918,919,920,921,922,923,925,926,927,928,929,930,931,932,933,934,936,941,945,946,947,948,949,950,951,953,954,955,956,957,958,959,960,967,968,972,973,974,975,976,979,980,981,982,983,985,986,987,988,993,994,997,1002,1004,1005,1006,1011,1013,1014,1015,1016,1020,1022,1024,1025,1026,1028,1029,1032,1033,1035,1039,1040,1041,1042,1045,1046,1047,1048,1049,1050,1051,1052,1053,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1067,1069,1070,1071,1072,1074,1075,1076,1077,1078,1086,1087,1090,1093,1094,1095,1097,1098,1099,1100,1102,1103,1107,1108,1109,1110,1111,1112,1113,1115,1116,1117,1130,1132,1138,1139,1142,1145,1146,1147,1149,1150,1151,1152,1154,1155,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1181,1182,1183,1191,1192,1195,1198,1199,1200,1202,1203,1204,1205,1207,1208,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1227,1228,1229,1237,1238,1241,1244,1245,1246,1248,1249,1250,1251,1253,1254,1258,1259,1260,1261,1262,1263,1264,1266,1267,1268,1273,1274,1289,1290,1302,1303,1310,1312,1319,1320,1327,1329,1336,1337,1344,1345,1347,1350,1351,1356,1357,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1375,1378,1381,1382,1383,1384,1385,1386,1387,1391,1392,1393,1394,1396,1397,1399,1400,1401,1403,1404,1409,1410,1411,1412,1413,1414,1416,1417,1418,1420,1421,1422,1423,1425,1426,1430,1431,1432,1433,1434,1435,1436,1437,1438,1440,1441,1442,1450,1451,1460,1462,1469,1472,1473,1474,1477,1478,1479,1482,1483,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1501,1504,1507,1508,1509,1510,1511,1512,1513,1515,1516,1522,1523,1525,1526,1527,1528,1530,1531,1532,1533,1535,1536,1539,1540,1542,1547,1548,1549,1550,1551,1555,1556,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1574,1575,1580,1581,1582,1584,1585,1587,1588,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1606,1609,1612,1613,1614,1615,1616,1617,1618,1619,1620,1625,1626,1631,1632,1633,1635,1636,1637,1641,1642,1644,1645,1646,1647,1649,1650,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1666,1669,1671,1672,1673,1674,1675,1676,1678,1679,1683,1684,1685,1686,1688,1689,1694,1695,1696,1697,1698,1699,1700,1702,1705,1706,1707,1709,1710,1711,1712,1713,1715,1716,1721,1722,1723,1724,1726,1727,1729,1730,1731,1733,1734,1739,1740,1741,1742,1744,1745,1747,1748,1749,1750,1751,1756,1757,1762,1763,1764,1766,1767,1772,1773,1775,1776,1777,1778,1780,1781,1782,1783,1785,1786,1791,1792,1795,1797,1798,1800,1801,1806,1807,1808,1809,1811,1812,1814,1815,1816,1818,1819,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1835,1838,1840,1841,1842,1843,1844,1845,1847,1848,1849,1850,1855,1856,1857,1858,1859,1860,1862,1863,1865,1866,1867,1868,1872,1873,1875,1876,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1896,1898,1899,1903,1904,1905,1906,1907,1908,1910,1911,1912,1916,1917,1918,1919,1920,1921,1923,1924,1926,1927,1928,1929,1932,1935],set_ax:[211,240,465,466,471,474,1011,1430,1433,1436,1935],set_bound:[7,52,69,155,163,174,180,198,201,203,208,221,223,237,243,248,251,261,313,314,324,334,772,773,783,793,842,916,917,926,935,1011,1362,1368,1374,1488,1494,1500,1593,1599,1605,1655,1660,1665,1824,1829,1834,1855,1858,1861,1916,1919,1922,1935],set_calendar:[219,246,695,703,713,728,1560,1563,1566,1571],set_class:265,set_climatolog:[0,315,326,344,774,785,803,1363,1369,1379,1489,1495,1505,1594,1600,1610],set_construct:[842,844,854,859,1011,1013,1024,1031,1631,1635,1639,1694,1698,1704,1935],set_coordin:[217,245,601,602,604,605,612,1539,1540,1542,1547],set_coordinate_convers:[217,245,606,610,1543,1545],set_data:[0,9,15,21,38,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,208,209,210,218,221,223,226,228,229,230,237,238,239,243,248,251,254,255,260,261,313,316,327,335,353,376,377,381,385,409,423,424,429,434,454,637,638,642,646,676,772,775,786,794,812,842,916,918,928,936,953,1011,1014,1025,1032,1093,1094,1098,1102,1118,1145,1146,1150,1154,1184,1198,1199,1203,1207,1230,1244,1245,1249,1253,1269,1364,1370,1375,1381,1391,1393,1396,1409,1412,1416,1490,1496,1501,1507,1595,1601,1606,1612,1656,1661,1666,1671,1695,1699,1705,1721,1723,1726,1739,1741,1744,1806,1808,1811,1825,1830,1835,1840,1856,1859,1862,1865,1903,1905,1907,1917,1920,1923,1926,1935],set_data_ax:[0,845,855,861,901,1011,1015,1026,1033,1074,1075,1632,1636,1641,1644,1696,1700,1706,1709,1710,1935],set_datum:[217,245,607,611,1544,1546],set_domain_ancillari:[216,244,258,285,578,581,583,585,587,604,1519,1522,1524,1525,1527,1769,1772,1774,1775,1777,1878,1881,1883,1884],set_fill_valu:[43,169,219,246,692,696,700,709,714,1561,1564,1567],set_geometri:[208,221,223,237,243,248,251,261,317,329,336,776,788,795,919,930,937,1365,1371,1376,1491,1497,1502,1596,1602,1607,1657,1662,1667,1826,1831,1836],set_interior_r:[11,56,73,158,165,177,183,200,208,221,223,237,243,248,251,261,318,330,337,777,789,796,920,931,938,1366,1372,1377,1492,1498,1503,1597,1603,1608,1658,1663,1668,1827,1832,1837],set_measur:[210,239,423,425,431,435,1410,1413,1417],set_method:[211,240,467,472,475,1011,1431,1434,1437,1935],set_node_count:[319,331,338,778,790,797,921,932,939],set_paramet:[216,220,244,247,257,258,579,582,586,588,589,604,745,747,749,750,758,1520,1523,1526,1528,1529,1578,1580,1581,1582,1583,1760,1762,1763,1764,1765,1770,1773,1776,1778,1779,1870,1872,1873,1874,1879,1882,1885,1886],set_part_node_count:[320,332,339,779,791,798,922,933,940],set_properti:[208,209,210,218,221,222,223,225,226,228,229,230,237,238,239,243,248,250,251,253,254,255,259,260,261,311,313,321,333,340,352,374,376,378,383,386,405,421,423,426,428,432,436,449,635,637,639,644,647,649,672,770,772,780,792,799,811,834,842,846,852,857,863,864,865,900,914,916,923,934,941,952,1001,1011,1016,1022,1029,1035,1037,1073,1091,1093,1095,1100,1103,1105,1114,1143,1145,1147,1152,1155,1157,1180,1196,1198,1200,1205,1208,1210,1226,1242,1244,1246,1251,1254,1256,1265,1360,1367,1373,1378,1380,1389,1392,1394,1397,1398,1407,1411,1414,1418,1419,1486,1493,1499,1504,1506,1591,1598,1604,1609,1611,1629,1633,1637,1642,1643,1653,1659,1664,1669,1670,1692,1697,1702,1707,1708,1719,1722,1724,1727,1728,1737,1740,1742,1745,1746,1789,1791,1792,1795,1796,1804,1807,1809,1812,1813,1822,1828,1833,1838,1839,1853,1857,1860,1863,1864,1892,1894,1895,1896,1897,1901,1904,1906,1908,1909,1914,1918,1921,1924,1925,1935],set_qualifi:[211,240,465,468,473,476,479,1432,1435,1438,1439],set_siz:[224,252,842,972,973,975,976,1011,1683,1684,1685,1935],set_unit:[219,246,697,712,715,726,1562,1565,1568,1569],setdefault:213,setup:288,seven:282,sever:[272,281,1935],shallow:[213,242,265,564,1467],shape:[0,4,6,7,9,11,12,14,15,17,19,21,23,25,30,32,38,40,42,49,51,52,54,56,57,59,69,71,73,74,76,85,92,94,96,98,100,104,106,107,109,111,112,114,116,117,119,121,124,126,129,131,135,137,141,143,147,149,152,154,155,157,158,159,161,163,164,165,171,173,174,176,177,180,182,183,187,190,191,194,196,197,198,199,200,201,202,203,204,210,212,227,231,233,234,235,239,303,318,323,330,337,343,357,362,363,366,380,390,409,410,413,428,439,454,455,627,641,650,676,677,681,685,698,699,702,704,716,722,723,724,730,733,762,777,782,789,796,802,816,821,822,852,906,920,925,931,938,944,956,961,962,990,1022,1038,1079,1080,1083,1097,1106,1118,1119,1135,1149,1158,1184,1185,1188,1202,1211,1230,1231,1234,1248,1257,1269,1270,1366,1372,1377,1385,1492,1498,1503,1511,1597,1603,1608,1616,1658,1663,1668,1674,1827,1832,1837,1843,1935],share:[0,205,285,287,289,1935],shell:[282,285,1935],should:[228,242,264,265,287,289,1934,1935],show:[205,1935],shown:[281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248],shuffl:285,sid:273,side:214,signel:[287,289],signifi:[345,350,351,391,392,395,401,403,404,440,447,448,615,620,621,651,652,653,657,664,666,668,670,671,751,756,757,804,809,810,869,872,878,892,898,899,945,950,951,979,981,984,986,987,1042,1045,1051,1065,1071,1072,1107,1112,1113,1159,1160,1161,1165,1172,1174,1176,1178,1179,1212,1213,1216,1222,1224,1225,1258,1263,1264],significantli:285,similar:[285,292,301,303,366,413,486,497,627,681,685,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],similarli:265,simpl:[0,287,289,1935],simpli:[249,265,1935],simul:[222,250,287,289],simultan:[208,237,272,1935],sinc:[45,46,63,82,179,186,208,209,219,221,237,238,246,248,537,557,558,562,566,568,836,837,838,840,842,844,847,850,1004,1005,1006,1009,1011,1013,1017,1020,1457,1461,1465,1470,1935],singl:[208,211,218,228,233,234,235,237,240,264,272,533,554,704,1935],site:273,situ:[287,289],six:282,size:[0,4,5,12,13,17,18,23,24,30,31,40,41,49,50,57,58,63,74,75,82,92,93,98,99,104,105,109,110,114,115,119,120,124,125,129,130,135,136,141,142,147,148,152,153,171,172,179,186,194,195,208,209,210,212,218,221,223,227,231,233,234,235,237,238,239,248,251,264,285,323,343,362,380,390,409,428,439,454,537,541,552,554,557,558,566,568,584,641,650,676,702,716,724,730,748,782,802,821,850,852,925,944,961,972,973,974,975,976,977,978,988,1020,1022,1038,1079,1097,1106,1118,1149,1158,1184,1202,1211,1230,1248,1257,1269,1457,1461,1470,1683,1684,1685,1686,1935],slash:[282,345,349,350,351,391,392,395,400,401,402,403,404,440,446,447,448,615,619,620,621,651,652,653,657,664,665,666,667,668,669,670,671,751,755,756,757,804,808,809,810,869,872,878,891,892,897,898,899,945,949,950,951,979,981,985,986,1042,1045,1051,1064,1065,1070,1071,1072,1107,1111,1112,1113,1159,1160,1161,1165,1172,1173,1174,1175,1176,1177,1178,1179,1212,1213,1216,1221,1222,1223,1224,1225,1258,1262,1263,1264],slice:[0,301,497,1123,1131,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346],slowest:[285,343,390,439,650,716,802,944,1038,1106,1158,1211,1257],small:[271,283,323,380,428,470,540,584,609,641,699,748,782,852,925,1022,1097,1149,1202,1248,1933,1935],softwar:[205,287,289],sole:[559,567,1462,1469,1931],some:[0,215,222,225,241,253,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1930,1935],someth:[380,540,641,1097,1149,1202,1248],sometim:[0,209,1935],sophist:[265,287,289],sort:[282,601,602,735,1539,1540],sourc:[0,60,61,64,65,66,67,68,78,79,80,83,84,86,88,89,91,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,287,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,499,500,501,502,504,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,730,731,732,733,734,735,736,737,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929],space:[210,211,222,239,240,250,282,313,364,376,411,423,456,465,604,637,678,694,772,823,842,916,963,972,1003,1011,1081,1093,1120,1145,1186,1198,1232,1244,1271,1935],span:[208,209,210,218,221,223,224,226,228,229,237,238,239,248,251,252,254,255,282,537,538,539,542,548,556,843,844,845,849,850,855,861,901,902,990,1000,1012,1013,1015,1019,1020,1026,1033,1074,1075,1076,1457,1460,1631,1632,1636,1641,1644,1645,1694,1696,1700,1706,1709,1710,1711,1935],spatial:[205,216,244,287,289],spatiotempor:[217,226,245,254,1935],special:[249,282,285,297,298,308,309,323,371,372,380,418,419,428,462,463,470,480,491,492,531,532,540,551,576,577,584,599,600,609,632,633,641,689,690,699,743,744,748,767,768,782,829,830,852,911,912,925,969,970,974,995,996,1022,1088,1089,1097,1140,1141,1149,1193,1194,1202,1239,1240,1248,1275,1276,1291,1292,1304,1305,1321,1322,1338,1339,1352,1353,1358,1359,1405,1406,1427,1428,1440,1452,1453,1475,1476,1484,1485,1517,1518,1537,1538,1557,1558,1576,1577,1589,1590,1621,1622,1627,1628,1651,1652,1680,1681,1690,1691,1717,1718,1735,1736,1752,1753,1758,1759,1787,1788,1802,1803,1820,1821,1935],specif:[45,46,209,216,272,300,496,537,548,556,845,850,855,861,1015,1020,1026,1033,1076,1129,1279,1294,1309,1326,1343,1457,1460,1632,1636,1641,1696,1700,1706,1711,1935],specifi:[0,210,211,217,220,224,228,231,234,235,239,240,245,247,252,271,272,281,283,285,298,309,310,343,372,373,390,419,420,439,463,480,492,509,532,542,551,553,556,577,600,633,634,650,690,692,716,719,721,731,744,768,769,802,830,831,845,855,861,866,867,868,873,874,875,885,886,887,888,889,890,902,912,913,944,970,996,997,1015,1026,1033,1038,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1076,1089,1090,1106,1141,1142,1158,1194,1195,1211,1240,1241,1257,1276,1292,1305,1322,1339,1353,1359,1406,1428,1440,1453,1458,1460,1476,1485,1518,1538,1558,1577,1590,1622,1628,1632,1636,1641,1645,1652,1681,1691,1696,1700,1706,1711,1718,1736,1753,1759,1788,1803,1821,1935],specific_humid:[265,275,276,284,844,859,1011,1013,1031,1930,1935],spectrum:1931,speed:[285,1930],squar:[210,239,1935],squeez:[343,363,390,410,439,455,650,677,702,716,733,802,822,944,962,1038,1080,1106,1119,1158,1185,1211,1231,1257,1270,1930,1935],stage:1935,stand:[287,289,1931],standard:[45,46,205,211,240,265,282,285,459,466,480,483,522,523,870,881,893,894,1043,1054,1066,1067,1430,1440,1445,1446,1935],standard_error:[275,1007,1935],standard_nam:[36,208,209,210,221,223,225,226,237,238,243,248,251,253,254,255,259,260,261,274,275,311,313,333,341,342,352,360,374,376,381,383,387,388,389,405,407,421,432,437,438,449,452,539,544,551,554,559,567,604,606,610,613,614,623,635,637,644,648,649,672,674,770,772,792,800,801,811,819,834,836,837,838,842,857,900,903,914,916,934,942,943,952,959,1001,1004,1005,1006,1011,1029,1036,1037,1073,1077,1091,1093,1100,1104,1105,1114,1116,1143,1145,1152,1156,1157,1180,1182,1196,1198,1205,1209,1210,1226,1228,1242,1244,1251,1255,1256,1265,1267,1286,1360,1373,1380,1386,1389,1394,1398,1400,1407,1414,1419,1422,1462,1469,1486,1499,1506,1512,1543,1545,1549,1591,1604,1611,1617,1629,1637,1643,1646,1653,1664,1670,1675,1692,1702,1708,1712,1719,1724,1728,1730,1737,1742,1746,1748,1789,1792,1796,1797,1804,1809,1813,1815,1822,1833,1839,1844,1853,1860,1864,1867,1892,1895,1897,1898,1901,1906,1909,1911,1914,1921,1925,1928,1935],standard_parallel:[579,589,593,745,758,760,1520,1529,1533,1578,1583,1585,1760,1765,1767,1770,1779,1783,1870,1874,1876,1879,1886,1890],standardis:1935,start:[282,349,400,402,446,546,551,619,665,667,669,755,808,836,837,838,891,897,949,985,1004,1005,1006,1064,1070,1111,1173,1175,1177,1221,1223,1262],state:[282,1935],statement:1935,staticmethod:249,station1:[274,275,1935],station2:[274,275,1935],station3:[274,275],station4:[274,275,1935],station:[228,229,274,275,1003,1935],station_nam:1935,statist:[265,287,289,1931],statu:[315,326,442,445,774,785,984,987,1363,1369,1489,1495,1594,1600,1935],status_flag:1935,step:1935,still:[265,282,843,1012,1930,1935],storag:[206,265],store:[205,208,209,215,218,221,223,227,228,230,231,233,234,235,237,241,242,248,251,265,285,287,289,360,364,407,411,452,456,499,562,590,593,674,678,760,819,823,903,959,963,1003,1077,1081,1116,1120,1133,1182,1186,1228,1232,1267,1271,1287,1296,1313,1330,1348,1386,1400,1422,1465,1512,1530,1533,1585,1617,1646,1675,1712,1730,1748,1767,1780,1783,1797,1815,1844,1867,1876,1887,1890,1898,1911,1928,1935],str:[8,20,26,35,53,62,70,77,81,95,156,160,162,166,175,178,181,184,185,189,208,210,211,212,214,215,217,219,221,223,231,237,239,240,241,243,245,246,248,251,261,267,270,271,272,281,282,283,285,294,298,300,305,309,313,315,317,321,322,323,326,329,333,340,345,346,347,349,350,351,356,361,368,372,376,378,379,380,383,386,391,392,393,394,395,396,397,400,401,402,403,404,408,415,419,423,426,427,428,432,436,440,441,443,446,447,448,451,453,459,463,465,467,469,470,472,476,480,481,482,488,492,496,518,528,532,534,539,540,541,542,556,559,561,573,577,581,582,584,585,586,587,588,591,596,600,604,605,608,609,612,615,616,617,619,620,621,622,624,629,633,637,639,640,641,644,647,651,652,653,654,655,656,657,658,659,660,664,665,666,667,668,669,670,671,675,686,690,694,695,697,698,699,701,703,706,712,717,725,726,728,740,744,747,748,749,750,751,752,753,755,756,757,764,768,772,774,776,780,781,782,785,788,792,799,804,805,806,808,809,810,815,820,826,830,838,842,845,846,850,851,852,854,855,857,861,863,866,867,868,869,872,873,874,875,876,877,878,879,880,885,886,887,888,889,890,891,892,893,895,897,898,899,901,902,904,908,912,916,919,923,924,925,930,934,941,945,946,947,949,950,951,955,960,966,970,972,974,979,980,981,982,985,986,992,996,1003,1006,1007,1011,1015,1016,1020,1021,1022,1024,1026,1029,1033,1035,1038,1039,1040,1041,1042,1045,1046,1047,1048,1049,1050,1051,1052,1053,1058,1059,1060,1061,1062,1063,1064,1065,1066,1068,1070,1071,1072,1074,1075,1076,1078,1085,1089,1093,1095,1096,1097,1100,1103,1107,1108,1109,1111,1112,1113,1117,1125,1129,1137,1141,1145,1147,1148,1149,1152,1155,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1172,1173,1174,1175,1176,1177,1178,1179,1183,1190,1194,1198,1200,1201,1202,1205,1208,1212,1213,1214,1215,1216,1217,1218,1221,1222,1223,1224,1225,1229,1236,1240,1244,1246,1247,1248,1251,1254,1258,1259,1260,1262,1263,1264,1268,1276,1279,1292,1294,1301,1305,1309,1318,1322,1326,1335,1339,1343,1353,1359,1363,1365,1367,1369,1371,1373,1378,1384,1387,1392,1394,1397,1401,1406,1411,1414,1418,1421,1423,1428,1431,1434,1438,1440,1441,1442,1453,1454,1460,1462,1464,1476,1479,1485,1489,1491,1493,1495,1497,1499,1504,1510,1513,1518,1522,1523,1525,1526,1527,1528,1531,1538,1542,1547,1548,1550,1554,1558,1560,1562,1563,1565,1569,1571,1577,1580,1581,1582,1590,1594,1596,1598,1600,1602,1604,1609,1615,1618,1622,1628,1631,1632,1633,1635,1636,1637,1639,1641,1642,1644,1645,1647,1652,1657,1659,1662,1664,1669,1673,1676,1681,1691,1694,1696,1697,1698,1700,1702,1704,1706,1707,1709,1710,1711,1713,1718,1722,1724,1727,1731,1736,1740,1742,1745,1749,1753,1759,1762,1763,1764,1772,1773,1775,1776,1777,1778,1781,1788,1791,1792,1795,1798,1803,1807,1809,1812,1816,1821,1826,1828,1831,1833,1838,1842,1845,1850,1857,1860,1863,1868,1872,1873,1881,1882,1884,1885,1888,1894,1895,1896,1899,1904,1906,1908,1912,1918,1921,1924,1929,1935],straight:265,stretch:273,strict:[323,380,428,470,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],strictli:[208,221,237,248,265,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241],strike:1931,string:[0,46,211,216,231,240,244,270,272,273,281,282,285,287,289,298,300,309,313,322,323,345,350,351,372,376,379,380,391,392,395,401,403,404,419,423,427,428,440,447,448,459,463,465,469,470,480,492,496,532,540,544,551,553,577,584,600,604,608,609,615,620,621,633,637,640,641,651,652,653,657,664,666,668,670,671,690,694,699,706,744,748,751,756,757,768,772,781,782,804,809,810,830,842,851,852,869,872,878,892,898,899,912,916,924,925,945,950,951,970,972,974,979,981,986,996,1011,1021,1022,1042,1045,1051,1065,1071,1072,1089,1093,1096,1097,1107,1112,1113,1129,1141,1145,1148,1149,1159,1160,1161,1165,1172,1174,1176,1178,1179,1194,1198,1201,1202,1212,1213,1216,1222,1224,1225,1240,1244,1247,1248,1258,1263,1264,1276,1279,1292,1294,1305,1309,1322,1326,1339,1343,1353,1359,1406,1428,1440,1453,1458,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1931],strlen8:1935,struct:1935,structur:[208,209,210,211,217,218,220,221,222,223,224,225,226,228,229,230,240,282,285,345,350,351,391,392,395,401,403,404,440,447,448,615,620,621,651,652,653,657,664,666,668,670,671,751,756,757,804,809,810,843,869,872,878,886,888,890,892,898,899,945,950,951,979,981,986,1012,1042,1045,1051,1059,1061,1063,1065,1071,1072,1107,1112,1113,1159,1160,1161,1165,1172,1174,1176,1178,1179,1212,1213,1216,1222,1224,1225,1258,1263,1264,1281,1935],style:702,sub:[265,298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1935],subce:1935,subclass:[0,207,212,213,219,236,242,265,275,282,285,323,380,428,470,498,540,584,609,641,699,729,748,782,852,925,974,1022,1097,1132,1149,1202,1248,1312,1329,1347,1572],submit:[264,1934],subscript:[292,301,303,366,413,486,497,627,681,685,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],subsequ:[285,1935],subset:[0,208,210,217,221,237,239,245,248,542,702,1003,1081,1935],subspac:[0,287,289,292,301,303,366,413,486,497,627,681,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1930],substitut:[249,265,295,296,297,298,306,307,308,309,369,370,371,372,416,417,418,419,460,461,462,463,489,490,491,492,529,530,531,532,574,575,576,577,597,598,599,600,630,631,632,633,687,688,689,690,741,742,743,744,765,766,767,768,827,828,829,830,909,910,911,912,967,968,969,970,993,994,995,996,1086,1087,1088,1089,1138,1139,1140,1141,1191,1192,1193,1194,1237,1238,1239,1240,1273,1274,1275,1276,1289,1290,1291,1292,1302,1303,1304,1305,1319,1320,1321,1322,1336,1337,1338,1339,1350,1351,1352,1353,1356,1357,1358,1359,1403,1404,1405,1406,1425,1426,1427,1428,1450,1451,1452,1453,1473,1474,1475,1476,1482,1483,1484,1485,1515,1516,1517,1518,1535,1536,1537,1538,1555,1556,1557,1558,1574,1575,1576,1577,1587,1588,1589,1590,1619,1620,1621,1622,1625,1626,1627,1628,1649,1650,1651,1652,1678,1679,1680,1681,1688,1689,1690,1691,1715,1716,1717,1718,1733,1734,1735,1736,1750,1751,1752,1753,1756,1757,1758,1759,1785,1786,1787,1788,1800,1801,1802,1803,1818,1819,1820,1821],suggest:1934,suit:264,superced:1935,supersed:1935,superset:0,supplementari:[1003,1935],suppli:[210,229,239,255,272,360,407,452,590,593,674,760,819,894,896,903,959,1067,1069,1077,1116,1182,1228,1267,1386,1400,1422,1512,1530,1533,1585,1617,1646,1675,1712,1730,1748,1767,1780,1783,1797,1815,1844,1867,1876,1887,1890,1898,1911,1928],support:[0,206,213,214,285,364,411,456,543,678,823,963,1003,1120,1186,1232,1271,1935],suppress:[281,285],sure:264,surfac:[220,247,287,289,1935],surface_altitud:[274,275,381,848,1007,1018,1935],surround:[229,255],swap:[363,822,962],symmetr:[0,1935],system:[216,217,220,223,244,245,247,251,271,283,287,289],systemat:1935,t_contigu:1935,take:[214,292,303,312,366,375,413,422,486,627,636,681,685,719,721,762,771,906,915,990,1010,1083,1092,1135,1144,1188,1197,1234,1243,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],taken:[216,217,222,225,244,245,249,272,291,299,470,485,493,609,866,867,868,873,874,875,885,886,887,888,889,890,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1559,1754,1935],tar:288,tas:[231,287,289,341,342,346,347,348,349,387,394,397,399,402,441,443,444,446,616,617,618,619,648,649,656,660,663,669,752,753,754,755,800,801,805,806,807,808,877,880,884,897,942,943,946,947,948,949,1036,1037,1050,1053,1057,1070,1104,1105,1108,1109,1110,1111,1156,1157,1164,1168,1171,1177,1209,1210,1215,1218,1220,1223,1255,1256,1259,1260,1261,1262,1283,1285,1935],taylor:[287,289],techniqu:[265,312,345,350,364,375,391,392,401,403,411,422,440,447,456,615,620,636,651,652,653,666,668,670,678,751,756,771,804,809,823,869,872,892,898,915,945,950,963,979,986,1003,1010,1042,1045,1065,1071,1081,1092,1107,1112,1120,1144,1159,1160,1161,1174,1176,1178,1186,1197,1212,1213,1222,1224,1232,1243,1258,1263,1271,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],temp_fil:[708,856,1028],temperatur:[341,342,387,437,648,649,800,801,942,943,1036,1037,1104,1105,1156,1157,1209,1210,1255,1256,1935],templat:264,tempor:[205,217,245,287,289],temporari:282,temporarili:1935,term:[223,251,581,585,587,591,592,759,1522,1525,1527,1531,1532,1584,1766,1772,1775,1777,1781,1782,1875,1881,1884,1888,1889,1935],ters:1931,test:[0,264,287,289,323,380,428,470,521,540,584,609,641,691,699,748,782,852,925,974,1022,1097,1149,1202,1248,1444,1930,1935],text:[282,288,298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],than:[0,208,213,217,237,245,265,271,281,283,285,310,323,341,373,380,387,420,428,437,470,477,541,542,543,544,545,546,547,548,549,550,552,553,557,566,584,609,613,634,641,648,692,699,748,769,782,800,831,852,881,882,913,925,942,974,977,997,1022,1036,1054,1055,1090,1097,1104,1142,1149,1156,1195,1202,1209,1241,1248,1255,1458,1930,1935],thank:264,thei:[205,208,209,221,228,237,248,276,284,285,287,289,323,360,380,407,428,452,459,470,543,562,590,593,609,641,674,760,782,819,852,894,896,903,925,959,990,1007,1022,1067,1069,1077,1097,1116,1149,1182,1202,1228,1248,1267,1386,1400,1422,1465,1512,1530,1533,1585,1617,1646,1675,1712,1730,1748,1767,1780,1783,1797,1815,1844,1867,1876,1887,1890,1898,1911,1928,1935],them:[222,225,285,287,289,544,685,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1935],themselv:285,therefor:[267,291,299,485,493,1122,1126,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1754,1931,1932,1935],thi:[208,209,213,219,220,221,228,229,237,238,242,247,248,249,255,263,264,265,267,272,281,282,285,292,298,303,309,312,313,323,366,372,375,376,380,384,413,419,422,423,428,433,459,463,465,470,486,492,512,532,533,539,541,542,543,544,545,546,547,548,549,550,551,552,553,557,577,584,600,604,609,627,633,636,637,641,645,681,685,690,692,694,699,700,744,748,762,768,771,772,782,830,835,842,852,858,866,867,868,873,874,875,885,886,887,888,889,890,893,894,895,896,906,912,915,916,925,970,972,974,990,996,1002,1007,1010,1011,1022,1030,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1066,1067,1068,1069,1083,1089,1092,1093,1097,1101,1135,1141,1144,1145,1149,1153,1188,1194,1197,1198,1202,1206,1234,1240,1243,1244,1248,1252,1276,1292,1305,1322,1339,1353,1359,1361,1390,1395,1406,1408,1415,1428,1453,1458,1476,1485,1487,1518,1538,1558,1577,1590,1592,1622,1628,1638,1652,1654,1681,1691,1693,1703,1718,1720,1725,1736,1738,1743,1753,1759,1788,1793,1803,1805,1810,1821,1823,1854,1902,1915,1930,1931,1932,1933,1935],third:[1003,1935],those:[0,208,209,210,211,215,216,217,218,219,220,221,222,223,225,226,228,229,230,237,238,239,240,241,242,243,244,245,246,247,248,250,251,253,254,255,257,258,259,260,261,264,285,310,322,427,566,608,640,769,781,851,913,924,1021,1096,1148,1201,1247,1935],though:1935,thought:1935,three:[364,411,456,678,823,963,1003,1120,1186,1232,1271,1935],through:1935,throughout:272,thu:[227,230,1935],tidi:1932,tightli:265,tild:[282,285,1935],time:[0,45,46,63,82,179,186,208,209,211,221,237,238,240,248,249,265,274,275,276,282,284,287,289,345,350,351,354,391,392,393,395,396,398,400,401,403,404,440,447,448,467,480,537,541,544,549,550,551,557,558,566,568,615,620,621,651,653,654,655,657,658,659,661,662,665,666,667,670,671,698,751,756,757,804,809,810,813,835,836,837,838,840,842,844,847,850,859,872,898,899,945,950,951,972,977,978,979,980,981,982,983,985,986,1002,1004,1005,1006,1007,1009,1011,1013,1017,1020,1031,1045,1071,1072,1107,1112,1113,1159,1161,1162,1163,1165,1166,1167,1169,1170,1173,1174,1175,1178,1179,1212,1213,1214,1216,1217,1219,1221,1222,1224,1225,1258,1263,1264,1382,1431,1440,1457,1461,1470,1508,1613,1930],timeit:1930,timeseri:[235,274,275,276,1003,1081,1935],timeseries_id:[274,275,276,539,1935],timeseriesprofil:[274,275,276,1003,1081],titl:[285,287,289],tmp:[282,285],to_memori:0,todict:[541,542,543,544,545,546,547,548,549,550,551,552,553,1458,1935],togeth:1935,tol:1935,toler:[271,272,283,323,380,428,470,540,584,609,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],tool:[287,289,1935],top:[288,1931],total:[557,566],traceback:[501,516,683,836,837,838,844,1004,1005,1006,1013,1694,1935],tracker:[264,1934],trail:[209,1003,1935],trajectori:[1003,1081],trajectoryprofil:[1003,1081],transfer:265,transform:1935,transpos:[0,343,362,390,409,439,454,650,676,702,716,730,802,821,944,961,1038,1079,1106,1118,1158,1184,1211,1230,1257,1269,1930,1935],treat:1935,treatment:249,tree:249,treshanski:264,truncat:285,tupl:[5,13,18,24,41,50,58,75,93,99,110,115,120,125,130,153,172,195,212,227,231,233,234,235,297,308,345,350,351,371,391,392,395,401,403,404,418,440,447,448,462,466,471,491,510,531,533,538,554,556,557,566,576,599,615,620,621,632,651,652,653,657,664,666,668,670,671,689,698,722,723,743,751,756,757,767,804,809,810,829,837,845,849,855,869,872,878,892,898,899,911,945,950,951,969,979,981,986,995,1005,1015,1019,1026,1042,1045,1051,1065,1071,1072,1088,1107,1112,1113,1140,1159,1160,1161,1165,1172,1174,1176,1178,1179,1193,1212,1213,1216,1222,1224,1225,1239,1258,1263,1264,1275,1291,1304,1321,1338,1352,1358,1405,1427,1430,1433,1452,1460,1475,1484,1517,1537,1557,1576,1589,1621,1627,1632,1636,1651,1680,1690,1696,1700,1717,1735,1752,1758,1787,1802,1820],turn:[282,285,287,289,1935],tutori:[265,281,282,287,1933],two:[221,229,248,255,265,271,282,283,287,289,292,301,303,310,323,363,366,373,380,413,420,428,470,486,497,540,541,548,584,609,627,634,641,681,685,692,699,748,762,769,782,822,831,836,837,838,852,906,913,925,962,974,990,997,1004,1005,1006,1022,1083,1090,1097,1123,1131,1135,1142,1149,1188,1195,1202,1234,1241,1248,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],type:[0,3,8,10,16,20,22,26,29,35,39,43,47,53,55,62,70,72,77,81,90,95,97,103,108,113,118,123,128,134,140,146,151,156,160,162,166,169,170,175,178,181,184,185,189,193,205,208,212,214,215,219,221,223,231,237,241,243,246,248,249,251,261,265,274,275,276,282,284,285,287,289,300,301,317,318,323,329,336,356,364,380,411,428,456,470,496,497,534,535,540,541,553,558,560,561,562,568,584,609,641,678,679,698,699,700,701,706,717,725,748,776,777,782,788,795,815,823,843,852,866,867,868,873,874,875,885,886,887,888,889,890,919,920,925,930,937,955,963,974,1003,1012,1022,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1081,1097,1120,1123,1129,1131,1149,1186,1202,1232,1248,1271,1272,1279,1284,1288,1294,1295,1299,1309,1311,1316,1326,1328,1333,1343,1346,1365,1366,1371,1376,1384,1454,1455,1458,1461,1463,1464,1465,1470,1491,1492,1497,1502,1510,1596,1597,1602,1607,1615,1623,1657,1658,1662,1667,1673,1826,1827,1831,1836,1842,1931,1935],typecod:679,typeerror:683,typic:[271,283,323,380,428,470,540,584,609,641,699,748,782,852,925,1007,1022,1097,1149,1202,1248,1935],ucar:[205,287,289],udunit:[45,46,1931],ufd:282,ugrid:285,uml:205,unambigu:[221,248,282,843,1012,1931,1935],unari:214,uncertainti:[226,254,1935],unchang:[265,270,364,566,823,963,1935],uncompress:[0,27,30,31,32,101,104,105,106,132,135,136,137,138,141,142,143,144,147,148,149,212,218,227,228,230,233,234,235,287,289,323,380,428,540,641,699,782,852,925,1003,1022,1097,1123,1149,1202,1248,1299,1316,1333,1930,1935],under:1935,underli:[207,212,227,231,232,233,234,235,300,323,380,428,494,495,496,498,540,641,699,704,729,734,782,852,925,1022,1097,1127,1128,1129,1132,1149,1202,1248,1279,1294,1307,1308,1309,1312,1324,1325,1326,1329,1341,1342,1343,1347,1572,1935],underlying_arrai:0,understand:1931,unfilt:[0,533,541,542,543,544,545,546,547,548,549,550,551,552,553,554,557],unidata:[205,231,287,289,1285,1935],uniqu:[215,241,282,284,542,836,837,838,842,844,850,859,901,1000,1004,1005,1006,1011,1013,1020,1031,1074,1644,1709,1935],unique_construct:[0,282],unit:[9,15,21,38,45,46,54,71,85,96,107,112,117,157,159,161,164,176,182,187,190,191,197,199,202,204,210,216,225,239,244,253,313,327,341,342,354,355,376,389,406,423,428,429,437,438,450,551,554,559,567,637,642,673,694,697,698,699,712,715,728,772,786,800,801,813,814,842,916,928,942,943,954,1011,1025,1075,1093,1098,1115,1145,1150,1181,1198,1203,1227,1244,1249,1266,1370,1382,1383,1393,1399,1412,1420,1462,1469,1496,1508,1509,1562,1565,1568,1571,1601,1613,1614,1661,1672,1699,1710,1723,1729,1741,1747,1808,1814,1830,1841,1859,1866,1905,1910,1920,1927,1931,1935],uniti:1935,unless:[228,231,295,306,369,416,459,460,489,529,538,574,597,630,687,741,765,827,832,833,839,840,847,848,849,909,967,993,998,999,1000,1008,1009,1017,1018,1019,1023,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818,1935],unlik:[226,254,551],unlimit:[0,224,282,285,984,987,1935],unmask:[685,1935],unpack:[288,1933,1935],unrecognis:[341,387,437,477,613,648,800,942,977,1036,1104,1156,1209,1255],unset:[347,354,397,443,617,660,753,806,813,880,893,895,947,1053,1066,1068,1109,1168,1218,1260,1382,1472,1477,1508,1613,1847,1848],unsign:285,until:[282,1930,1935],unus:[561,1464],unwant:[364,411,456,678,823,963,1003,1081,1120,1186,1232,1271,1935],unzip:[1933,1935],updat:[0,213,214,264,265,310,373,420,634,769,831,843,913,997,1012,1090,1142,1195,1241,1932,1935],upon:[0,213,214,1935],url:[270,282,287,289,1935],usag:1935,use:[265,278,279,280,285,287,289,459,551,722,723,724,1931,1935],used:[43,45,46,169,205,208,210,213,214,215,219,235,237,239,241,246,265,285,298,309,310,372,419,463,492,532,533,544,554,577,600,633,690,692,700,744,768,769,830,894,896,901,912,913,970,984,987,996,1067,1069,1074,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1644,1652,1681,1691,1709,1718,1736,1753,1759,1788,1803,1821,1932,1935],useful:[205,281,285,1931,1935],user:[249,273,282,285,287,288,289,708,1931,1935],usernam:264,uses:[265,1933,1935],using:[0,205,218,225,228,233,234,235,253,264,265,272,282,285,287,289,310,373,420,541,634,685,769,831,866,867,868,873,874,875,885,886,887,888,889,890,913,997,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1090,1142,1195,1241,1930,1935],usual:[214,215,224,241,252,285,298,309,372,419,463,492,532,577,600,633,690,744,768,830,842,912,970,996,1007,1011,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821,1931,1935],utilis:[842,1011,1935],valid:[281,285,541,692,1931,1935],valid_max:[231,282,285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],valid_min:[231,282,285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],valid_rang:[231,282,285,310,373,420,634,692,769,831,913,997,1090,1142,1195,1241,1935],valu:[0,9,15,21,38,43,54,71,85,96,107,112,117,157,159,161,164,169,176,182,187,190,191,197,199,202,204,207,208,209,210,211,212,213,214,215,216,217,218,220,221,222,223,225,226,227,228,229,230,231,234,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,253,254,255,257,258,259,260,261,263,265,271,272,281,282,283,285,298,309,310,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,342,346,347,349,355,356,360,361,363,372,373,377,378,379,380,381,383,388,389,393,394,396,397,400,402,406,407,408,419,420,424,425,426,427,428,429,431,432,438,441,443,446,450,451,452,453,463,466,467,468,470,471,472,473,478,480,481,482,492,498,505,506,509,510,511,520,532,533,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,558,559,560,565,577,581,582,584,585,586,590,591,592,593,600,605,609,614,616,617,619,633,634,638,639,640,641,642,644,649,654,655,656,658,659,660,665,667,669,673,674,675,685,690,691,692,695,696,697,699,700,703,705,707,709,710,711,712,714,726,727,728,729,735,744,747,748,749,752,753,755,759,760,768,769,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,801,805,806,808,814,815,819,820,822,830,831,832,833,835,836,837,838,839,840,844,845,846,847,848,849,850,851,852,854,855,857,859,865,870,871,876,877,879,880,881,882,885,887,889,891,893,894,895,896,897,903,904,912,913,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,943,946,947,949,954,955,959,960,962,970,973,974,975,978,980,982,985,987,988,996,997,998,999,1000,1003,1004,1005,1006,1007,1008,1009,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1029,1031,1037,1043,1044,1049,1050,1052,1053,1054,1055,1058,1060,1062,1064,1066,1067,1068,1069,1070,1075,1077,1078,1089,1090,1094,1095,1096,1097,1098,1100,1105,1108,1109,1111,1115,1116,1117,1130,1132,1141,1142,1146,1147,1148,1149,1150,1152,1157,1162,1163,1164,1166,1167,1168,1173,1175,1177,1181,1182,1183,1194,1195,1199,1200,1201,1202,1203,1205,1210,1214,1215,1217,1218,1221,1223,1227,1228,1229,1240,1241,1245,1246,1247,1248,1249,1251,1256,1259,1260,1262,1266,1267,1268,1276,1292,1305,1310,1312,1322,1327,1329,1339,1344,1345,1347,1353,1359,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1383,1384,1386,1387,1391,1392,1393,1394,1399,1400,1401,1406,1409,1410,1411,1412,1413,1414,1420,1421,1422,1423,1428,1430,1431,1432,1433,1434,1435,1440,1441,1442,1453,1458,1459,1460,1461,1462,1463,1468,1476,1479,1485,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1509,1510,1512,1513,1518,1522,1523,1525,1526,1530,1531,1532,1533,1538,1542,1558,1560,1561,1562,1563,1564,1565,1567,1569,1570,1571,1572,1577,1580,1581,1584,1585,1590,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1614,1615,1617,1618,1622,1628,1631,1632,1633,1635,1636,1637,1646,1647,1652,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1672,1673,1675,1676,1681,1683,1684,1686,1691,1694,1695,1696,1697,1698,1699,1700,1702,1710,1712,1713,1718,1721,1722,1723,1724,1729,1730,1731,1736,1739,1740,1741,1742,1747,1748,1749,1753,1759,1762,1763,1766,1767,1772,1773,1775,1776,1780,1781,1782,1783,1788,1791,1792,1797,1798,1803,1806,1807,1808,1809,1814,1815,1816,1821,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1841,1842,1844,1845,1850,1855,1856,1857,1858,1859,1860,1866,1867,1868,1872,1873,1875,1876,1881,1882,1884,1885,1887,1888,1889,1890,1894,1895,1898,1899,1903,1904,1905,1906,1910,1911,1912,1916,1917,1918,1919,1920,1921,1927,1928,1929,1931,1932,1935],valueerror:[314,315,316,317,318,319,320,321,324,325,326,327,329,330,331,332,333,346,347,377,378,381,383,393,394,396,397,424,425,426,429,431,432,441,443,466,467,468,471,472,473,498,556,559,567,581,582,585,586,605,616,617,638,639,642,644,654,655,656,658,659,660,695,696,697,703,705,707,709,710,711,712,713,714,715,726,727,728,729,747,749,752,753,773,774,775,776,777,778,779,780,783,784,785,786,788,789,790,791,792,805,806,836,837,838,844,845,846,850,854,855,857,876,877,879,880,917,918,919,920,921,922,923,926,927,928,930,931,932,933,934,946,947,973,975,980,982,1004,1005,1006,1013,1014,1015,1016,1020,1024,1025,1026,1029,1049,1050,1052,1053,1094,1095,1098,1100,1108,1109,1130,1132,1146,1147,1150,1152,1162,1163,1164,1166,1167,1168,1199,1200,1203,1205,1214,1215,1217,1218,1245,1246,1249,1251,1259,1260,1310,1312,1327,1329,1344,1345,1347,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1391,1392,1393,1394,1409,1410,1411,1412,1413,1414,1430,1431,1432,1433,1434,1435,1460,1462,1469,1472,1477,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1522,1523,1525,1526,1542,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1580,1581,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1631,1632,1633,1635,1636,1637,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1683,1684,1694,1695,1696,1697,1698,1699,1700,1702,1721,1722,1723,1724,1739,1740,1741,1742,1762,1763,1772,1773,1775,1776,1791,1792,1806,1807,1808,1809,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1847,1848,1855,1856,1857,1858,1859,1860,1872,1873,1881,1882,1884,1885,1894,1895,1903,1904,1905,1906,1916,1917,1918,1919,1920,1921,1935],var1:[313,376,423,465,604,637,772,916,972,1011,1093,1145,1198,1244],vari:[208,216,226,237,244,254,265,343,390,439,650,716,802,944,1038,1106,1158,1211,1257,1935],variabl:[0,11,56,73,158,165,177,183,200,205,208,209,210,217,218,220,221,222,223,224,225,226,227,228,229,230,231,233,234,235,237,239,243,248,251,252,253,254,255,261,274,275,276,282,285,287,289,292,303,318,319,320,323,330,331,332,337,338,339,341,342,345,346,347,348,349,350,351,358,359,366,380,387,388,392,394,397,399,402,403,404,413,428,437,438,440,441,442,443,444,445,446,447,448,486,540,544,550,609,613,614,615,616,617,618,619,620,621,627,640,641,648,649,653,656,660,663,669,670,671,681,685,694,707,710,711,729,751,752,753,754,755,756,757,762,777,778,779,782,789,790,791,796,797,798,800,801,804,805,806,807,808,809,810,817,818,843,852,864,865,866,867,868,869,870,872,873,874,875,876,877,878,879,880,881,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,906,920,921,922,925,931,932,933,938,939,940,942,943,945,946,947,948,949,950,951,957,958,974,990,1003,1007,1012,1022,1036,1037,1039,1040,1041,1042,1043,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1083,1097,1104,1105,1107,1108,1109,1110,1111,1112,1113,1130,1135,1148,1149,1156,1157,1161,1164,1168,1171,1177,1178,1179,1188,1201,1202,1209,1210,1213,1215,1218,1220,1223,1224,1225,1234,1247,1248,1255,1256,1258,1259,1260,1261,1262,1263,1264,1281,1283,1285,1286,1310,1327,1344,1345,1366,1372,1377,1492,1498,1503,1572,1597,1603,1608,1658,1663,1668,1827,1832,1837,1931],variable_attribut:285,varianc:1935,variat:[211,225,240,253,1935],varid:[231,1283,1285],variou:[217,245,285,1935],vector:[216,244,292,301,303,323,366,380,413,428,486,497,584,627,641,681,685,692,748,762,782,852,906,925,990,1022,1083,1097,1123,1131,1135,1149,1188,1202,1234,1248,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],verbos:[0,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1931],veri:[271,283,292,303,312,323,366,375,380,413,422,428,470,486,540,584,609,627,636,641,681,685,699,748,762,771,782,852,906,915,925,990,1010,1022,1083,1092,1097,1135,1144,1149,1188,1197,1202,1234,1243,1248,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],versa:[265,564,1467,1935],version:[1,2,3,4,5,6,7,8,9,11,15,20,21,26,35,36,37,38,44,45,46,52,53,54,56,62,63,69,70,71,73,77,81,82,85,87,95,96,107,112,117,122,123,124,125,126,127,128,129,130,131,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,267,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,289,290,291,292,293,294,295,296,297,298,299,300,301,302,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,495,496,497,504,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,564,565,566,567,568,569,570,572,574,575,576,577,578,579,580,581,582,583,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,685,687,688,689,690,692,694,699,700,701,702,704,705,706,707,709,710,711,716,717,719,721,722,723,724,725,730,733,734,735,736,737,739,740,741,742,743,744,745,746,747,749,750,751,752,753,754,755,756,757,758,759,760,761,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,823,824,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1124,1125,1126,1128,1129,1130,1131,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1308,1309,1310,1311,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1325,1326,1327,1328,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1342,1343,1344,1345,1346,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1555,1556,1557,1558,1564,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1934],versionad:[840,1009],vertic:[0,208,209,217,220,221,223,235,237,238,245,247,248,251,1935],vertical_cr:1935,via:[214,228,264,272,282,285,520,538,542,544,545,546,547,548,549,550,551,552,832,833,836,837,838,839,840,844,847,848,849,850,859,998,999,1000,1004,1005,1006,1008,1009,1013,1017,1018,1019,1020,1023,1031,1931,1935],vice:[265,564,1467,1935],view:[272,287,289,507,508,513,853,1467,1634,1935],virtual:0,visualis:[287,289],vocabulari:[282,843,1012,1935],volum:[287,289,546,1935],wai:[208,209,215,221,237,238,241,248,287,289,292,301,303,366,413,486,497,627,681,685,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],want:288,warn:[0,272,281,282,285,323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],warn_valid:[0,282,285],watersh:1935,websit:264,welcom:1934,well:[222,249,250,275,276,282,285,287,289,323,380,428,540,641,699,782,852,925,997,1022,1097,1149,1202,1248,1931,1935],were:[282,285,533,554,557,843,1012,1935],what:[0,222,250,1935],when:[0,205,208,210,214,222,225,231,237,239,242,265,281,282,285,291,292,295,299,301,303,306,312,366,369,375,413,416,422,460,470,485,486,489,493,497,525,529,541,551,574,597,609,627,630,636,681,683,685,687,741,762,765,771,827,842,843,853,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,906,909,915,967,990,993,1003,1010,1011,1012,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1083,1086,1092,1122,1123,1126,1131,1135,1138,1144,1188,1191,1197,1234,1237,1243,1272,1273,1278,1284,1288,1289,1293,1295,1298,1299,1302,1306,1311,1315,1316,1319,1323,1328,1332,1333,1336,1340,1346,1349,1350,1354,1356,1361,1390,1403,1408,1425,1448,1450,1473,1482,1487,1515,1535,1555,1559,1574,1587,1592,1619,1625,1634,1649,1654,1678,1688,1693,1715,1720,1733,1738,1750,1754,1756,1785,1800,1805,1818,1823,1854,1902,1915,1930,1931,1935],whenev:1935,where:[48,211,215,219,240,241,264,265,271,275,283,285,297,308,310,323,371,373,380,418,420,428,462,468,470,473,476,479,482,491,531,540,547,562,576,584,599,609,632,634,641,689,699,743,748,767,769,782,829,831,852,911,913,925,969,995,997,1007,1022,1023,1088,1090,1097,1140,1142,1149,1193,1195,1202,1239,1241,1248,1275,1291,1304,1321,1338,1352,1358,1405,1427,1432,1435,1438,1439,1442,1452,1465,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820,1932,1935],wherebi:0,whether:[0,224,229,255,278,279,280,282,287,289,323,334,335,336,337,338,339,340,344,348,354,364,380,384,385,386,398,399,411,428,433,434,435,436,442,444,456,470,474,475,476,540,543,584,587,588,609,612,618,641,645,646,647,661,662,663,678,691,699,713,714,715,748,750,754,782,793,794,795,796,797,798,799,803,807,813,823,843,852,858,859,860,861,862,863,883,884,925,935,936,937,938,939,940,941,948,963,974,976,983,1003,1012,1022,1030,1031,1032,1033,1034,1035,1056,1057,1081,1097,1101,1102,1103,1110,1120,1149,1153,1154,1155,1169,1170,1171,1186,1202,1206,1207,1208,1219,1220,1232,1248,1252,1253,1254,1261,1271,1374,1375,1376,1377,1378,1379,1382,1395,1396,1397,1415,1416,1417,1418,1436,1437,1438,1478,1500,1501,1502,1503,1504,1505,1508,1527,1528,1547,1566,1567,1568,1582,1605,1606,1607,1608,1609,1610,1613,1638,1639,1640,1641,1642,1665,1666,1667,1668,1669,1685,1703,1704,1705,1706,1707,1725,1726,1727,1743,1744,1745,1764,1777,1778,1793,1794,1795,1810,1811,1812,1834,1835,1836,1837,1838,1849,1861,1862,1863,1896,1907,1908,1922,1923,1924,1935],which:[0,205,208,209,210,211,216,217,218,220,221,223,224,225,226,228,229,231,235,237,239,240,244,245,247,248,251,252,253,254,265,267,274,281,282,285,287,288,289,313,376,423,469,541,551,557,561,562,566,637,679,719,721,731,772,835,842,853,893,894,895,896,916,1002,1003,1007,1011,1066,1067,1068,1069,1093,1145,1198,1244,1464,1465,1634,1930,1932,1933,1935],whilst:[227,230,285,287,289,843,1012,1931,1935],white:282,who:264,whole:[205,1935],whose:[208,209,221,223,237,238,248,251,282,285,533,542,548,554,836,837,838,1004,1005,1006,1931,1935],why:[264,1935],wide:[0,272,1935],wildli:285,window:288,wise:[323,380,428,584,641,699,748,782,852,925,1022,1097,1149,1202,1248,1935],within:[211,222,225,240,253,265,282,285,288,310,312,323,373,375,380,420,422,428,540,634,636,641,699,748,769,771,782,831,852,866,867,868,873,874,875,885,886,887,888,889,890,913,915,925,997,1002,1010,1022,1039,1040,1041,1046,1047,1048,1058,1059,1060,1061,1062,1063,1090,1092,1097,1142,1144,1149,1195,1197,1202,1241,1243,1248,1361,1390,1408,1487,1592,1654,1693,1720,1738,1805,1823,1854,1902,1915,1930,1935],without:[210,239,272,282,288,538,541,542,543,544,545,546,547,548,549,550,552,553,698,836,837,838,839,844,849,859,1000,1004,1005,1006,1008,1013,1019,1031,1458,1935],word:1935,work:[264,265,288,292,301,303,366,413,486,497,627,681,685,762,906,990,1083,1123,1131,1135,1188,1234,1272,1284,1288,1295,1299,1311,1316,1328,1333,1346,1935],world:[222,250],would:[0,213,214,222,229,250,255,264,282,313,376,637,694,702,772,842,843,916,1011,1012,1093,1145,1198,1244,1935],wouldn:0,write:[0,1,265,277,282,287,289,291,299,310,312,373,375,420,422,485,493,634,636,708,769,771,831,843,856,870,871,881,882,893,894,895,896,913,915,984,987,997,1003,1010,1012,1028,1043,1044,1054,1055,1066,1067,1068,1069,1090,1092,1122,1126,1142,1144,1195,1197,1241,1243,1278,1293,1298,1306,1315,1323,1332,1340,1349,1354,1361,1390,1408,1487,1559,1592,1654,1693,1720,1738,1754,1805,1823,1854,1902,1915,1930,1931],written:[0,210,222,225,264,265,282,285,866,867,868,870,873,874,875,881,885,886,887,888,889,890,893,894,895,896,1003,1039,1040,1041,1043,1046,1047,1048,1054,1058,1059,1060,1061,1062,1063,1066,1067,1068,1069,1931,1935],wrong:249,www:[205,287,289],x86_64:273,xyz:[313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],year:[211,240,287,289],yet:[217,245,265,1003,1935],you:[264,287,288,289,551,1935],your:[264,288],zero:[0,217,220,223,226,245,247,251,254,276,692,698,836,837,838,1004,1005,1006,1935],zip:[1933,1935],zxvf:288},titles:["Change log","API reference","cfdm.Array.array","cfdm.Array.dtype","cfdm.Array.ndim","cfdm.Array.shape","cfdm.Array.size","cfdm.AuxiliaryCoordinate.bounds","cfdm.AuxiliaryCoordinate.construct_type","cfdm.AuxiliaryCoordinate.data","cfdm.AuxiliaryCoordinate.dtype","cfdm.AuxiliaryCoordinate.interior_ring","cfdm.AuxiliaryCoordinate.ndim","cfdm.AuxiliaryCoordinate.shape","cfdm.AuxiliaryCoordinate.size","cfdm.Bounds.data","cfdm.Bounds.dtype","cfdm.Bounds.ndim","cfdm.Bounds.shape","cfdm.Bounds.size","cfdm.CellMeasure.construct_type","cfdm.CellMeasure.data","cfdm.CellMeasure.dtype","cfdm.CellMeasure.ndim","cfdm.CellMeasure.shape","cfdm.CellMeasure.size","cfdm.CellMethod.construct_type","cfdm.CompressedArray.array","cfdm.CompressedArray.compressed_array","cfdm.CompressedArray.dtype","cfdm.CompressedArray.ndim","cfdm.CompressedArray.shape","cfdm.CompressedArray.size","cfdm.Constant._func","cfdm.Constant.value","cfdm.CoordinateReference.construct_type","cfdm.CoordinateReference.coordinate_conversion","cfdm.CoordinateReference.datum","cfdm.Count.data","cfdm.Count.dtype","cfdm.Count.ndim","cfdm.Count.shape","cfdm.Count.size","cfdm.Data.array","cfdm.Data.compressed_array","cfdm.Data.datetime_array","cfdm.Data.datetime_as_string","cfdm.Data.dtype","cfdm.Data.mask","cfdm.Data.ndim","cfdm.Data.shape","cfdm.Data.size","cfdm.DimensionCoordinate.bounds","cfdm.DimensionCoordinate.construct_type","cfdm.DimensionCoordinate.data","cfdm.DimensionCoordinate.dtype","cfdm.DimensionCoordinate.interior_ring","cfdm.DimensionCoordinate.ndim","cfdm.DimensionCoordinate.shape","cfdm.DimensionCoordinate.size","cfdm.Domain.auxiliary_coordinates","cfdm.Domain.cell_measures","cfdm.Domain.construct_type","cfdm.Domain.constructs","cfdm.Domain.coordinate_references","cfdm.Domain.coordinates","cfdm.Domain.dimension_coordinates","cfdm.Domain.domain_ancillaries","cfdm.Domain.domain_axes","cfdm.DomainAncillary.bounds","cfdm.DomainAncillary.construct_type","cfdm.DomainAncillary.data","cfdm.DomainAncillary.dtype","cfdm.DomainAncillary.interior_ring","cfdm.DomainAncillary.ndim","cfdm.DomainAncillary.shape","cfdm.DomainAncillary.size","cfdm.DomainAxis.construct_type","cfdm.Field.auxiliary_coordinates","cfdm.Field.cell_measures","cfdm.Field.cell_methods","cfdm.Field.construct_type","cfdm.Field.constructs","cfdm.Field.coordinate_references","cfdm.Field.coordinates","cfdm.Field.data","cfdm.Field.dimension_coordinates","cfdm.Field.domain","cfdm.Field.domain_ancillaries","cfdm.Field.domain_axes","cfdm.Field.dtype","cfdm.Field.field_ancillaries","cfdm.Field.ndim","cfdm.Field.shape","cfdm.Field.size","cfdm.FieldAncillary.construct_type","cfdm.FieldAncillary.data","cfdm.FieldAncillary.dtype","cfdm.FieldAncillary.ndim","cfdm.FieldAncillary.shape","cfdm.FieldAncillary.size","cfdm.GatheredArray.array","cfdm.GatheredArray.compressed_array","cfdm.GatheredArray.dtype","cfdm.GatheredArray.ndim","cfdm.GatheredArray.shape","cfdm.GatheredArray.size","cfdm.Index.data","cfdm.Index.dtype","cfdm.Index.ndim","cfdm.Index.shape","cfdm.Index.size","cfdm.InteriorRing.data","cfdm.InteriorRing.dtype","cfdm.InteriorRing.ndim","cfdm.InteriorRing.shape","cfdm.InteriorRing.size","cfdm.List.data","cfdm.List.dtype","cfdm.List.ndim","cfdm.List.shape","cfdm.List.size","cfdm.NetCDFArray.array","cfdm.NetCDFArray.dtype","cfdm.NetCDFArray.ndim","cfdm.NetCDFArray.shape","cfdm.NetCDFArray.size","cfdm.NumpyArray.array","cfdm.NumpyArray.dtype","cfdm.NumpyArray.ndim","cfdm.NumpyArray.shape","cfdm.NumpyArray.size","cfdm.RaggedContiguousArray.array","cfdm.RaggedContiguousArray.compressed_array","cfdm.RaggedContiguousArray.dtype","cfdm.RaggedContiguousArray.ndim","cfdm.RaggedContiguousArray.shape","cfdm.RaggedContiguousArray.size","cfdm.RaggedIndexedArray.array","cfdm.RaggedIndexedArray.compressed_array","cfdm.RaggedIndexedArray.dtype","cfdm.RaggedIndexedArray.ndim","cfdm.RaggedIndexedArray.shape","cfdm.RaggedIndexedArray.size","cfdm.RaggedIndexedContiguousArray.array","cfdm.RaggedIndexedContiguousArray.compressed_array","cfdm.RaggedIndexedContiguousArray.dtype","cfdm.RaggedIndexedContiguousArray.ndim","cfdm.RaggedIndexedContiguousArray.shape","cfdm.RaggedIndexedContiguousArray.size","cfdm.core.Array.array","cfdm.core.Array.dtype","cfdm.core.Array.ndim","cfdm.core.Array.shape","cfdm.core.Array.size","cfdm.core.AuxiliaryCoordinate.bounds","cfdm.core.AuxiliaryCoordinate.construct_type","cfdm.core.AuxiliaryCoordinate.data","cfdm.core.AuxiliaryCoordinate.interior_ring","cfdm.core.Bounds.data","cfdm.core.CellMeasure.construct_type","cfdm.core.CellMeasure.data","cfdm.core.CellMethod.construct_type","cfdm.core.Coordinate.bounds","cfdm.core.Coordinate.data","cfdm.core.Coordinate.interior_ring","cfdm.core.CoordinateReference.construct_type","<no title>","<no title>","cfdm.core.Data.array","cfdm.core.Data.dtype","cfdm.core.Data.ndim","cfdm.core.Data.shape","cfdm.core.Data.size","cfdm.core.DimensionCoordinate.bounds","cfdm.core.DimensionCoordinate.construct_type","cfdm.core.DimensionCoordinate.data","cfdm.core.DimensionCoordinate.interior_ring","cfdm.core.Domain.construct_type","cfdm.core.Domain.constructs","cfdm.core.DomainAncillary.bounds","cfdm.core.DomainAncillary.construct_type","cfdm.core.DomainAncillary.data","cfdm.core.DomainAncillary.interior_ring","cfdm.core.DomainAxis.construct_type","cfdm.core.Field.construct_type","cfdm.core.Field.constructs","cfdm.core.Field.data","cfdm.core.Field.domain","cfdm.core.FieldAncillary.construct_type","cfdm.core.FieldAncillary.data","cfdm.core.InteriorRing.data","cfdm.core.NumpyArray.array","cfdm.core.NumpyArray.dtype","cfdm.core.NumpyArray.ndim","cfdm.core.NumpyArray.shape","cfdm.core.NumpyArray.size","cfdm.core.PropertiesData.data","cfdm.core.PropertiesDataBounds.bounds","cfdm.core.PropertiesDataBounds.data","cfdm.core.PropertiesDataBounds.interior_ring","cfdm.core.abstract.Coordinate.bounds","cfdm.core.abstract.Coordinate.data","cfdm.core.abstract.PropertiesDataBounds.bounds","cfdm.core.abstract.PropertiesDataBounds.data","CF data model","cfdm classes","cfdm.Array","cfdm.AuxiliaryCoordinate","cfdm.Bounds","cfdm.CellMeasure","cfdm.CellMethod","cfdm.CompressedArray","cfdm.Configuration","cfdm.Constant","cfdm.Constructs","cfdm.CoordinateConversion","cfdm.CoordinateReference","cfdm.Count","cfdm.Data","cfdm.Datum","cfdm.DimensionCoordinate","cfdm.Domain","cfdm.DomainAncillary","cfdm.DomainAxis","cfdm.Field","cfdm.FieldAncillary","cfdm.GatheredArray","cfdm.Index","cfdm.InteriorRing","cfdm.List","cfdm.NetCDFArray","cfdm.NumpyArray","cfdm.RaggedContiguousArray","cfdm.RaggedIndexedArray","cfdm.RaggedIndexedContiguousArray","cfdm.core.Array","cfdm.core.AuxiliaryCoordinate","cfdm.core.Bounds","cfdm.core.CellMeasure","cfdm.core.CellMethod","cfdm.core.Constructs","cfdm.core.Container","cfdm.core.Coordinate","cfdm.core.CoordinateConversion","cfdm.core.CoordinateReference","cfdm.core.Data","cfdm.core.Datum","cfdm.core.DimensionCoordinate","cfdm.core.DocstringRewriteMeta","cfdm.core.Domain","cfdm.core.DomainAncillary","cfdm.core.DomainAxis","cfdm.core.Field","cfdm.core.FieldAncillary","cfdm.core.InteriorRing","cfdm.core.NumpyArray","cfdm.core.Parameters","cfdm.core.ParametersDomainAncillaries","cfdm.core.Properties","cfdm.core.PropertiesData","cfdm.core.PropertiesDataBounds","cfdm.core classes","cfdm constants","Contributing","Extensions","cfdm.ATOL","cfdm.CF","cfdm.LOG_LEVEL","cfdm.RTOL","cfdm.abspath","cfdm.atol","cfdm.configuration","cfdm.environment","cfdm.example_domain","cfdm.example_field","cfdm.example_fields","cfdm.implementation","cfdm.is_log_level_debug","cfdm.is_log_level_detail","cfdm.is_log_level_info","cfdm.log_level","cfdm.read","cfdm.rtol","cfdm.unique_constructs","cfdm.write","cfdm functions","cfdm package","Installation","Introduction","cfdm.Array.__array__","cfdm.Array.__deepcopy__","cfdm.Array.__getitem__","cfdm.Array.__repr__","cfdm.Array.__str__","cfdm.Array._docstring_method_exclusions","cfdm.Array._docstring_package_depth","cfdm.Array._docstring_special_substitutions","cfdm.Array._docstring_substitutions","cfdm.Array.copy","cfdm.Array.get_compression_type","cfdm.Array.get_subspace","cfdm.AuxiliaryCoordinate.__deepcopy__","cfdm.AuxiliaryCoordinate.__getitem__","cfdm.AuxiliaryCoordinate.__repr__","cfdm.AuxiliaryCoordinate.__str__","cfdm.AuxiliaryCoordinate._docstring_method_exclusions","cfdm.AuxiliaryCoordinate._docstring_package_depth","cfdm.AuxiliaryCoordinate._docstring_special_substitutions","cfdm.AuxiliaryCoordinate._docstring_substitutions","cfdm.AuxiliaryCoordinate.apply_masking","cfdm.AuxiliaryCoordinate.clear_properties","cfdm.AuxiliaryCoordinate.copy","cfdm.AuxiliaryCoordinate.creation_commands","cfdm.AuxiliaryCoordinate.del_bounds","cfdm.AuxiliaryCoordinate.del_climatology","cfdm.AuxiliaryCoordinate.del_data","cfdm.AuxiliaryCoordinate.del_geometry","cfdm.AuxiliaryCoordinate.del_interior_ring","cfdm.AuxiliaryCoordinate.del_node_count","cfdm.AuxiliaryCoordinate.del_part_node_count","cfdm.AuxiliaryCoordinate.del_property","cfdm.AuxiliaryCoordinate.dump","cfdm.AuxiliaryCoordinate.equals","cfdm.AuxiliaryCoordinate.get_bounds","cfdm.AuxiliaryCoordinate.get_bounds_data","cfdm.AuxiliaryCoordinate.get_climatology","cfdm.AuxiliaryCoordinate.get_data","cfdm.AuxiliaryCoordinate.get_filenames","cfdm.AuxiliaryCoordinate.get_geometry","cfdm.AuxiliaryCoordinate.get_interior_ring","cfdm.AuxiliaryCoordinate.get_node_count","cfdm.AuxiliaryCoordinate.get_part_node_count","cfdm.AuxiliaryCoordinate.get_property","cfdm.AuxiliaryCoordinate.has_bounds","cfdm.AuxiliaryCoordinate.has_data","cfdm.AuxiliaryCoordinate.has_geometry","cfdm.AuxiliaryCoordinate.has_interior_ring","cfdm.AuxiliaryCoordinate.has_node_count","cfdm.AuxiliaryCoordinate.has_part_node_count","cfdm.AuxiliaryCoordinate.has_property","cfdm.AuxiliaryCoordinate.identities","cfdm.AuxiliaryCoordinate.identity","cfdm.AuxiliaryCoordinate.insert_dimension","cfdm.AuxiliaryCoordinate.is_climatology","cfdm.AuxiliaryCoordinate.nc_clear_variable_groups","cfdm.AuxiliaryCoordinate.nc_del_variable","cfdm.AuxiliaryCoordinate.nc_get_variable","cfdm.AuxiliaryCoordinate.nc_has_variable","cfdm.AuxiliaryCoordinate.nc_set_variable","cfdm.AuxiliaryCoordinate.nc_set_variable_groups","cfdm.AuxiliaryCoordinate.nc_variable_groups","cfdm.AuxiliaryCoordinate.properties","cfdm.AuxiliaryCoordinate.set_bounds","cfdm.AuxiliaryCoordinate.set_climatology","cfdm.AuxiliaryCoordinate.set_data","cfdm.AuxiliaryCoordinate.set_geometry","cfdm.AuxiliaryCoordinate.set_interior_ring","cfdm.AuxiliaryCoordinate.set_node_count","cfdm.AuxiliaryCoordinate.set_part_node_count","cfdm.AuxiliaryCoordinate.set_properties","cfdm.AuxiliaryCoordinate.set_property","cfdm.AuxiliaryCoordinate.squeeze","cfdm.AuxiliaryCoordinate.transpose","cfdm.AuxiliaryCoordinate.uncompress","cfdm.Bounds.__deepcopy__","cfdm.Bounds.__getitem__","cfdm.Bounds.__repr__","cfdm.Bounds.__str__","cfdm.Bounds._docstring_method_exclusions","cfdm.Bounds._docstring_package_depth","cfdm.Bounds._docstring_special_substitutions","cfdm.Bounds._docstring_substitutions","cfdm.Bounds.apply_masking","cfdm.Bounds.clear_properties","cfdm.Bounds.copy","cfdm.Bounds.creation_commands","cfdm.Bounds.del_data","cfdm.Bounds.del_property","cfdm.Bounds.dump","cfdm.Bounds.equals","cfdm.Bounds.get_data","cfdm.Bounds.get_filenames","cfdm.Bounds.get_property","cfdm.Bounds.has_bounds","cfdm.Bounds.has_data","cfdm.Bounds.has_property","cfdm.Bounds.identities","cfdm.Bounds.identity","cfdm.Bounds.inherited_properties","cfdm.Bounds.insert_dimension","cfdm.Bounds.nc_clear_dimension_groups","cfdm.Bounds.nc_clear_variable_groups","cfdm.Bounds.nc_del_dimension","cfdm.Bounds.nc_del_variable","cfdm.Bounds.nc_dimension_groups","cfdm.Bounds.nc_get_dimension","cfdm.Bounds.nc_get_variable","cfdm.Bounds.nc_has_dimension","cfdm.Bounds.nc_has_variable","cfdm.Bounds.nc_set_dimension","cfdm.Bounds.nc_set_dimension_groups","cfdm.Bounds.nc_set_variable","cfdm.Bounds.nc_set_variable_groups","cfdm.Bounds.nc_variable_groups","cfdm.Bounds.properties","cfdm.Bounds.set_data","cfdm.Bounds.set_properties","cfdm.Bounds.set_property","cfdm.Bounds.squeeze","cfdm.Bounds.transpose","cfdm.Bounds.uncompress","cfdm.CellMeasure.__deepcopy__","cfdm.CellMeasure.__getitem__","cfdm.CellMeasure.__repr__","cfdm.CellMeasure.__str__","cfdm.CellMeasure._docstring_method_exclusions","cfdm.CellMeasure._docstring_package_depth","cfdm.CellMeasure._docstring_special_substitutions","cfdm.CellMeasure._docstring_substitutions","cfdm.CellMeasure.apply_masking","cfdm.CellMeasure.clear_properties","cfdm.CellMeasure.copy","cfdm.CellMeasure.creation_commands","cfdm.CellMeasure.del_data","cfdm.CellMeasure.del_measure","cfdm.CellMeasure.del_property","cfdm.CellMeasure.dump","cfdm.CellMeasure.equals","cfdm.CellMeasure.get_data","cfdm.CellMeasure.get_filenames","cfdm.CellMeasure.get_measure","cfdm.CellMeasure.get_property","cfdm.CellMeasure.has_bounds","cfdm.CellMeasure.has_data","cfdm.CellMeasure.has_measure","cfdm.CellMeasure.has_property","cfdm.CellMeasure.identities","cfdm.CellMeasure.identity","cfdm.CellMeasure.insert_dimension","cfdm.CellMeasure.nc_clear_variable_groups","cfdm.CellMeasure.nc_del_variable","cfdm.CellMeasure.nc_get_external","cfdm.CellMeasure.nc_get_variable","cfdm.CellMeasure.nc_has_variable","cfdm.CellMeasure.nc_set_external","cfdm.CellMeasure.nc_set_variable","cfdm.CellMeasure.nc_set_variable_groups","cfdm.CellMeasure.nc_variable_groups","cfdm.CellMeasure.properties","cfdm.CellMeasure.set_data","cfdm.CellMeasure.set_measure","cfdm.CellMeasure.set_properties","cfdm.CellMeasure.set_property","cfdm.CellMeasure.squeeze","cfdm.CellMeasure.transpose","cfdm.CellMeasure.uncompress","cfdm.CellMethod.__deepcopy__","cfdm.CellMethod.__repr__","cfdm.CellMethod.__str__","cfdm.CellMethod._docstring_method_exclusions","cfdm.CellMethod._docstring_package_depth","cfdm.CellMethod._docstring_special_substitutions","cfdm.CellMethod._docstring_substitutions","cfdm.CellMethod.copy","cfdm.CellMethod.creation_commands","cfdm.CellMethod.del_axes","cfdm.CellMethod.del_method","cfdm.CellMethod.del_qualifier","cfdm.CellMethod.dump","cfdm.CellMethod.equals","cfdm.CellMethod.get_axes","cfdm.CellMethod.get_method","cfdm.CellMethod.get_qualifier","cfdm.CellMethod.has_axes","cfdm.CellMethod.has_method","cfdm.CellMethod.has_qualifier","cfdm.CellMethod.identities","cfdm.CellMethod.identity","cfdm.CellMethod.qualifiers","cfdm.CellMethod.set_axes","cfdm.CellMethod.set_method","cfdm.CellMethod.set_qualifier","cfdm.CellMethod.sorted","cfdm.CompressedArray.__array__","cfdm.CompressedArray.__deepcopy__","cfdm.CompressedArray.__getitem__","cfdm.CompressedArray.__repr__","cfdm.CompressedArray.__str__","cfdm.CompressedArray._docstring_method_exclusions","cfdm.CompressedArray._docstring_package_depth","cfdm.CompressedArray._docstring_special_substitutions","cfdm.CompressedArray._docstring_substitutions","cfdm.CompressedArray.copy","cfdm.CompressedArray.get_compressed_axes","cfdm.CompressedArray.get_compressed_dimension","cfdm.CompressedArray.get_compression_type","cfdm.CompressedArray.get_subspace","cfdm.CompressedArray.source","cfdm.CompressedArray.to_memory","cfdm.Configuration.__enter__","cfdm.Configuration.__exit__","cfdm.Configuration.__repr__","cfdm.Configuration.clear","cfdm.Configuration.copy","cfdm.Configuration.fromkeys","cfdm.Configuration.get","cfdm.Configuration.items","cfdm.Configuration.keys","cfdm.Configuration.pop","cfdm.Configuration.popitem","cfdm.Configuration.setdefault","cfdm.Configuration.update","cfdm.Configuration.values","cfdm.Constant.__deepcopy__","cfdm.Constant.__enter__","cfdm.Constant.__exit__","cfdm.Constant.__repr__","cfdm.Constant.__str__","cfdm.Constant.copy","cfdm.Constructs.__call__","cfdm.Constructs.__contains__","cfdm.Constructs.__copy__","cfdm.Constructs.__deepcopy__","cfdm.Constructs.__getitem__","cfdm.Constructs.__iter__","cfdm.Constructs.__len__","cfdm.Constructs.__repr__","cfdm.Constructs.__str__","cfdm.Constructs._docstring_method_exclusions","cfdm.Constructs._docstring_package_depth","cfdm.Constructs._docstring_special_substitutions","cfdm.Constructs._docstring_substitutions","cfdm.Constructs.clear_filters_applied","cfdm.Constructs.construct_type","cfdm.Constructs.construct_types","cfdm.Constructs.copy","cfdm.Constructs.data_axes","cfdm.Constructs.domain_axes","cfdm.Constructs.domain_axis_identity","cfdm.Constructs.equals","cfdm.Constructs.filter","cfdm.Constructs.filter_by_axis","cfdm.Constructs.filter_by_data","cfdm.Constructs.filter_by_identity","cfdm.Constructs.filter_by_key","cfdm.Constructs.filter_by_measure","cfdm.Constructs.filter_by_method","cfdm.Constructs.filter_by_naxes","cfdm.Constructs.filter_by_ncdim","cfdm.Constructs.filter_by_ncvar","cfdm.Constructs.filter_by_property","cfdm.Constructs.filter_by_size","cfdm.Constructs.filter_by_type","cfdm.Constructs.filters_applied","cfdm.Constructs.get","cfdm.Constructs.get_data_axes","cfdm.Constructs.inverse_filter","cfdm.Constructs.items","cfdm.Constructs.key","cfdm.Constructs.keys","cfdm.Constructs.new_identifier","cfdm.Constructs.ordered","cfdm.Constructs.replace","cfdm.Constructs.shallow_copy","cfdm.Constructs.todict","cfdm.Constructs.unfilter","cfdm.Constructs.value","cfdm.Constructs.values","cfdm.CoordinateConversion.__bool__","cfdm.CoordinateConversion.__deepcopy__","cfdm.CoordinateConversion.__nonzero__","cfdm.CoordinateConversion.__repr__","cfdm.CoordinateConversion.__str__","cfdm.CoordinateConversion._docstring_method_exclusions","cfdm.CoordinateConversion._docstring_package_depth","cfdm.CoordinateConversion._docstring_special_substitutions","cfdm.CoordinateConversion._docstring_substitutions","cfdm.CoordinateConversion.clear_domain_ancillaries","cfdm.CoordinateConversion.clear_parameters","cfdm.CoordinateConversion.copy","cfdm.CoordinateConversion.del_domain_ancillary","cfdm.CoordinateConversion.del_parameter","cfdm.CoordinateConversion.domain_ancillaries","cfdm.CoordinateConversion.equals","cfdm.CoordinateConversion.get_domain_ancillary","cfdm.CoordinateConversion.get_parameter","cfdm.CoordinateConversion.has_domain_ancillary","cfdm.CoordinateConversion.has_parameter","cfdm.CoordinateConversion.parameters","cfdm.CoordinateConversion.set_domain_ancillaries","cfdm.CoordinateConversion.set_domain_ancillary","cfdm.CoordinateConversion.set_parameter","cfdm.CoordinateConversion.set_parameters","cfdm.CoordinateReference.__deepcopy__","cfdm.CoordinateReference.__repr__","cfdm.CoordinateReference.__str__","cfdm.CoordinateReference._docstring_method_exclusions","cfdm.CoordinateReference._docstring_package_depth","cfdm.CoordinateReference._docstring_special_substitutions","cfdm.CoordinateReference._docstring_substitutions","cfdm.CoordinateReference.clear_coordinates","cfdm.CoordinateReference.coordinates","cfdm.CoordinateReference.copy","cfdm.CoordinateReference.creation_commands","cfdm.CoordinateReference.del_coordinate","cfdm.CoordinateReference.del_coordinate_conversion","cfdm.CoordinateReference.del_datum","cfdm.CoordinateReference.dump","cfdm.CoordinateReference.equals","cfdm.CoordinateReference.get_coordinate_conversion","cfdm.CoordinateReference.get_datum","cfdm.CoordinateReference.has_coordinate","cfdm.CoordinateReference.identities","cfdm.CoordinateReference.identity","cfdm.CoordinateReference.nc_clear_variable_groups","cfdm.CoordinateReference.nc_del_variable","cfdm.CoordinateReference.nc_get_variable","cfdm.CoordinateReference.nc_has_variable","cfdm.CoordinateReference.nc_set_variable","cfdm.CoordinateReference.nc_set_variable_groups","cfdm.CoordinateReference.nc_variable_groups","cfdm.CoordinateReference.set_coordinate","cfdm.CoordinateReference.set_coordinate_conversion","cfdm.CoordinateReference.set_coordinates","cfdm.CoordinateReference.set_datum","cfdm.Count.__deepcopy__","cfdm.Count.__getitem__","cfdm.Count.__repr__","cfdm.Count.__str__","cfdm.Count._docstring_method_exclusions","cfdm.Count._docstring_package_depth","cfdm.Count._docstring_special_substitutions","cfdm.Count._docstring_substitutions","cfdm.Count.apply_masking","cfdm.Count.clear_properties","cfdm.Count.copy","cfdm.Count.creation_commands","cfdm.Count.del_data","cfdm.Count.del_property","cfdm.Count.dump","cfdm.Count.equals","cfdm.Count.get_data","cfdm.Count.get_filenames","cfdm.Count.get_property","cfdm.Count.has_bounds","cfdm.Count.has_data","cfdm.Count.has_property","cfdm.Count.identities","cfdm.Count.identity","cfdm.Count.insert_dimension","cfdm.Count.nc_clear_dimension_groups","cfdm.Count.nc_clear_sample_dimension_groups","cfdm.Count.nc_clear_variable_groups","cfdm.Count.nc_del_dimension","cfdm.Count.nc_del_sample_dimension","cfdm.Count.nc_del_variable","cfdm.Count.nc_dimension_groups","cfdm.Count.nc_get_dimension","cfdm.Count.nc_get_sample_dimension","cfdm.Count.nc_get_variable","cfdm.Count.nc_has_dimension","cfdm.Count.nc_has_sample_dimension","cfdm.Count.nc_has_variable","cfdm.Count.nc_sample_dimension_groups","cfdm.Count.nc_set_dimension","cfdm.Count.nc_set_dimension_groups","cfdm.Count.nc_set_sample_dimension","cfdm.Count.nc_set_sample_dimension_groups","cfdm.Count.nc_set_variable","cfdm.Count.nc_set_variable_groups","cfdm.Count.nc_variable_groups","cfdm.Count.properties","cfdm.Count.set_data","cfdm.Count.set_properties","cfdm.Count.set_property","cfdm.Count.squeeze","cfdm.Count.transpose","cfdm.Count.uncompress","cfdm.Data.__array__","cfdm.Data.__deepcopy__","cfdm.Data.__getitem__","cfdm.Data.__int__","cfdm.Data.__iter__","cfdm.Data.__repr__","cfdm.Data.__setitem__","cfdm.Data.__str__","cfdm.Data._docstring_method_exclusions","cfdm.Data._docstring_package_depth","cfdm.Data._docstring_special_substitutions","cfdm.Data._docstring_substitutions","cfdm.Data.any","cfdm.Data.apply_masking","cfdm.Data.copy","cfdm.Data.creation_commands","cfdm.Data.del_calendar","cfdm.Data.del_fill_value","cfdm.Data.del_units","cfdm.Data.empty","cfdm.Data.equals","cfdm.Data.filled","cfdm.Data.first_element","cfdm.Data.flatten","cfdm.Data.get_calendar","cfdm.Data.get_compressed_axes","cfdm.Data.get_compressed_dimension","cfdm.Data.get_compression_type","cfdm.Data.get_count","cfdm.Data.get_filenames","cfdm.Data.get_fill_value","cfdm.Data.get_index","cfdm.Data.get_list","cfdm.Data.get_units","cfdm.Data.has_calendar","cfdm.Data.has_fill_value","cfdm.Data.has_units","cfdm.Data.insert_dimension","cfdm.Data.last_element","cfdm.Data.max","cfdm.Data.maximum","cfdm.Data.min","cfdm.Data.minimum","cfdm.Data.nc_clear_hdf5_chunksizes","cfdm.Data.nc_hdf5_chunksizes","cfdm.Data.nc_set_hdf5_chunksizes","cfdm.Data.second_element","cfdm.Data.set_calendar","cfdm.Data.set_fill_value","cfdm.Data.set_units","cfdm.Data.source","cfdm.Data.squeeze","cfdm.Data.sum","cfdm.Data.to_memory","cfdm.Data.transpose","cfdm.Data.uncompress","cfdm.Data.unique","cfdm.Datum.__bool__","cfdm.Datum.__deepcopy__","cfdm.Datum.__nonzero__","cfdm.Datum.__repr__","cfdm.Datum.__str__","cfdm.Datum._docstring_method_exclusions","cfdm.Datum._docstring_package_depth","cfdm.Datum._docstring_special_substitutions","cfdm.Datum._docstring_substitutions","cfdm.Datum.clear_parameters","cfdm.Datum.copy","cfdm.Datum.del_parameter","cfdm.Datum.equals","cfdm.Datum.get_parameter","cfdm.Datum.has_parameter","cfdm.Datum.nc_clear_variable_groups","cfdm.Datum.nc_del_variable","cfdm.Datum.nc_get_variable","cfdm.Datum.nc_has_variable","cfdm.Datum.nc_set_variable","cfdm.Datum.nc_set_variable_groups","cfdm.Datum.nc_variable_groups","cfdm.Datum.parameters","cfdm.Datum.set_parameter","cfdm.Datum.set_parameters","cfdm.DimensionCoordinate.__deepcopy__","cfdm.DimensionCoordinate.__getitem__","cfdm.DimensionCoordinate.__repr__","cfdm.DimensionCoordinate.__str__","cfdm.DimensionCoordinate._docstring_method_exclusions","cfdm.DimensionCoordinate._docstring_package_depth","cfdm.DimensionCoordinate._docstring_special_substitutions","cfdm.DimensionCoordinate._docstring_substitutions","cfdm.DimensionCoordinate.apply_masking","cfdm.DimensionCoordinate.clear_properties","cfdm.DimensionCoordinate.copy","cfdm.DimensionCoordinate.creation_commands","cfdm.DimensionCoordinate.del_bounds","cfdm.DimensionCoordinate.del_climatology","cfdm.DimensionCoordinate.del_data","cfdm.DimensionCoordinate.del_geometry","cfdm.DimensionCoordinate.del_interior_ring","cfdm.DimensionCoordinate.del_node_count","cfdm.DimensionCoordinate.del_part_node_count","cfdm.DimensionCoordinate.del_property","cfdm.DimensionCoordinate.dump","cfdm.DimensionCoordinate.equals","cfdm.DimensionCoordinate.get_bounds","cfdm.DimensionCoordinate.get_bounds_data","cfdm.DimensionCoordinate.get_climatology","cfdm.DimensionCoordinate.get_data","cfdm.DimensionCoordinate.get_filenames","cfdm.DimensionCoordinate.get_geometry","cfdm.DimensionCoordinate.get_interior_ring","cfdm.DimensionCoordinate.get_node_count","cfdm.DimensionCoordinate.get_part_node_count","cfdm.DimensionCoordinate.get_property","cfdm.DimensionCoordinate.has_bounds","cfdm.DimensionCoordinate.has_data","cfdm.DimensionCoordinate.has_geometry","cfdm.DimensionCoordinate.has_interior_ring","cfdm.DimensionCoordinate.has_node_count","cfdm.DimensionCoordinate.has_part_node_count","cfdm.DimensionCoordinate.has_property","cfdm.DimensionCoordinate.identities","cfdm.DimensionCoordinate.identity","cfdm.DimensionCoordinate.insert_dimension","cfdm.DimensionCoordinate.is_climatology","cfdm.DimensionCoordinate.nc_clear_variable_groups","cfdm.DimensionCoordinate.nc_del_variable","cfdm.DimensionCoordinate.nc_get_variable","cfdm.DimensionCoordinate.nc_has_variable","cfdm.DimensionCoordinate.nc_set_variable","cfdm.DimensionCoordinate.nc_set_variable_groups","cfdm.DimensionCoordinate.nc_variable_groups","cfdm.DimensionCoordinate.properties","cfdm.DimensionCoordinate.set_bounds","cfdm.DimensionCoordinate.set_climatology","cfdm.DimensionCoordinate.set_data","cfdm.DimensionCoordinate.set_geometry","cfdm.DimensionCoordinate.set_interior_ring","cfdm.DimensionCoordinate.set_node_count","cfdm.DimensionCoordinate.set_part_node_count","cfdm.DimensionCoordinate.set_properties","cfdm.DimensionCoordinate.set_property","cfdm.DimensionCoordinate.squeeze","cfdm.DimensionCoordinate.transpose","cfdm.DimensionCoordinate.uncompress","cfdm.Domain.__deepcopy__","cfdm.Domain.__repr__","cfdm.Domain.__str__","cfdm.Domain._docstring_method_exclusions","cfdm.Domain._docstring_package_depth","cfdm.Domain._docstring_special_substitutions","cfdm.Domain._docstring_substitutions","cfdm.Domain.apply_masking","cfdm.Domain.auxiliary_coordinates","cfdm.Domain.cell_measures","cfdm.Domain.clear_properties","cfdm.Domain.climatological_time_axes","cfdm.Domain.construct","cfdm.Domain.construct_item","cfdm.Domain.construct_key","cfdm.Domain.coordinate_references","cfdm.Domain.coordinates","cfdm.Domain.copy","cfdm.Domain.creation_commands","cfdm.Domain.dataset_compliance","cfdm.Domain.del_construct","cfdm.Domain.del_data_axes","cfdm.Domain.del_property","cfdm.Domain.dimension_coordinates","cfdm.Domain.domain_ancillaries","cfdm.Domain.domain_axes","cfdm.Domain.domain_axis_key","cfdm.Domain.dump","cfdm.Domain.equals","cfdm.Domain.fromconstructs","cfdm.Domain.get_construct","cfdm.Domain.get_data_axes","cfdm.Domain.get_filenames","cfdm.Domain.get_property","cfdm.Domain.has_bounds","cfdm.Domain.has_construct","cfdm.Domain.has_data","cfdm.Domain.has_data_axes","cfdm.Domain.has_geometry","cfdm.Domain.has_property","cfdm.Domain.identities","cfdm.Domain.identity","cfdm.Domain.nc_clear_component_dimension_groups","cfdm.Domain.nc_clear_component_sample_dimension_groups","cfdm.Domain.nc_clear_component_variable_groups","cfdm.Domain.nc_clear_geometry_variable_groups","cfdm.Domain.nc_clear_global_attributes","cfdm.Domain.nc_clear_group_attributes","cfdm.Domain.nc_clear_variable_groups","cfdm.Domain.nc_del_component_dimension","cfdm.Domain.nc_del_component_sample_dimension","cfdm.Domain.nc_del_component_variable","cfdm.Domain.nc_del_geometry_variable","cfdm.Domain.nc_del_variable","cfdm.Domain.nc_geometry_variable_groups","cfdm.Domain.nc_get_geometry_variable","cfdm.Domain.nc_get_variable","cfdm.Domain.nc_global_attributes","cfdm.Domain.nc_group_attributes","cfdm.Domain.nc_has_geometry_variable","cfdm.Domain.nc_has_variable","cfdm.Domain.nc_set_component_dimension","cfdm.Domain.nc_set_component_dimension_groups","cfdm.Domain.nc_set_component_sample_dimension","cfdm.Domain.nc_set_component_sample_dimension_groups","cfdm.Domain.nc_set_component_variable","cfdm.Domain.nc_set_component_variable_groups","cfdm.Domain.nc_set_geometry_variable","cfdm.Domain.nc_set_geometry_variable_groups","cfdm.Domain.nc_set_global_attribute","cfdm.Domain.nc_set_global_attributes","cfdm.Domain.nc_set_group_attribute","cfdm.Domain.nc_set_group_attributes","cfdm.Domain.nc_set_variable","cfdm.Domain.nc_set_variable_groups","cfdm.Domain.nc_variable_groups","cfdm.Domain.properties","cfdm.Domain.set_construct","cfdm.Domain.set_data_axes","cfdm.Domain.set_properties","cfdm.Domain.set_property","cfdm.DomainAncillary.__deepcopy__","cfdm.DomainAncillary.__getitem__","cfdm.DomainAncillary.__repr__","cfdm.DomainAncillary.__str__","cfdm.DomainAncillary._docstring_method_exclusions","cfdm.DomainAncillary._docstring_package_depth","cfdm.DomainAncillary._docstring_special_substitutions","cfdm.DomainAncillary._docstring_substitutions","cfdm.DomainAncillary.apply_masking","cfdm.DomainAncillary.clear_properties","cfdm.DomainAncillary.copy","cfdm.DomainAncillary.creation_commands","cfdm.DomainAncillary.del_bounds","cfdm.DomainAncillary.del_data","cfdm.DomainAncillary.del_geometry","cfdm.DomainAncillary.del_interior_ring","cfdm.DomainAncillary.del_node_count","cfdm.DomainAncillary.del_part_node_count","cfdm.DomainAncillary.del_property","cfdm.DomainAncillary.dump","cfdm.DomainAncillary.equals","cfdm.DomainAncillary.get_bounds","cfdm.DomainAncillary.get_bounds_data","cfdm.DomainAncillary.get_data","cfdm.DomainAncillary.get_filenames","cfdm.DomainAncillary.get_geometry","cfdm.DomainAncillary.get_interior_ring","cfdm.DomainAncillary.get_node_count","cfdm.DomainAncillary.get_part_node_count","cfdm.DomainAncillary.get_property","cfdm.DomainAncillary.has_bounds","cfdm.DomainAncillary.has_data","cfdm.DomainAncillary.has_geometry","cfdm.DomainAncillary.has_interior_ring","cfdm.DomainAncillary.has_node_count","cfdm.DomainAncillary.has_part_node_count","cfdm.DomainAncillary.has_property","cfdm.DomainAncillary.identities","cfdm.DomainAncillary.identity","cfdm.DomainAncillary.insert_dimension","cfdm.DomainAncillary.nc_clear_variable_groups","cfdm.DomainAncillary.nc_del_variable","cfdm.DomainAncillary.nc_get_variable","cfdm.DomainAncillary.nc_has_variable","cfdm.DomainAncillary.nc_set_variable","cfdm.DomainAncillary.nc_set_variable_groups","cfdm.DomainAncillary.nc_variable_groups","cfdm.DomainAncillary.properties","cfdm.DomainAncillary.set_bounds","cfdm.DomainAncillary.set_data","cfdm.DomainAncillary.set_geometry","cfdm.DomainAncillary.set_interior_ring","cfdm.DomainAncillary.set_node_count","cfdm.DomainAncillary.set_part_node_count","cfdm.DomainAncillary.set_properties","cfdm.DomainAncillary.set_property","cfdm.DomainAncillary.squeeze","cfdm.DomainAncillary.transpose","cfdm.DomainAncillary.uncompress","cfdm.DomainAxis.__deepcopy__","cfdm.DomainAxis.__repr__","cfdm.DomainAxis.__str__","cfdm.DomainAxis._docstring_method_exclusions","cfdm.DomainAxis._docstring_package_depth","cfdm.DomainAxis._docstring_special_substitutions","cfdm.DomainAxis._docstring_substitutions","cfdm.DomainAxis.copy","cfdm.DomainAxis.creation_commands","cfdm.DomainAxis.del_size","cfdm.DomainAxis.equals","cfdm.DomainAxis.get_size","cfdm.DomainAxis.has_size","cfdm.DomainAxis.identities","cfdm.DomainAxis.identity","cfdm.DomainAxis.nc_clear_dimension_groups","cfdm.DomainAxis.nc_del_dimension","cfdm.DomainAxis.nc_dimension_groups","cfdm.DomainAxis.nc_get_dimension","cfdm.DomainAxis.nc_has_dimension","cfdm.DomainAxis.nc_is_unlimited","cfdm.DomainAxis.nc_set_dimension","cfdm.DomainAxis.nc_set_dimension_groups","cfdm.DomainAxis.nc_set_unlimited","cfdm.DomainAxis.set_size","cfdm.Field.__deepcopy__","cfdm.Field.__getitem__","cfdm.Field.__repr__","cfdm.Field.__str__","cfdm.Field._docstring_method_exclusions","cfdm.Field._docstring_package_depth","cfdm.Field._docstring_special_substitutions","cfdm.Field._docstring_substitutions","cfdm.Field.apply_masking","cfdm.Field.auxiliary_coordinates","cfdm.Field.cell_measures","cfdm.Field.cell_methods","cfdm.Field.clear_properties","cfdm.Field.climatological_time_axes","cfdm.Field.compress","cfdm.Field.construct","cfdm.Field.construct_item","cfdm.Field.construct_key","cfdm.Field.convert","cfdm.Field.coordinate_references","cfdm.Field.coordinates","cfdm.Field.copy","cfdm.Field.creation_commands","cfdm.Field.dataset_compliance","cfdm.Field.del_construct","cfdm.Field.del_data","cfdm.Field.del_data_axes","cfdm.Field.del_property","cfdm.Field.dimension_coordinates","cfdm.Field.domain_ancillaries","cfdm.Field.domain_axes","cfdm.Field.domain_axis_key","cfdm.Field.dump","cfdm.Field.equals","cfdm.Field.field_ancillaries","cfdm.Field.get_construct","cfdm.Field.get_data","cfdm.Field.get_data_axes","cfdm.Field.get_domain","cfdm.Field.get_filenames","cfdm.Field.get_property","cfdm.Field.has_bounds","cfdm.Field.has_construct","cfdm.Field.has_data","cfdm.Field.has_data_axes","cfdm.Field.has_geometry","cfdm.Field.has_property","cfdm.Field.identities","cfdm.Field.identity","cfdm.Field.insert_dimension","cfdm.Field.nc_clear_component_dimension_groups","cfdm.Field.nc_clear_component_sample_dimension_groups","cfdm.Field.nc_clear_component_variable_groups","cfdm.Field.nc_clear_geometry_variable_groups","cfdm.Field.nc_clear_global_attributes","cfdm.Field.nc_clear_group_attributes","cfdm.Field.nc_clear_variable_groups","cfdm.Field.nc_del_component_dimension","cfdm.Field.nc_del_component_sample_dimension","cfdm.Field.nc_del_component_variable","cfdm.Field.nc_del_geometry_variable","cfdm.Field.nc_del_variable","cfdm.Field.nc_geometry_variable_groups","cfdm.Field.nc_get_geometry_variable","cfdm.Field.nc_get_variable","cfdm.Field.nc_global_attributes","cfdm.Field.nc_group_attributes","cfdm.Field.nc_has_geometry_variable","cfdm.Field.nc_has_variable","cfdm.Field.nc_set_component_dimension","cfdm.Field.nc_set_component_dimension_groups","cfdm.Field.nc_set_component_sample_dimension","cfdm.Field.nc_set_component_sample_dimension_groups","cfdm.Field.nc_set_component_variable","cfdm.Field.nc_set_component_variable_groups","cfdm.Field.nc_set_geometry_variable","cfdm.Field.nc_set_geometry_variable_groups","cfdm.Field.nc_set_global_attribute","cfdm.Field.nc_set_global_attributes","cfdm.Field.nc_set_group_attribute","cfdm.Field.nc_set_group_attributes","cfdm.Field.nc_set_variable","cfdm.Field.nc_set_variable_groups","cfdm.Field.nc_variable_groups","cfdm.Field.properties","cfdm.Field.set_construct","cfdm.Field.set_data","cfdm.Field.set_data_axes","cfdm.Field.set_properties","cfdm.Field.set_property","cfdm.Field.squeeze","cfdm.Field.transpose","cfdm.Field.uncompress","cfdm.FieldAncillary.__deepcopy__","cfdm.FieldAncillary.__getitem__","cfdm.FieldAncillary.__repr__","cfdm.FieldAncillary.__str__","cfdm.FieldAncillary._docstring_method_exclusions","cfdm.FieldAncillary._docstring_package_depth","cfdm.FieldAncillary._docstring_special_substitutions","cfdm.FieldAncillary._docstring_substitutions","cfdm.FieldAncillary.apply_masking","cfdm.FieldAncillary.clear_properties","cfdm.FieldAncillary.copy","cfdm.FieldAncillary.creation_commands","cfdm.FieldAncillary.del_data","cfdm.FieldAncillary.del_property","cfdm.FieldAncillary.dump","cfdm.FieldAncillary.equals","cfdm.FieldAncillary.get_data","cfdm.FieldAncillary.get_filenames","cfdm.FieldAncillary.get_property","cfdm.FieldAncillary.has_bounds","cfdm.FieldAncillary.has_data","cfdm.FieldAncillary.has_property","cfdm.FieldAncillary.identities","cfdm.FieldAncillary.identity","cfdm.FieldAncillary.insert_dimension","cfdm.FieldAncillary.nc_clear_variable_groups","cfdm.FieldAncillary.nc_del_variable","cfdm.FieldAncillary.nc_get_variable","cfdm.FieldAncillary.nc_has_variable","cfdm.FieldAncillary.nc_set_variable","cfdm.FieldAncillary.nc_set_variable_groups","cfdm.FieldAncillary.nc_variable_groups","cfdm.FieldAncillary.properties","cfdm.FieldAncillary.set_data","cfdm.FieldAncillary.set_properties","cfdm.FieldAncillary.set_property","cfdm.FieldAncillary.squeeze","cfdm.FieldAncillary.transpose","cfdm.FieldAncillary.uncompress","cfdm.GatheredArray.__array__","cfdm.GatheredArray.__deepcopy__","cfdm.GatheredArray.__getitem__","cfdm.GatheredArray.__repr__","cfdm.GatheredArray.__str__","cfdm.GatheredArray.copy","cfdm.GatheredArray.get_compressed_axes","cfdm.GatheredArray.get_compressed_dimension","cfdm.GatheredArray.get_compression_type","cfdm.GatheredArray.get_list","cfdm.GatheredArray.get_subspace","cfdm.GatheredArray.source","cfdm.GatheredArray.to_memory","cfdm.Index.__deepcopy__","cfdm.Index.__getitem__","cfdm.Index.__repr__","cfdm.Index.__str__","cfdm.Index._docstring_method_exclusions","cfdm.Index._docstring_package_depth","cfdm.Index._docstring_special_substitutions","cfdm.Index._docstring_substitutions","cfdm.Index.apply_masking","cfdm.Index.clear_properties","cfdm.Index.copy","cfdm.Index.creation_commands","cfdm.Index.del_data","cfdm.Index.del_property","cfdm.Index.dump","cfdm.Index.equals","cfdm.Index.get_data","cfdm.Index.get_filenames","cfdm.Index.get_property","cfdm.Index.has_bounds","cfdm.Index.has_data","cfdm.Index.has_property","cfdm.Index.identities","cfdm.Index.identity","cfdm.Index.insert_dimension","cfdm.Index.nc_clear_dimension_groups","cfdm.Index.nc_clear_sample_dimension_groups","cfdm.Index.nc_clear_variable_groups","cfdm.Index.nc_del_dimension","cfdm.Index.nc_del_sample_dimension","cfdm.Index.nc_del_variable","cfdm.Index.nc_dimension_groups","cfdm.Index.nc_get_dimension","cfdm.Index.nc_get_sample_dimension","cfdm.Index.nc_get_variable","cfdm.Index.nc_has_dimension","cfdm.Index.nc_has_sample_dimension","cfdm.Index.nc_has_variable","cfdm.Index.nc_sample_dimension_groups","cfdm.Index.nc_set_dimension","cfdm.Index.nc_set_dimension_groups","cfdm.Index.nc_set_sample_dimension","cfdm.Index.nc_set_sample_dimension_groups","cfdm.Index.nc_set_variable","cfdm.Index.nc_set_variable_groups","cfdm.Index.nc_variable_groups","cfdm.Index.properties","cfdm.Index.set_data","cfdm.Index.set_properties","cfdm.Index.set_property","cfdm.Index.squeeze","cfdm.Index.transpose","cfdm.Index.uncompress","cfdm.InteriorRing.__deepcopy__","cfdm.InteriorRing.__getitem__","cfdm.InteriorRing.__repr__","cfdm.InteriorRing.__str__","cfdm.InteriorRing._docstring_method_exclusions","cfdm.InteriorRing._docstring_package_depth","cfdm.InteriorRing._docstring_special_substitutions","cfdm.InteriorRing._docstring_substitutions","cfdm.InteriorRing.apply_masking","cfdm.InteriorRing.clear_properties","cfdm.InteriorRing.copy","cfdm.InteriorRing.creation_commands","cfdm.InteriorRing.del_data","cfdm.InteriorRing.del_property","cfdm.InteriorRing.dump","cfdm.InteriorRing.equals","cfdm.InteriorRing.get_data","cfdm.InteriorRing.get_filenames","cfdm.InteriorRing.get_property","cfdm.InteriorRing.has_bounds","cfdm.InteriorRing.has_data","cfdm.InteriorRing.has_property","cfdm.InteriorRing.identities","cfdm.InteriorRing.identity","cfdm.InteriorRing.insert_dimension","cfdm.InteriorRing.nc_clear_dimension_groups","cfdm.InteriorRing.nc_clear_variable_groups","cfdm.InteriorRing.nc_del_dimension","cfdm.InteriorRing.nc_del_variable","cfdm.InteriorRing.nc_dimension_groups","cfdm.InteriorRing.nc_get_dimension","cfdm.InteriorRing.nc_get_variable","cfdm.InteriorRing.nc_has_dimension","cfdm.InteriorRing.nc_has_variable","cfdm.InteriorRing.nc_set_dimension","cfdm.InteriorRing.nc_set_dimension_groups","cfdm.InteriorRing.nc_set_variable","cfdm.InteriorRing.nc_set_variable_groups","cfdm.InteriorRing.nc_variable_groups","cfdm.InteriorRing.properties","cfdm.InteriorRing.set_data","cfdm.InteriorRing.set_properties","cfdm.InteriorRing.set_property","cfdm.InteriorRing.squeeze","cfdm.InteriorRing.transpose","cfdm.InteriorRing.uncompress","cfdm.List.__deepcopy__","cfdm.List.__getitem__","cfdm.List.__repr__","cfdm.List.__str__","cfdm.List._docstring_method_exclusions","cfdm.List._docstring_package_depth","cfdm.List._docstring_special_substitutions","cfdm.List._docstring_substitutions","cfdm.List.apply_masking","cfdm.List.clear_properties","cfdm.List.copy","cfdm.List.creation_commands","cfdm.List.del_data","cfdm.List.del_property","cfdm.List.dump","cfdm.List.equals","cfdm.List.get_data","cfdm.List.get_filenames","cfdm.List.get_property","cfdm.List.has_bounds","cfdm.List.has_data","cfdm.List.has_property","cfdm.List.identities","cfdm.List.identity","cfdm.List.insert_dimension","cfdm.List.nc_clear_variable_groups","cfdm.List.nc_del_variable","cfdm.List.nc_get_variable","cfdm.List.nc_has_variable","cfdm.List.nc_set_variable","cfdm.List.nc_set_variable_groups","cfdm.List.nc_variable_groups","cfdm.List.properties","cfdm.List.set_data","cfdm.List.set_properties","cfdm.List.set_property","cfdm.List.squeeze","cfdm.List.transpose","cfdm.List.uncompress","cfdm.NetCDFArray.__getitem__","cfdm.NetCDFArray._docstring_method_exclusions","cfdm.NetCDFArray._docstring_package_depth","cfdm.NetCDFArray._docstring_special_substitutions","cfdm.NetCDFArray._docstring_substitutions","cfdm.NetCDFArray.close","cfdm.NetCDFArray.copy","cfdm.NetCDFArray.get_compression_type","cfdm.NetCDFArray.get_filename","cfdm.NetCDFArray.get_group","cfdm.NetCDFArray.get_mask","cfdm.NetCDFArray.get_ncvar","cfdm.NetCDFArray.get_subspace","cfdm.NetCDFArray.get_varid","cfdm.NetCDFArray.open","cfdm.NetCDFArray.to_memory","cfdm.NumpyArray.__getitem__","cfdm.NumpyArray._docstring_method_exclusions","cfdm.NumpyArray._docstring_package_depth","cfdm.NumpyArray._docstring_special_substitutions","cfdm.NumpyArray._docstring_substitutions","cfdm.NumpyArray.copy","cfdm.NumpyArray.get_compression_type","cfdm.NumpyArray.get_subspace","cfdm.NumpyArray.to_memory","cfdm.RaggedContiguousArray.__array__","cfdm.RaggedContiguousArray.__deepcopy__","cfdm.RaggedContiguousArray.__getitem__","cfdm.RaggedContiguousArray.__repr__","cfdm.RaggedContiguousArray.__str__","cfdm.RaggedContiguousArray._docstring_method_exclusions","cfdm.RaggedContiguousArray._docstring_package_depth","cfdm.RaggedContiguousArray._docstring_special_substitutions","cfdm.RaggedContiguousArray._docstring_substitutions","cfdm.RaggedContiguousArray.copy","cfdm.RaggedContiguousArray.get_compressed_axes","cfdm.RaggedContiguousArray.get_compressed_dimension","cfdm.RaggedContiguousArray.get_compression_type","cfdm.RaggedContiguousArray.get_count","cfdm.RaggedContiguousArray.get_subspace","cfdm.RaggedContiguousArray.source","cfdm.RaggedContiguousArray.to_memory","cfdm.RaggedIndexedArray.__array__","cfdm.RaggedIndexedArray.__deepcopy__","cfdm.RaggedIndexedArray.__getitem__","cfdm.RaggedIndexedArray.__repr__","cfdm.RaggedIndexedArray.__str__","cfdm.RaggedIndexedArray._docstring_method_exclusions","cfdm.RaggedIndexedArray._docstring_package_depth","cfdm.RaggedIndexedArray._docstring_special_substitutions","cfdm.RaggedIndexedArray._docstring_substitutions","cfdm.RaggedIndexedArray.copy","cfdm.RaggedIndexedArray.get_compressed_axes","cfdm.RaggedIndexedArray.get_compressed_dimension","cfdm.RaggedIndexedArray.get_compression_type","cfdm.RaggedIndexedArray.get_index","cfdm.RaggedIndexedArray.get_subspace","cfdm.RaggedIndexedArray.source","cfdm.RaggedIndexedArray.to_memory","cfdm.RaggedIndexedContiguousArray.__array__","cfdm.RaggedIndexedContiguousArray.__deepcopy__","cfdm.RaggedIndexedContiguousArray.__getitem__","cfdm.RaggedIndexedContiguousArray.__repr__","cfdm.RaggedIndexedContiguousArray.__str__","cfdm.RaggedIndexedContiguousArray._docstring_method_exclusions","cfdm.RaggedIndexedContiguousArray._docstring_package_depth","cfdm.RaggedIndexedContiguousArray._docstring_special_substitutions","cfdm.RaggedIndexedContiguousArray._docstring_substitutions","cfdm.RaggedIndexedContiguousArray.copy","cfdm.RaggedIndexedContiguousArray.get_compressed_axes","cfdm.RaggedIndexedContiguousArray.get_compressed_dimension","cfdm.RaggedIndexedContiguousArray.get_compression_type","cfdm.RaggedIndexedContiguousArray.get_count","cfdm.RaggedIndexedContiguousArray.get_index","cfdm.RaggedIndexedContiguousArray.get_subspace","cfdm.RaggedIndexedContiguousArray.source","cfdm.RaggedIndexedContiguousArray.to_memory","cfdm.core.Array.__deepcopy__","cfdm.core.Array._docstring_method_exclusions","cfdm.core.Array._docstring_package_depth","cfdm.core.Array._docstring_special_substitutions","cfdm.core.Array._docstring_substitutions","cfdm.core.Array.copy","cfdm.core.AuxiliaryCoordinate.__deepcopy__","cfdm.core.AuxiliaryCoordinate._docstring_method_exclusions","cfdm.core.AuxiliaryCoordinate._docstring_package_depth","cfdm.core.AuxiliaryCoordinate._docstring_special_substitutions","cfdm.core.AuxiliaryCoordinate._docstring_substitutions","cfdm.core.AuxiliaryCoordinate.clear_properties","cfdm.core.AuxiliaryCoordinate.copy","cfdm.core.AuxiliaryCoordinate.del_bounds","cfdm.core.AuxiliaryCoordinate.del_climatology","cfdm.core.AuxiliaryCoordinate.del_data","cfdm.core.AuxiliaryCoordinate.del_geometry","cfdm.core.AuxiliaryCoordinate.del_interior_ring","cfdm.core.AuxiliaryCoordinate.del_property","cfdm.core.AuxiliaryCoordinate.get_bounds","cfdm.core.AuxiliaryCoordinate.get_climatology","cfdm.core.AuxiliaryCoordinate.get_data","cfdm.core.AuxiliaryCoordinate.get_geometry","cfdm.core.AuxiliaryCoordinate.get_interior_ring","cfdm.core.AuxiliaryCoordinate.get_property","cfdm.core.AuxiliaryCoordinate.has_bounds","cfdm.core.AuxiliaryCoordinate.has_data","cfdm.core.AuxiliaryCoordinate.has_geometry","cfdm.core.AuxiliaryCoordinate.has_interior_ring","cfdm.core.AuxiliaryCoordinate.has_property","cfdm.core.AuxiliaryCoordinate.is_climatology","cfdm.core.AuxiliaryCoordinate.properties","cfdm.core.AuxiliaryCoordinate.set_bounds","cfdm.core.AuxiliaryCoordinate.set_climatology","cfdm.core.AuxiliaryCoordinate.set_data","cfdm.core.AuxiliaryCoordinate.set_geometry","cfdm.core.AuxiliaryCoordinate.set_interior_ring","cfdm.core.AuxiliaryCoordinate.set_properties","cfdm.core.AuxiliaryCoordinate.set_property","cfdm.core.Bounds.__deepcopy__","cfdm.core.Bounds.clear_properties","cfdm.core.Bounds.copy","cfdm.core.Bounds.del_data","cfdm.core.Bounds.del_property","cfdm.core.Bounds.get_data","cfdm.core.Bounds.get_property","cfdm.core.Bounds.has_bounds","cfdm.core.Bounds.has_data","cfdm.core.Bounds.has_property","cfdm.core.Bounds.properties","cfdm.core.Bounds.set_data","cfdm.core.Bounds.set_properties","cfdm.core.Bounds.set_property","cfdm.core.CellMeasure.__deepcopy__","cfdm.core.CellMeasure._docstring_method_exclusions","cfdm.core.CellMeasure._docstring_package_depth","cfdm.core.CellMeasure._docstring_special_substitutions","cfdm.core.CellMeasure._docstring_substitutions","cfdm.core.CellMeasure.clear_properties","cfdm.core.CellMeasure.copy","cfdm.core.CellMeasure.del_data","cfdm.core.CellMeasure.del_measure","cfdm.core.CellMeasure.del_property","cfdm.core.CellMeasure.get_data","cfdm.core.CellMeasure.get_measure","cfdm.core.CellMeasure.get_property","cfdm.core.CellMeasure.has_bounds","cfdm.core.CellMeasure.has_data","cfdm.core.CellMeasure.has_measure","cfdm.core.CellMeasure.has_property","cfdm.core.CellMeasure.properties","cfdm.core.CellMeasure.set_data","cfdm.core.CellMeasure.set_measure","cfdm.core.CellMeasure.set_properties","cfdm.core.CellMeasure.set_property","cfdm.core.CellMethod.__deepcopy__","cfdm.core.CellMethod._docstring_method_exclusions","cfdm.core.CellMethod._docstring_package_depth","cfdm.core.CellMethod._docstring_special_substitutions","cfdm.core.CellMethod._docstring_substitutions","cfdm.core.CellMethod.copy","cfdm.core.CellMethod.del_axes","cfdm.core.CellMethod.del_method","cfdm.core.CellMethod.del_qualifier","cfdm.core.CellMethod.get_axes","cfdm.core.CellMethod.get_method","cfdm.core.CellMethod.get_qualifier","cfdm.core.CellMethod.has_axes","cfdm.core.CellMethod.has_method","cfdm.core.CellMethod.has_qualifier","cfdm.core.CellMethod.qualifiers","cfdm.core.CellMethod.set_axes","cfdm.core.CellMethod.set_method","cfdm.core.CellMethod.set_qualifier","cfdm.core.Constructs.__call__","cfdm.core.Constructs.__contains__","cfdm.core.Constructs.__copy__","cfdm.core.Constructs.__deepcopy__","cfdm.core.Constructs.__getitem__","cfdm.core.Constructs.__iter__","cfdm.core.Constructs.__len__","cfdm.core.Constructs._docstring_method_exclusions","cfdm.core.Constructs._docstring_package_depth","cfdm.core.Constructs._docstring_special_substitutions","cfdm.core.Constructs._docstring_substitutions","cfdm.core.Constructs.construct_type","cfdm.core.Constructs.construct_types","cfdm.core.Constructs.copy","cfdm.core.Constructs.data_axes","cfdm.core.Constructs.filter_by_type","cfdm.core.Constructs.get","cfdm.core.Constructs.get_data_axes","cfdm.core.Constructs.items","cfdm.core.Constructs.key","cfdm.core.Constructs.keys","cfdm.core.Constructs.new_identifier","cfdm.core.Constructs.ordered","cfdm.core.Constructs.replace","cfdm.core.Constructs.shallow_copy","cfdm.core.Constructs.todict","cfdm.core.Constructs.value","cfdm.core.Constructs.values","cfdm.core.Container.__deepcopy__","cfdm.core.Container._del_component","cfdm.core.Container._docstring_method_exclusions","cfdm.core.Container._docstring_package_depth","cfdm.core.Container._docstring_special_substitutions","cfdm.core.Container._docstring_substitutions","cfdm.core.Container._get_component","cfdm.core.Container._has_component","cfdm.core.Container._set_component","cfdm.core.Container.copy","cfdm.core.Coordinate.__deepcopy__","cfdm.core.Coordinate._docstring_method_exclusions","cfdm.core.Coordinate._docstring_package_depth","cfdm.core.Coordinate._docstring_special_substitutions","cfdm.core.Coordinate._docstring_substitutions","cfdm.core.Coordinate.clear_properties","cfdm.core.Coordinate.copy","cfdm.core.Coordinate.del_bounds","cfdm.core.Coordinate.del_climatology","cfdm.core.Coordinate.del_data","cfdm.core.Coordinate.del_geometry","cfdm.core.Coordinate.del_interior_ring","cfdm.core.Coordinate.del_property","cfdm.core.Coordinate.get_bounds","cfdm.core.Coordinate.get_climatology","cfdm.core.Coordinate.get_data","cfdm.core.Coordinate.get_geometry","cfdm.core.Coordinate.get_interior_ring","cfdm.core.Coordinate.get_property","cfdm.core.Coordinate.has_bounds","cfdm.core.Coordinate.has_data","cfdm.core.Coordinate.has_geometry","cfdm.core.Coordinate.has_interior_ring","cfdm.core.Coordinate.has_property","cfdm.core.Coordinate.is_climatology","cfdm.core.Coordinate.properties","cfdm.core.Coordinate.set_bounds","cfdm.core.Coordinate.set_climatology","cfdm.core.Coordinate.set_data","cfdm.core.Coordinate.set_geometry","cfdm.core.Coordinate.set_interior_ring","cfdm.core.Coordinate.set_properties","cfdm.core.Coordinate.set_property","cfdm.core.CoordinateConversion.__deepcopy__","cfdm.core.CoordinateConversion._docstring_method_exclusions","cfdm.core.CoordinateConversion._docstring_package_depth","cfdm.core.CoordinateConversion._docstring_special_substitutions","cfdm.core.CoordinateConversion._docstring_substitutions","cfdm.core.CoordinateConversion.clear_domain_ancillaries","cfdm.core.CoordinateConversion.clear_parameters","cfdm.core.CoordinateConversion.copy","cfdm.core.CoordinateConversion.del_domain_ancillary","cfdm.core.CoordinateConversion.del_parameter","cfdm.core.CoordinateConversion.domain_ancillaries","cfdm.core.CoordinateConversion.get_domain_ancillary","cfdm.core.CoordinateConversion.get_parameter","cfdm.core.CoordinateConversion.has_domain_ancillary","cfdm.core.CoordinateConversion.has_parameter","cfdm.core.CoordinateConversion.parameters","cfdm.core.CoordinateConversion.set_domain_ancillaries","cfdm.core.CoordinateConversion.set_domain_ancillary","cfdm.core.CoordinateConversion.set_parameter","cfdm.core.CoordinateConversion.set_parameters","cfdm.core.CoordinateReference.__deepcopy__","cfdm.core.CoordinateReference._docstring_method_exclusions","cfdm.core.CoordinateReference._docstring_package_depth","cfdm.core.CoordinateReference._docstring_special_substitutions","cfdm.core.CoordinateReference._docstring_substitutions","cfdm.core.CoordinateReference.clear_coordinates","cfdm.core.CoordinateReference.coordinates","cfdm.core.CoordinateReference.copy","cfdm.core.CoordinateReference.del_coordinate","cfdm.core.CoordinateReference.del_coordinate_conversion","cfdm.core.CoordinateReference.del_datum","cfdm.core.CoordinateReference.get_coordinate_conversion","cfdm.core.CoordinateReference.get_datum","cfdm.core.CoordinateReference.has_coordinate","cfdm.core.CoordinateReference.set_coordinate","cfdm.core.CoordinateReference.set_coordinate_conversion","cfdm.core.CoordinateReference.set_coordinates","cfdm.core.CoordinateReference.set_datum","cfdm.core.Data.__deepcopy__","cfdm.core.Data.__repr__","cfdm.core.Data.__str__","cfdm.core.Data._docstring_method_exclusions","cfdm.core.Data._docstring_package_depth","cfdm.core.Data._docstring_special_substitutions","cfdm.core.Data._docstring_substitutions","cfdm.core.Data.copy","cfdm.core.Data.del_calendar","cfdm.core.Data.del_fill_value","cfdm.core.Data.del_units","cfdm.core.Data.get_calendar","cfdm.core.Data.get_fill_value","cfdm.core.Data.get_units","cfdm.core.Data.has_calendar","cfdm.core.Data.has_fill_value","cfdm.core.Data.has_units","cfdm.core.Data.set_calendar","cfdm.core.Data.set_fill_value","cfdm.core.Data.set_units","cfdm.core.Data.source","cfdm.core.Datum.__deepcopy__","cfdm.core.Datum._docstring_method_exclusions","cfdm.core.Datum._docstring_package_depth","cfdm.core.Datum._docstring_special_substitutions","cfdm.core.Datum._docstring_substitutions","cfdm.core.Datum.clear_parameters","cfdm.core.Datum.copy","cfdm.core.Datum.del_parameter","cfdm.core.Datum.get_parameter","cfdm.core.Datum.has_parameter","cfdm.core.Datum.parameters","cfdm.core.Datum.set_parameter","cfdm.core.Datum.set_parameters","cfdm.core.DimensionCoordinate.__deepcopy__","cfdm.core.DimensionCoordinate._docstring_method_exclusions","cfdm.core.DimensionCoordinate._docstring_package_depth","cfdm.core.DimensionCoordinate._docstring_special_substitutions","cfdm.core.DimensionCoordinate._docstring_substitutions","cfdm.core.DimensionCoordinate.clear_properties","cfdm.core.DimensionCoordinate.copy","cfdm.core.DimensionCoordinate.del_bounds","cfdm.core.DimensionCoordinate.del_climatology","cfdm.core.DimensionCoordinate.del_data","cfdm.core.DimensionCoordinate.del_geometry","cfdm.core.DimensionCoordinate.del_interior_ring","cfdm.core.DimensionCoordinate.del_property","cfdm.core.DimensionCoordinate.get_bounds","cfdm.core.DimensionCoordinate.get_climatology","cfdm.core.DimensionCoordinate.get_data","cfdm.core.DimensionCoordinate.get_geometry","cfdm.core.DimensionCoordinate.get_interior_ring","cfdm.core.DimensionCoordinate.get_property","cfdm.core.DimensionCoordinate.has_bounds","cfdm.core.DimensionCoordinate.has_data","cfdm.core.DimensionCoordinate.has_geometry","cfdm.core.DimensionCoordinate.has_interior_ring","cfdm.core.DimensionCoordinate.has_property","cfdm.core.DimensionCoordinate.is_climatology","cfdm.core.DimensionCoordinate.properties","cfdm.core.DimensionCoordinate.set_bounds","cfdm.core.DimensionCoordinate.set_climatology","cfdm.core.DimensionCoordinate.set_data","cfdm.core.DimensionCoordinate.set_geometry","cfdm.core.DimensionCoordinate.set_interior_ring","cfdm.core.DimensionCoordinate.set_properties","cfdm.core.DimensionCoordinate.set_property","cfdm.core.DocstringRewriteMeta._docstring_method_exclusions","cfdm.core.DocstringRewriteMeta._docstring_package_depth","cfdm.core.DocstringRewriteMeta._docstring_special_substitutions","cfdm.core.DocstringRewriteMeta._docstring_substitutions","cfdm.core.DocstringRewriteMeta.mro","cfdm.core.Domain.__deepcopy__","cfdm.core.Domain._docstring_method_exclusions","cfdm.core.Domain._docstring_package_depth","cfdm.core.Domain._docstring_special_substitutions","cfdm.core.Domain._docstring_substitutions","cfdm.core.Domain.clear_properties","cfdm.core.Domain.copy","cfdm.core.Domain.del_construct","cfdm.core.Domain.del_data_axes","cfdm.core.Domain.del_property","cfdm.core.Domain.fromconstructs","cfdm.core.Domain.get_construct","cfdm.core.Domain.get_data_axes","cfdm.core.Domain.get_property","cfdm.core.Domain.has_bounds","cfdm.core.Domain.has_construct","cfdm.core.Domain.has_data","cfdm.core.Domain.has_data_axes","cfdm.core.Domain.has_property","cfdm.core.Domain.properties","cfdm.core.Domain.set_construct","cfdm.core.Domain.set_data_axes","cfdm.core.Domain.set_properties","cfdm.core.Domain.set_property","cfdm.core.DomainAncillary.__deepcopy__","cfdm.core.DomainAncillary._docstring_method_exclusions","cfdm.core.DomainAncillary._docstring_package_depth","cfdm.core.DomainAncillary._docstring_special_substitutions","cfdm.core.DomainAncillary._docstring_substitutions","cfdm.core.DomainAncillary.clear_properties","cfdm.core.DomainAncillary.copy","cfdm.core.DomainAncillary.del_bounds","cfdm.core.DomainAncillary.del_data","cfdm.core.DomainAncillary.del_geometry","cfdm.core.DomainAncillary.del_interior_ring","cfdm.core.DomainAncillary.del_property","cfdm.core.DomainAncillary.get_bounds","cfdm.core.DomainAncillary.get_data","cfdm.core.DomainAncillary.get_geometry","cfdm.core.DomainAncillary.get_interior_ring","cfdm.core.DomainAncillary.get_property","cfdm.core.DomainAncillary.has_bounds","cfdm.core.DomainAncillary.has_data","cfdm.core.DomainAncillary.has_geometry","cfdm.core.DomainAncillary.has_interior_ring","cfdm.core.DomainAncillary.has_property","cfdm.core.DomainAncillary.properties","cfdm.core.DomainAncillary.set_bounds","cfdm.core.DomainAncillary.set_data","cfdm.core.DomainAncillary.set_geometry","cfdm.core.DomainAncillary.set_interior_ring","cfdm.core.DomainAncillary.set_properties","cfdm.core.DomainAncillary.set_property","cfdm.core.DomainAxis.__deepcopy__","cfdm.core.DomainAxis._docstring_method_exclusions","cfdm.core.DomainAxis._docstring_package_depth","cfdm.core.DomainAxis._docstring_special_substitutions","cfdm.core.DomainAxis._docstring_substitutions","cfdm.core.DomainAxis.copy","cfdm.core.DomainAxis.del_size","cfdm.core.DomainAxis.get_size","cfdm.core.DomainAxis.has_size","cfdm.core.DomainAxis.set_size","cfdm.core.Field.__deepcopy__","cfdm.core.Field._docstring_method_exclusions","cfdm.core.Field._docstring_package_depth","cfdm.core.Field._docstring_special_substitutions","cfdm.core.Field._docstring_substitutions","cfdm.core.Field.clear_properties","cfdm.core.Field.copy","cfdm.core.Field.del_construct","cfdm.core.Field.del_data","cfdm.core.Field.del_data_axes","cfdm.core.Field.del_property","cfdm.core.Field.get_construct","cfdm.core.Field.get_data","cfdm.core.Field.get_data_axes","cfdm.core.Field.get_domain","cfdm.core.Field.get_property","cfdm.core.Field.has_bounds","cfdm.core.Field.has_construct","cfdm.core.Field.has_data","cfdm.core.Field.has_data_axes","cfdm.core.Field.has_property","cfdm.core.Field.properties","cfdm.core.Field.set_construct","cfdm.core.Field.set_data","cfdm.core.Field.set_data_axes","cfdm.core.Field.set_properties","cfdm.core.Field.set_property","cfdm.core.FieldAncillary.__deepcopy__","cfdm.core.FieldAncillary._docstring_method_exclusions","cfdm.core.FieldAncillary._docstring_package_depth","cfdm.core.FieldAncillary._docstring_special_substitutions","cfdm.core.FieldAncillary._docstring_substitutions","cfdm.core.FieldAncillary.clear_properties","cfdm.core.FieldAncillary.copy","cfdm.core.FieldAncillary.del_data","cfdm.core.FieldAncillary.del_property","cfdm.core.FieldAncillary.get_data","cfdm.core.FieldAncillary.get_property","cfdm.core.FieldAncillary.has_bounds","cfdm.core.FieldAncillary.has_data","cfdm.core.FieldAncillary.has_property","cfdm.core.FieldAncillary.properties","cfdm.core.FieldAncillary.set_data","cfdm.core.FieldAncillary.set_properties","cfdm.core.FieldAncillary.set_property","cfdm.core.InteriorRing.__deepcopy__","cfdm.core.InteriorRing._docstring_method_exclusions","cfdm.core.InteriorRing._docstring_package_depth","cfdm.core.InteriorRing._docstring_special_substitutions","cfdm.core.InteriorRing._docstring_substitutions","cfdm.core.InteriorRing.clear_properties","cfdm.core.InteriorRing.copy","cfdm.core.InteriorRing.del_data","cfdm.core.InteriorRing.del_property","cfdm.core.InteriorRing.get_data","cfdm.core.InteriorRing.get_property","cfdm.core.InteriorRing.has_bounds","cfdm.core.InteriorRing.has_data","cfdm.core.InteriorRing.has_property","cfdm.core.InteriorRing.properties","cfdm.core.InteriorRing.set_data","cfdm.core.InteriorRing.set_properties","cfdm.core.InteriorRing.set_property","cfdm.core.NumpyArray._docstring_method_exclusions","cfdm.core.NumpyArray._docstring_package_depth","cfdm.core.NumpyArray._docstring_special_substitutions","cfdm.core.NumpyArray._docstring_substitutions","cfdm.core.NumpyArray.copy","cfdm.core.Parameters.__deepcopy__","cfdm.core.Parameters._docstring_method_exclusions","cfdm.core.Parameters._docstring_package_depth","cfdm.core.Parameters._docstring_special_substitutions","cfdm.core.Parameters._docstring_substitutions","cfdm.core.Parameters.clear_parameters","cfdm.core.Parameters.copy","cfdm.core.Parameters.del_parameter","cfdm.core.Parameters.get_parameter","cfdm.core.Parameters.has_parameter","cfdm.core.Parameters.parameters","cfdm.core.Parameters.set_parameter","cfdm.core.Parameters.set_parameters","cfdm.core.ParametersDomainAncillaries.__deepcopy__","cfdm.core.ParametersDomainAncillaries.clear_domain_ancillaries","cfdm.core.ParametersDomainAncillaries.clear_parameters","cfdm.core.ParametersDomainAncillaries.copy","cfdm.core.ParametersDomainAncillaries.del_domain_ancillary","cfdm.core.ParametersDomainAncillaries.del_parameter","cfdm.core.ParametersDomainAncillaries.domain_ancillaries","cfdm.core.ParametersDomainAncillaries.get_domain_ancillary","cfdm.core.ParametersDomainAncillaries.get_parameter","cfdm.core.ParametersDomainAncillaries.has_domain_ancillary","cfdm.core.ParametersDomainAncillaries.has_parameter","cfdm.core.ParametersDomainAncillaries.parameters","cfdm.core.ParametersDomainAncillaries.set_domain_ancillaries","cfdm.core.ParametersDomainAncillaries.set_domain_ancillary","cfdm.core.ParametersDomainAncillaries.set_parameter","cfdm.core.ParametersDomainAncillaries.set_parameters","cfdm.core.Properties.__deepcopy__","cfdm.core.Properties._docstring_method_exclusions","cfdm.core.Properties._docstring_package_depth","cfdm.core.Properties._docstring_special_substitutions","cfdm.core.Properties._docstring_substitutions","cfdm.core.Properties.clear_properties","cfdm.core.Properties.copy","cfdm.core.Properties.del_property","cfdm.core.Properties.get_property","cfdm.core.Properties.has_bounds","cfdm.core.Properties.has_data","cfdm.core.Properties.has_property","cfdm.core.Properties.properties","cfdm.core.Properties.set_properties","cfdm.core.Properties.set_property","cfdm.core.PropertiesData.__deepcopy__","cfdm.core.PropertiesData._docstring_method_exclusions","cfdm.core.PropertiesData._docstring_package_depth","cfdm.core.PropertiesData._docstring_special_substitutions","cfdm.core.PropertiesData._docstring_substitutions","cfdm.core.PropertiesData.clear_properties","cfdm.core.PropertiesData.copy","cfdm.core.PropertiesData.del_data","cfdm.core.PropertiesData.del_property","cfdm.core.PropertiesData.get_data","cfdm.core.PropertiesData.get_property","cfdm.core.PropertiesData.has_bounds","cfdm.core.PropertiesData.has_data","cfdm.core.PropertiesData.has_property","cfdm.core.PropertiesData.properties","cfdm.core.PropertiesData.set_data","cfdm.core.PropertiesData.set_properties","cfdm.core.PropertiesData.set_property","cfdm.core.PropertiesDataBounds.__deepcopy__","cfdm.core.PropertiesDataBounds._docstring_method_exclusions","cfdm.core.PropertiesDataBounds._docstring_package_depth","cfdm.core.PropertiesDataBounds._docstring_special_substitutions","cfdm.core.PropertiesDataBounds._docstring_substitutions","cfdm.core.PropertiesDataBounds.clear_properties","cfdm.core.PropertiesDataBounds.copy","cfdm.core.PropertiesDataBounds.del_bounds","cfdm.core.PropertiesDataBounds.del_data","cfdm.core.PropertiesDataBounds.del_geometry","cfdm.core.PropertiesDataBounds.del_interior_ring","cfdm.core.PropertiesDataBounds.del_property","cfdm.core.PropertiesDataBounds.get_bounds","cfdm.core.PropertiesDataBounds.get_data","cfdm.core.PropertiesDataBounds.get_geometry","cfdm.core.PropertiesDataBounds.get_interior_ring","cfdm.core.PropertiesDataBounds.get_property","cfdm.core.PropertiesDataBounds.has_bounds","cfdm.core.PropertiesDataBounds.has_data","cfdm.core.PropertiesDataBounds.has_geometry","cfdm.core.PropertiesDataBounds.has_interior_ring","cfdm.core.PropertiesDataBounds.has_property","cfdm.core.PropertiesDataBounds.properties","cfdm.core.PropertiesDataBounds.set_bounds","cfdm.core.PropertiesDataBounds.set_data","cfdm.core.PropertiesDataBounds.set_geometry","cfdm.core.PropertiesDataBounds.set_interior_ring","cfdm.core.PropertiesDataBounds.set_properties","cfdm.core.PropertiesDataBounds.set_property","cfdm.core.abstract.Container.__deepcopy__","cfdm.core.abstract.Container._del_component","cfdm.core.abstract.Container._get_component","cfdm.core.abstract.Container._has_component","cfdm.core.abstract.Container._set_component","cfdm.core.abstract.Container.copy","cfdm.core.abstract.Coordinate.__deepcopy__","cfdm.core.abstract.Coordinate.clear_properties","cfdm.core.abstract.Coordinate.copy","cfdm.core.abstract.Coordinate.del_bounds","cfdm.core.abstract.Coordinate.del_data","cfdm.core.abstract.Coordinate.del_property","cfdm.core.abstract.Coordinate.get_bounds","cfdm.core.abstract.Coordinate.get_data","cfdm.core.abstract.Coordinate.get_property","cfdm.core.abstract.Coordinate.has_bounds","cfdm.core.abstract.Coordinate.has_data","cfdm.core.abstract.Coordinate.has_property","cfdm.core.abstract.Coordinate.properties","cfdm.core.abstract.Coordinate.set_bounds","cfdm.core.abstract.Coordinate.set_data","cfdm.core.abstract.Coordinate.set_properties","cfdm.core.abstract.Coordinate.set_property","cfdm.core.abstract.Parameters.__deepcopy__","cfdm.core.abstract.Parameters.clear_parameters","cfdm.core.abstract.Parameters.copy","cfdm.core.abstract.Parameters.del_parameter","cfdm.core.abstract.Parameters.get_parameter","cfdm.core.abstract.Parameters.parameters","cfdm.core.abstract.Parameters.set_parameter","cfdm.core.abstract.Parameters.set_parameters","cfdm.core.abstract.ParametersDomainAncillaries.__deepcopy__","cfdm.core.abstract.ParametersDomainAncillaries.clear_domain_ancillaries","cfdm.core.abstract.ParametersDomainAncillaries.clear_parameters","cfdm.core.abstract.ParametersDomainAncillaries.copy","cfdm.core.abstract.ParametersDomainAncillaries.del_domain_ancillary","cfdm.core.abstract.ParametersDomainAncillaries.del_parameter","cfdm.core.abstract.ParametersDomainAncillaries.domain_ancillaries","cfdm.core.abstract.ParametersDomainAncillaries.get_domain_ancillary","cfdm.core.abstract.ParametersDomainAncillaries.get_parameter","cfdm.core.abstract.ParametersDomainAncillaries.parameters","cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillaries","cfdm.core.abstract.ParametersDomainAncillaries.set_domain_ancillary","cfdm.core.abstract.ParametersDomainAncillaries.set_parameter","cfdm.core.abstract.ParametersDomainAncillaries.set_parameters","cfdm.core.abstract.Properties.__deepcopy__","cfdm.core.abstract.Properties.clear_properties","cfdm.core.abstract.Properties.copy","cfdm.core.abstract.Properties.del_property","cfdm.core.abstract.Properties.get_property","cfdm.core.abstract.Properties.has_property","cfdm.core.abstract.Properties.properties","cfdm.core.abstract.Properties.set_properties","cfdm.core.abstract.Properties.set_property","cfdm.core.abstract.PropertiesData.__deepcopy__","cfdm.core.abstract.PropertiesData.clear_properties","cfdm.core.abstract.PropertiesData.copy","cfdm.core.abstract.PropertiesData.del_data","cfdm.core.abstract.PropertiesData.del_property","cfdm.core.abstract.PropertiesData.get_data","cfdm.core.abstract.PropertiesData.get_property","cfdm.core.abstract.PropertiesData.has_data","cfdm.core.abstract.PropertiesData.has_property","cfdm.core.abstract.PropertiesData.properties","cfdm.core.abstract.PropertiesData.set_data","cfdm.core.abstract.PropertiesData.set_properties","cfdm.core.abstract.PropertiesData.set_property","cfdm.core.abstract.PropertiesDataBounds.__deepcopy__","cfdm.core.abstract.PropertiesDataBounds.clear_properties","cfdm.core.abstract.PropertiesDataBounds.copy","cfdm.core.abstract.PropertiesDataBounds.del_bounds","cfdm.core.abstract.PropertiesDataBounds.del_data","cfdm.core.abstract.PropertiesDataBounds.del_property","cfdm.core.abstract.PropertiesDataBounds.get_bounds","cfdm.core.abstract.PropertiesDataBounds.get_data","cfdm.core.abstract.PropertiesDataBounds.get_property","cfdm.core.abstract.PropertiesDataBounds.has_bounds","cfdm.core.abstract.PropertiesDataBounds.has_data","cfdm.core.abstract.PropertiesDataBounds.has_property","cfdm.core.abstract.PropertiesDataBounds.properties","cfdm.core.abstract.PropertiesDataBounds.set_bounds","cfdm.core.abstract.PropertiesDataBounds.set_data","cfdm.core.abstract.PropertiesDataBounds.set_properties","cfdm.core.abstract.PropertiesDataBounds.set_property","Performance","Philosophy","Releases","Sample datasets","Support","Tutorial"],titleterms:{"abstract":[201,202,203,204,262,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929],"class":[206,262],"function":[213,219,286,287,289,1931,1935],"import":1935,Adding:219,Ones:219,The:265,__array__:[290,484,679,1121,1297,1314,1331],__bool__:[569,736],__call__:[520,1443],__contains__:[521,1444],__copy__:[522,1445],__deepcopy__:[291,302,365,412,457,485,514,523,570,594,626,680,737,761,824,905,964,989,1082,1122,1134,1187,1233,1298,1315,1332,1349,1355,1388,1402,1424,1446,1471,1481,1514,1534,1552,1573,1586,1624,1648,1677,1687,1714,1732,1755,1768,1784,1799,1817,1846,1852,1869,1877,1891,1900,1913],__enter__:[500,515],__exit__:[501,516],__getitem__:[292,303,366,413,486,524,627,681,762,906,990,1083,1123,1135,1188,1234,1272,1288,1299,1316,1333,1447],__int__:682,__iter__:[525,683,1448],__len__:[526,1449],__nonzero__:[571,738],__repr__:[293,304,367,414,458,487,502,517,527,572,595,628,684,739,763,825,907,965,991,1084,1124,1136,1189,1235,1300,1317,1334,1553],__setitem__:685,__str__:[294,305,368,415,459,488,518,528,573,596,629,686,740,764,826,908,966,992,1085,1125,1137,1190,1236,1301,1318,1335,1554],_custom:265,_del_compon:[1472,1847],_docstring_method_exclus:[295,306,369,416,460,489,529,574,597,630,687,741,765,827,909,967,993,1086,1138,1191,1237,1273,1289,1302,1319,1336,1350,1356,1403,1425,1450,1473,1482,1515,1535,1555,1574,1587,1619,1625,1649,1678,1688,1715,1733,1750,1756,1785,1800,1818],_docstring_package_depth:[296,307,370,417,461,490,530,575,598,631,688,742,766,828,910,968,994,1087,1139,1192,1238,1274,1290,1303,1320,1337,1351,1357,1404,1426,1451,1474,1483,1516,1536,1556,1575,1588,1620,1626,1650,1679,1689,1716,1734,1751,1757,1786,1801,1819],_docstring_special_substitut:[297,308,371,418,462,491,531,576,599,632,689,743,767,829,911,969,995,1088,1140,1193,1239,1275,1291,1304,1321,1338,1352,1358,1405,1427,1452,1475,1484,1517,1537,1557,1576,1589,1621,1627,1651,1680,1690,1717,1735,1752,1758,1787,1802,1820],_docstring_substitut:[298,309,372,419,463,492,532,577,600,633,690,744,768,830,912,970,996,1089,1141,1194,1240,1276,1292,1305,1322,1339,1353,1359,1406,1428,1453,1476,1485,1518,1538,1558,1577,1590,1622,1628,1652,1681,1691,1718,1736,1753,1759,1788,1803,1821],_func:33,_get_compon:[1477,1848],_has_compon:[1478,1849],_set_compon:[1479,1850],abspath:270,access:[215,241,1935],ancillari:[216,244,258,1935],ani:691,api:[1,1931],apply_mask:[310,373,420,634,692,769,831,913,997,1090,1142,1195,1241],arrai:[2,3,4,5,6,27,43,101,122,127,132,138,144,150,151,152,153,154,169,192,207,236,290,291,292,293,294,295,296,297,298,299,300,301,1349,1350,1351,1352,1353,1354,1935],assign:1935,atol:[266,271],attribut:1935,auxiliary_coordin:[60,78,832,998],auxiliarycoordin:[7,8,9,10,11,12,13,14,155,156,157,158,208,237,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387],axes:[215,241,1935],base:262,bound:[7,15,16,17,18,19,52,69,155,159,163,174,180,198,201,203,208,209,221,223,237,238,243,248,251,261,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1935],bug:264,cell:1935,cell_measur:[61,79,833,999],cell_method:[80,1000],cellmeasur:[20,21,22,23,24,25,160,161,210,239,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423],cellmethod:[26,162,211,240,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442],cfdm:[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929],cfdump:[288,1935],chang:[0,219],citat:[287,289],clear:503,clear_coordin:[601,1539],clear_domain_ancillari:[578,1519,1769,1878],clear_filters_appli:533,clear_paramet:[579,745,1520,1578,1760,1770,1870,1879],clear_properti:[311,374,421,635,770,834,914,1001,1091,1143,1196,1242,1360,1389,1407,1486,1591,1629,1653,1692,1719,1737,1789,1804,1822,1853,1892,1901,1914],climatolog:[208,221,237,243,248],climatological_time_ax:[835,1002],close:1277,code:288,command:1935,comparison:219,complet:265,complianc:[222,225,1935],compon:[206,222,225,262],compress:[206,207,212,219,1003,1935],compressed_arrai:[28,44,102,133,139,145],compressedarrai:[27,28,29,30,31,32,212,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499],configur:[213,272,500,501,502,503,504,505,506,507,508,509,510,511,512,513],constant:[33,34,214,263,286,514,515,516,517,518,519],construct:[63,82,179,186,206,215,222,225,241,250,253,262,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,836,1004,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1935],construct_item:[837,1005],construct_kei:[838,1006],construct_typ:[8,20,26,35,53,62,70,77,81,95,156,160,162,166,175,178,181,184,185,189,534,535,1454,1455],contain:[242,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1846,1847,1848,1849,1850,1851],content:287,contribut:[264,1934],contributor:264,control:1935,convent:[219,1931,1935],convers:[217,245,1935],convert:1007,coordin:[65,84,163,164,165,201,202,206,217,243,245,262,602,840,1009,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1540,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1935],coordinate_convers:36,coordinate_refer:[64,83,839,1008],coordinateconvers:[216,244,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533],coordinaterefer:[35,36,37,166,217,245,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551],copi:[213,214,299,312,375,422,464,493,504,519,536,580,603,636,693,746,771,841,915,971,1010,1092,1126,1144,1197,1243,1278,1293,1306,1323,1340,1354,1361,1390,1408,1429,1456,1480,1487,1521,1541,1559,1579,1592,1630,1654,1682,1693,1720,1738,1754,1761,1771,1790,1805,1823,1851,1854,1871,1880,1893,1902,1915,1935],core:[150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929],count:[38,39,40,41,42,218,219,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678],creat:1935,creation:[219,246,1935],creation_command:[313,376,423,465,604,637,694,772,842,916,972,1011,1093,1145,1198,1244],data:[9,15,21,38,43,44,45,46,47,48,49,50,51,54,71,85,96,107,112,117,157,159,161,164,169,170,171,172,173,176,182,187,190,191,197,199,202,204,205,206,208,209,210,215,218,219,221,223,225,226,228,229,230,237,238,239,241,243,246,248,251,253,254,255,260,261,262,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1935],data_ax:[537,1457],dataset:[222,225,1933,1935],dataset_compli:[843,1012],date:[219,246,1935],datetime_arrai:45,datetime_as_str:46,datum:[37,217,220,245,247,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585],del_ax:[466,1430],del_bound:[314,773,917,1362,1488,1593,1655,1824,1855,1916],del_calendar:[695,1560],del_climatolog:[315,774,1363,1489,1594],del_construct:[844,1013,1631,1694],del_coordin:[605,1542],del_coordinate_convers:[606,1543],del_data:[316,377,424,638,775,918,1014,1094,1146,1199,1245,1364,1391,1409,1490,1595,1656,1695,1721,1739,1806,1825,1856,1903,1917],del_data_ax:[845,1015,1632,1696],del_datum:[607,1544],del_domain_ancillari:[581,1522,1772,1881],del_fill_valu:[696,1561],del_geometri:[317,776,919,1365,1491,1596,1657,1826],del_interior_r:[318,777,920,1366,1492,1597,1658,1827],del_measur:[425,1410],del_method:[467,1431],del_node_count:[319,778,921],del_paramet:[582,747,1523,1580,1762,1773,1872,1882],del_part_node_count:[320,779,922],del_properti:[321,378,426,639,780,846,923,1016,1095,1147,1200,1246,1367,1392,1411,1493,1598,1633,1659,1697,1722,1740,1791,1807,1828,1857,1894,1904,1918],del_qualifi:[468,1432],del_siz:[973,1683],del_unit:[697,1562],depend:288,detail:1935,dictionari:[213,215,241,265],differ:219,dimens:[218,219,228,1935],dimension_coordin:[66,86,847,1017],dimensioncoordin:[52,53,54,55,56,57,58,59,174,175,176,177,221,248,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618],discret:1935,disk:1935,docstr:[207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261],docstringrewritemeta:[249,1619,1620,1621,1622,1623],document:265,domain:[60,61,62,63,64,65,66,67,68,87,178,179,188,206,216,222,225,244,250,253,258,262,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1935],domain_ancillari:[67,88,583,848,1018,1524,1774,1883],domain_ax:[68,89,538,849,1019],domain_axis_ident:539,domain_axis_kei:[850,1020],domainancillari:[69,70,71,72,73,74,75,76,180,181,182,183,223,251,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676],domainaxi:[77,184,224,252,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686],dtype:[3,10,16,22,29,39,47,55,72,90,97,103,108,113,118,123,128,134,140,146,151,170,193],dump:[322,379,427,469,608,640,781,851,924,1021,1096,1148,1201,1247],element:219,empti:698,environ:273,equal:[323,380,428,470,540,584,609,641,699,748,782,852,925,974,1022,1097,1149,1202,1248,1935],exampl:265,example_domain:274,example_field:[275,276],exist:[219,246],extens:265,extern:1935,featur:264,field:[78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,185,186,187,188,206,225,253,262,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1935],field_ancillari:[91,1023],fieldancillari:[95,96,97,98,99,100,189,190,226,254,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731],file:[231,1935],fill:700,filter:[215,241,541],filter_by_axi:542,filter_by_data:543,filter_by_ident:544,filter_by_kei:545,filter_by_measur:546,filter_by_method:547,filter_by_nax:548,filter_by_ncdim:549,filter_by_ncvar:550,filter_by_properti:551,filter_by_s:552,filter_by_typ:[553,1458],filters_appli:554,find:1932,first_el:701,flatten:702,from:[219,246,1935],fromconstruct:[853,1634],fromkei:505,full:1935,gather:1935,gatheredarrai:[101,102,103,104,105,106,227,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133],geometri:[208,221,222,223,225,237,243,248,251,1935],get:[506,555,1459],get_ax:[471,1433],get_bound:[324,783,926,1368,1494,1599,1660,1829,1858,1919],get_bounds_data:[325,784,927],get_calendar:[703,1563],get_climatolog:[326,785,1369,1495,1600],get_compressed_ax:[494,704,1127,1307,1324,1341],get_compressed_dimens:[495,705,1128,1308,1325,1342],get_compression_typ:[300,496,706,1129,1279,1294,1309,1326,1343],get_construct:[854,1024,1635,1698],get_coordinate_convers:[610,1545],get_count:[707,1310,1344],get_data:[327,381,429,642,786,928,1025,1098,1150,1203,1249,1370,1393,1412,1496,1601,1661,1699,1723,1741,1808,1830,1859,1905,1920],get_data_ax:[556,855,1026,1460,1636,1700],get_datum:[611,1546],get_domain:[1027,1701],get_domain_ancillari:[585,1525,1775,1884],get_filenam:[328,382,430,643,708,787,856,929,1028,1099,1151,1204,1250,1280],get_fill_valu:[709,1564],get_geometri:[329,788,930,1371,1497,1602,1662,1831],get_group:1281,get_index:[710,1327,1345],get_interior_r:[330,789,931,1372,1498,1603,1663,1832],get_list:[711,1130],get_mask:1282,get_measur:[431,1413],get_method:[472,1434],get_ncvar:1283,get_node_count:[331,790,932],get_paramet:[586,749,1526,1581,1763,1776,1873,1885],get_part_node_count:[332,791,933],get_properti:[333,383,432,644,792,857,934,1029,1100,1152,1205,1251,1373,1394,1414,1499,1604,1637,1664,1702,1724,1742,1792,1809,1833,1860,1895,1906,1921],get_qualifi:[473,1435],get_siz:[975,1684],get_subspac:[301,497,1131,1284,1295,1311,1328,1346],get_unit:[712,1565],get_varid:1285,global:1935,group:[208,209,210,217,218,220,221,222,223,224,225,226,228,229,230,1935],has_ax:[474,1436],has_bound:[334,384,433,645,793,858,935,1030,1101,1153,1206,1252,1374,1395,1415,1500,1605,1638,1665,1703,1725,1743,1793,1810,1834,1861,1922],has_calendar:[713,1566],has_construct:[859,1031,1639,1704],has_coordin:[612,1547],has_data:[335,385,434,646,794,860,936,1032,1102,1154,1207,1253,1375,1396,1416,1501,1606,1640,1666,1705,1726,1744,1794,1811,1835,1862,1907,1923],has_data_ax:[861,1033,1641,1706],has_domain_ancillari:[587,1527,1777],has_fill_valu:[714,1567],has_geometri:[336,795,862,937,1034,1376,1502,1607,1667,1836],has_interior_r:[337,796,938,1377,1503,1608,1668,1837],has_measur:[435,1417],has_method:[475,1437],has_node_count:[338,797,939],has_paramet:[588,750,1528,1582,1764,1778],has_part_node_count:[339,798,940],has_properti:[340,386,436,647,799,863,941,1035,1103,1155,1208,1254,1378,1397,1418,1504,1609,1642,1669,1707,1727,1745,1795,1812,1838,1863,1896,1908,1924],has_qualifi:[476,1438],has_siz:[976,1685],has_unit:[715,1568],hierarch:1935,ident:[341,342,387,388,437,438,477,478,613,614,648,649,800,801,864,865,942,943,977,978,1036,1037,1104,1105,1156,1157,1209,1210,1255,1256],identifi:[215,241],implement:[277,1931],improv:264,index:[107,108,109,110,111,219,228,287,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1935],inherited_properti:389,initio:1935,insert_dimens:[343,390,439,650,716,802,944,1038,1106,1158,1211,1257],inspect:[207,208,209,210,211,212,214,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,239,240,245,246,248,249,250,251,252,253,254,256,1935],instal:288,interfac:1935,interior:[112,113,114,115,116,191,229,255,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749],interior_r:[11,56,73,158,165,177,183,200],introduct:[287,289],inverse_filt:557,is_climatolog:[344,803,1379,1505,1610],is_log_level_debug:278,is_log_level_detail:279,is_log_level_info:280,item:[507,558,1461],kei:[508,559,560,1462,1463],last_el:717,level:1931,like:219,list:[117,118,119,120,121,230,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271],log:[0,1935],log_level:[268,281],logic:219,make:219,manipul:[219,1935],mask:[48,219,246,1935],mathemat:219,max:718,maximum:719,medium:1935,memori:[1930,1935],messag:1935,metadata:[206,222,225,250,253,262,1935],method:[215,241,1935],min:720,minim:1935,minimum:721,miscellan:[206,207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261,262,286],model:205,modif:[243,261,1935],mro:1623,nc_clear_component_dimension_group:[866,1039],nc_clear_component_sample_dimension_group:[867,1040],nc_clear_component_variable_group:[868,1041],nc_clear_dimension_group:[391,651,979,1159,1212],nc_clear_geometry_variable_group:[869,1042],nc_clear_global_attribut:[870,1043],nc_clear_group_attribut:[871,1044],nc_clear_hdf5_chunks:722,nc_clear_sample_dimension_group:[652,1160],nc_clear_variable_group:[345,392,440,615,653,751,804,872,945,1045,1107,1161,1213,1258],nc_del_component_dimens:[873,1046],nc_del_component_sample_dimens:[874,1047],nc_del_component_vari:[875,1048],nc_del_dimens:[393,654,980,1162,1214],nc_del_geometry_vari:[876,1049],nc_del_sample_dimens:[655,1163],nc_del_vari:[346,394,441,616,656,752,805,877,946,1050,1108,1164,1215,1259],nc_dimension_group:[395,657,981,1165,1216],nc_geometry_variable_group:[878,1051],nc_get_dimens:[396,658,982,1166,1217],nc_get_extern:442,nc_get_geometry_vari:[879,1052],nc_get_sample_dimens:[659,1167],nc_get_vari:[347,397,443,617,660,753,806,880,947,1053,1109,1168,1218,1260],nc_global_attribut:[881,1054],nc_group_attribut:[882,1055],nc_has_dimens:[398,661,983,1169,1219],nc_has_geometry_vari:[883,1056],nc_has_sample_dimens:[662,1170],nc_has_vari:[348,399,444,618,663,754,807,884,948,1057,1110,1171,1220,1261],nc_hdf5_chunksiz:723,nc_is_unlimit:984,nc_sample_dimension_group:[664,1172],nc_set_component_dimens:[885,1058],nc_set_component_dimension_group:[886,1059],nc_set_component_sample_dimens:[887,1060],nc_set_component_sample_dimension_group:[888,1061],nc_set_component_vari:[889,1062],nc_set_component_variable_group:[890,1063],nc_set_dimens:[400,665,985,1173,1221],nc_set_dimension_group:[401,666,986,1174,1222],nc_set_extern:445,nc_set_geometry_vari:[891,1064],nc_set_geometry_variable_group:[892,1065],nc_set_global_attribut:[893,894,1066,1067],nc_set_group_attribut:[895,896,1068,1069],nc_set_hdf5_chunks:724,nc_set_sample_dimens:[667,1175],nc_set_sample_dimension_group:[668,1176],nc_set_unlimit:987,nc_set_vari:[349,402,446,619,669,755,808,897,949,1070,1111,1177,1223,1262],nc_set_variable_group:[350,403,447,620,670,756,809,898,950,1071,1112,1178,1224,1263],nc_variable_group:[351,404,448,621,671,757,810,899,951,1072,1113,1179,1225,1264],ndim:[4,12,17,23,30,40,49,57,74,92,98,104,109,114,119,124,129,135,141,147,152,171,194],netcdf:[208,209,210,217,218,220,221,222,223,224,225,226,228,229,230,1935],netcdfarrai:[122,123,124,125,126,231,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287],new_identifi:[561,1464],number:219,numpyarrai:[127,128,129,130,131,192,193,194,195,196,232,256,1288,1289,1290,1291,1292,1293,1294,1295,1296,1750,1751,1752,1753,1754],open:1286,oper:[219,288,1930],order:[219,562,1465],output:1935,packag:[287,289],paramet:[216,220,244,247,257,258,589,758,1529,1583,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1779,1869,1870,1871,1872,1873,1874,1875,1876,1886],parametersdomainancillari:[258,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890],perform:[219,1930],philosophi:1931,pip:288,place:1930,pop:509,popitem:510,prepar:264,privat:242,product:219,proper:219,properti:[208,209,210,211,218,221,222,223,225,226,228,229,230,237,238,239,240,243,248,250,251,253,254,255,259,260,261,352,405,449,672,811,900,952,1073,1114,1180,1226,1265,1380,1398,1419,1506,1611,1643,1670,1708,1728,1746,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1813,1839,1864,1891,1892,1893,1894,1895,1896,1897,1898,1899,1909,1925,1935],propertiesdata:[197,260,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912],propertiesdatabound:[198,199,200,203,204,261,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929],pull:264,python:288,qualifi:[479,1439],question:264,raggedcontiguousarrai:[132,133,134,135,136,137,233,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313],raggedindexedarrai:[138,139,140,141,142,143,234,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330],raggedindexedcontiguousarrai:[144,145,146,147,148,149,235,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348],read:[282,286,1935],refer:[1,287,289],relat:[287,289],releas:1932,remov:219,replac:[563,1466],report:264,repositori:288,request:264,routin:[219,246],rtol:[269,283],sampl:[218,228,1933,1935],scalar:1935,search:[219,287],second_el:725,select:[219,1935],set:219,set_ax:[480,1440],set_bound:[353,812,953,1381,1507,1612,1671,1840,1865,1926],set_calendar:[726,1569],set_climatolog:[354,813,1382,1508,1613],set_construct:[901,1074,1644,1709],set_coordin:[622,624,1548,1550],set_coordinate_convers:[623,1549],set_data:[355,406,450,673,814,954,1075,1115,1181,1227,1266,1383,1399,1420,1509,1614,1672,1710,1729,1747,1814,1841,1866,1910,1927],set_data_ax:[902,1076,1645,1711],set_datum:[625,1551],set_domain_ancillari:[590,591,1530,1531,1780,1781,1887,1888],set_fill_valu:[727,1570],set_geometri:[356,815,955,1384,1510,1615,1673,1842],set_interior_r:[357,816,956,1385,1511,1616,1674,1843],set_measur:[451,1421],set_method:[481,1441],set_node_count:[358,817,957],set_paramet:[592,593,759,760,1532,1533,1584,1585,1766,1767,1782,1783,1875,1876,1889,1890],set_part_node_count:[359,818,958],set_properti:[360,361,407,408,452,453,674,675,819,820,903,904,959,960,1077,1078,1116,1117,1182,1183,1228,1229,1267,1268,1386,1387,1400,1401,1422,1423,1512,1513,1617,1618,1646,1647,1675,1676,1712,1713,1730,1731,1748,1749,1797,1798,1815,1816,1844,1845,1867,1868,1898,1899,1911,1912,1928,1929],set_qualifi:[482,1442],set_siz:[988,1686],set_unit:[728,1571],setdefault:511,shallow_copi:[564,1467],shape:[5,13,18,24,31,41,50,58,75,93,99,105,110,115,120,125,130,136,142,148,153,172,195,219],singl:219,size:[6,14,19,25,32,42,51,59,76,94,100,106,111,116,121,126,131,137,143,149,154,173,196,224,252],sort:[219,483],sourc:[288,498,729,1132,1312,1329,1347,1572],special:[207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,257,258,259,260,261],squeez:[362,409,454,676,730,821,961,1079,1118,1184,1230,1269],statist:219,strategi:1932,string:1935,subsampl:1935,subspac:1935,substitut:[207,208,209,210,211,212,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250,251,252,253,254,255,256,257,258,259,260,261],suggest:264,sum:[219,731],support:[219,246,1934],system:[288,1935],term:[216,220,244,257,258],test:[219,288],time:[219,246,1935],to_memori:[499,732,1133,1287,1296,1313,1330,1348],todict:[565,1468],transpos:[219,363,410,455,677,733,822,962,1080,1119,1185,1231,1270],truth:219,tutori:1935,two:1931,uncompress:[364,411,456,678,734,823,963,1081,1120,1186,1232,1271],unfilt:566,uniqu:735,unique_construct:284,unit:[219,246],updat:512,util:288,valu:[34,219,513,567,568,1469,1470],variabl:1935,verbos:1935,version:[0,288,1932,1935],write:[285,286,1935],zero:219}}) \ No newline at end of file diff --git a/docs/1.9.0.1/support.html b/docs/1.9.0.1/support.html new file mode 100644 index 0000000000..9886bfe0b1 --- /dev/null +++ b/docs/1.9.0.1/support.html @@ -0,0 +1,154 @@ + + + + + + + Support — Documentation + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Support

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+

General questions, suggestions for enhancements, and reports of bugs +may be reported in the GitHub issue tracker: +https://github.com/NCAS-CMS/cfdm/issues

+
+
+

Contributing

+

Contributions to cfdm are welcome and should be raised as issues in +the GitHub issue tracker: https://github.com/NCAS-CMS/cfdm/issues, +prior to submitting a pull request containing the new code made from a +fork of the cfdm GitHub code repository: +https://github.com/NCAS-CMS/cfdm.

+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/docs/1.9.0.1/tutorial.html b/docs/1.9.0.1/tutorial.html new file mode 100644 index 0000000000..b2fa89ef69 --- /dev/null +++ b/docs/1.9.0.1/tutorial.html @@ -0,0 +1,5036 @@ + + + + + + + Tutorial — Documentation + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ + +
+ + + +
+

Tutorial

+
+

Version 1.9.0.1 for version 1.9 of the CF conventions.

+

All of the Python code in this tutorial is available in an executable +script (download, 12kB).

+ +
+

Sample datasets

+

This tutorial uses a number of small sample datasets, all of which can +be found in the zip file cfdm_tutorial_files.zip +(download, +8kB):

+
+
Unpack the sample datasets.
+
$ unzip -q cfdm_tutorial_files.zip
+$ ls -1
+cfdm_tutorial_files.zip
+contiguous.nc
+external.nc
+file.nc
+gathered.nc
+geometry.nc
+parent.nc
+
+
+
+

The tutorial examples assume that the Python session is being run from +the directory that contains the zip file and its unpacked contents, +and no other files.

+
+
+
+

Import

+

The cfdm package is imported as follows:

+
+
Import the cfdm package.
+
>>> import cfdm
+
+
+
+
+

Tip

+

It is possible to change the extent to which cfdm outputs +feedback messages and it may be instructive to increase the +verbosity whilst working through this tutorial to see and +learn more about what cfdm is doing under the hood and about +the nature of the dataset being operated on. This can be done +for example by running:

+
+
Increase the verbosity of cfdm from the +default.
+
>>> cfdm.log_level('INFO')
+
+
+
+

See the section on ‘Logging’ for more +information.

+
+
+

CF version

+

The version of the CF conventions and +the CF data model being used may be found with +the cfdm.CF function:

+
+
Retrieve the version of the CF conventions.
+
>>> cfdm.CF()
+'1.9'
+
+
+
+

This indicates which version of the CF conventions are represented by +this release of the cfdm package, and therefore the version can not be +changed.

+

Note, however, that datasets of different versions may also be +read from, or written to, disk.

+
+
+
+
+

Field and domain constructs

+

The central constructs of CF are the field construct and +domain construct.

+

The field construct, that corresponds to a CF-netCDF data variable, +includes all of the metadata to describe it:

+
+
    +
  • descriptive properties that apply to field construct as a whole +(e.g. the standard name),

  • +
  • a data array, and

  • +
  • “metadata constructs” that describe the locations of each cell +(i.e. the “domain”) of the data array, and the physical nature +of each cell’s datum.

  • +
+
+

Likewise, the domain construct, that corresponds to a CF-netCDF domain +variable or to the domain of a field construct, includes all of the +metadata to describe it:

+
+
    +
  • descriptive properties that apply to field construct as a whole +(e.g. the long name), and

  • +
  • metadata constructs that describe the locations of each cell of +the domain.

  • +
+
+

A field construct or domain construct is stored in a cfdm.Field +instance or cfdm.Domain instance respectively. Henceforth the phrase +“field construct” will be assumed to mean “cfdm.Field instance”, and +“domain construct” will be assumed to mean “cfdm.Domain instance”.

+
+
+
+

Reading field or domain constructs from datasets

+

The cfdm.read function reads a netCDF file from disk, or +from an OPeNDAP URL 1, and by +default returns the contents as a Python list of zero or more field +constructs. This list contains a field construct to represent each of +the CF-netCDF data variables in the file.

+

Datasets of any version of CF up to and including CF-1.9 can be +read 2.

+

All formats of netCDF3 and netCDF4 files can be read.

+

The file name may describe relative paths, and standard tilde and +shell parameter expansions are applied to it.

+

The following file types can be read:

+
    +
  • All formats of netCDF3 and netCDF4 files can be read, containing +datasets for versions of CF up to and including CF-1.9.

  • +
+
    +
  • Files in CDL format, +with or without the data array values.

  • +
+

For example, to read the file file.nc (found in the sample +datasets), which contains two field constructs:

+
+
Read file.nc and show that the result is a two-element +list.
+
>>> x = cfdm.read('file.nc')
+>>> print(type(x))
+<type 'list'>
+>>> len(x)
+2
+
+
+
+

Descriptive properties are always read into memory, but lazy loading is employed for all +data arrays, which means that no data is read into memory until the +data is required for inspection or to modify the array contents. This +maximises the number of field constructs that may be read within a +session, and makes the read operation fast.

+

Note that when reading netCDF4 files that contain hierachical +groups, the group structure is saved via the +netCDF interface so that it may be re-used, +or modified, if the field constructs are written to back to disk.

+

The cfdm.read function has optional parameters to

+
    +
  • allow the user to provide files that contain external +variables;

  • +
  • request extra field constructs to be created from “metadata” +netCDF variables, i.e. those that are +referenced from CF-netCDF data variables, but which are not regarded +by default as data variables in their own right;

  • +
  • return only domain constructs derived from CF-netCDF domain +variables;

  • +
  • request that masking is not applied by convention to data elements +(see data masking);

  • +
  • issue warnings when valid_min, valid_max and valid_range +attributes are present (see data masking); and

  • +
  • display information and issue warnings about the mapping of the +netCDF file contents to CF data model constructs.

  • +
+
+

CF-compliance

+

If the dataset is partially CF-compliant to the extent that it is not +possible to unambiguously map an element of the netCDF dataset to an +element of the CF data model, then a field construct is still +returned, but may be incomplete. This is so that datasets which are +partially conformant may nonetheless be modified in memory and written +to new datasets. Such “structural” non-compliance would occur, for +example, if the coordinates attribute of a CF-netCDF data variable +refers to another variable that does not exist, or refers to a +variable that spans a netCDF dimension that does not apply to the data +variable. Other types of non-compliance are not checked, such whether +or not controlled vocabularies have been adhered to. The structural +compliance of the dataset may be checked with the +dataset_compliance method of the field construct, as +well as optionally displayed when the dataset is read.

+
+
+
+
+

Inspection

+

The contents of a field construct may be inspected at three different +levels of detail.

+
+

Minimal detail

+

The built-in repr function returns a short, one-line description:

+
+
Inspect the contents of the two field constructs from +the dataset and create a Python variable for each of +them.
+
>>> x
+[<Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+>>> q = x[0]
+>>> t = x[1]
+>>> q
+<Field: specific_humidity(latitude(5), longitude(8)) 1>
+
+
+
+

This gives the identity of the field construct +(e.g. “specific_humidity”), the identities and sizes of the dimensions +spanned by the data array (“latitude” and “longitude” with sizes 5 and +8 respectively) and the units of the data (“1”).

+
+
+

Medium detail

+

The built-in str function returns similar information as the +one-line output, along with short descriptions of the metadata +constructs, which include the first and last values of their data +arrays:

+
+
Inspect the contents of the two field constructs with +medium detail.
+
>>> print(q)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: time(1) = [2019-01-01 00:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+
+>>> print(t)
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Data            : air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K
+Cell methods    : grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees) time(1): maximum
+Field ancils    : air_temperature standard_error(grid_latitude(10), grid_longitude(9)) = [[0.81, ..., 0.78]] K
+Dimension coords: time(1) = [2019-01-01 00:00:00]
+                : atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., kappa]
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: atmosphere_hybrid_height_coordinate
+                : rotated_latitude_longitude
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+
+
+
+

Note that time values are converted to date-times with +the cftime package.

+
+
+

Full detail

+

The dump method of the field construct gives all +properties of all constructs, including metadata constructs and their +components, and shows the first and last values of all data arrays:

+
+
Inspect the contents of the two field constructs with +full detail.
+
>>> q.dump()
+----------------------------------
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Conventions = 'CF-1.9'
+project = 'research'
+standard_name = 'specific_humidity'
+units = '1'
+
+Data(latitude(5), longitude(8)) = [[0.003, ..., 0.032]] 1
+
+Cell Method: area: mean
+
+Domain Axis: latitude(5)
+Domain Axis: longitude(8)
+Domain Axis: time(1)
+
+Dimension coordinate: latitude
+    standard_name = 'latitude'
+    units = 'degrees_north'
+    Data(latitude(5)) = [-75.0, ..., 75.0] degrees_north
+    Bounds:Data(latitude(5), 2) = [[-90.0, ..., 90.0]]
+
+Dimension coordinate: longitude
+    standard_name = 'longitude'
+    units = 'degrees_east'
+    Data(longitude(8)) = [22.5, ..., 337.5] degrees_east
+    Bounds:Data(longitude(8), 2) = [[0.0, ..., 360.0]]
+
+Dimension coordinate: time
+    standard_name = 'time'
+    units = 'days since 2018-12-01'
+    Data(time(1)) = [2019-01-01 00:00:00]
+
+>>> t.dump()
+---------------------------------
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Conventions = 'CF-1.9'
+project = 'research'
+standard_name = 'air_temperature'
+units = 'K'
+
+Data(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) = [[[0.0, ..., 89.0]]] K
+
+Cell Method: grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees)
+Cell Method: time(1): maximum
+
+Field Ancillary: air_temperature standard_error
+    standard_name = 'air_temperature standard_error'
+    units = 'K'
+    Data(grid_latitude(10), grid_longitude(9)) = [[0.81, ..., 0.78]] K
+
+Domain Axis: atmosphere_hybrid_height_coordinate(1)
+Domain Axis: grid_latitude(10)
+Domain Axis: grid_longitude(9)
+Domain Axis: time(1)
+
+Dimension coordinate: atmosphere_hybrid_height_coordinate
+    computed_standard_name = 'altitude'
+    standard_name = 'atmosphere_hybrid_height_coordinate'
+    Data(atmosphere_hybrid_height_coordinate(1)) = [1.5]
+    Bounds:Data(atmosphere_hybrid_height_coordinate(1), 2) = [[1.0, 2.0]]
+
+Dimension coordinate: grid_latitude
+    standard_name = 'grid_latitude'
+    units = 'degrees'
+    Data(grid_latitude(10)) = [2.2, ..., -1.76] degrees
+    Bounds:Data(grid_latitude(10), 2) = [[2.42, ..., -1.98]]
+
+Dimension coordinate: grid_longitude
+    standard_name = 'grid_longitude'
+    units = 'degrees'
+    Data(grid_longitude(9)) = [-4.7, ..., -1.18] degrees
+    Bounds:Data(grid_longitude(9), 2) = [[-4.92, ..., -0.96]]
+
+Dimension coordinate: time
+    standard_name = 'time'
+    units = 'days since 2018-12-01'
+    Data(time(1)) = [2019-01-01 00:00:00]
+
+Auxiliary coordinate: latitude
+    standard_name = 'latitude'
+    units = 'degrees_N'
+    Data(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+
+Auxiliary coordinate: longitude
+    standard_name = 'longitude'
+    units = 'degrees_E'
+    Data(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+
+Auxiliary coordinate: long_name=Grid latitude name
+    long_name = 'Grid latitude name'
+    Data(grid_latitude(10)) = [--, ..., kappa]
+
+Domain ancillary: ncvar%a
+    units = 'm'
+    Data(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+    Bounds:Data(atmosphere_hybrid_height_coordinate(1), 2) = [[5.0, 15.0]]
+
+Domain ancillary: ncvar%b
+    Data(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+    Bounds:Data(atmosphere_hybrid_height_coordinate(1), 2) = [[14.0, 26.0]]
+
+Domain ancillary: surface_altitude
+    standard_name = 'surface_altitude'
+    units = 'm'
+    Data(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+
+Coordinate reference: atmosphere_hybrid_height_coordinate
+    Coordinate conversion:computed_standard_name = altitude
+    Coordinate conversion:standard_name = atmosphere_hybrid_height_coordinate
+    Coordinate conversion:a = Domain Ancillary: ncvar%a
+    Coordinate conversion:b = Domain Ancillary: ncvar%b
+    Coordinate conversion:orog = Domain Ancillary: surface_altitude
+    Datum:earth_radius = 6371007
+    Dimension Coordinate: atmosphere_hybrid_height_coordinate
+
+Coordinate reference: rotated_latitude_longitude
+    Coordinate conversion:grid_mapping_name = rotated_latitude_longitude
+    Coordinate conversion:grid_north_pole_latitude = 38.0
+    Coordinate conversion:grid_north_pole_longitude = 190.0
+    Datum:earth_radius = 6371007
+    Dimension Coordinate: grid_longitude
+    Dimension Coordinate: grid_latitude
+    Auxiliary Coordinate: longitude
+    Auxiliary Coordinate: latitude
+
+Cell measure: measure:area
+    units = 'km2'
+    Data(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+
+
+
+
+
+

cfdump

+

The description for every field construct in a file can also be +generated from the command line, with minimal, medium or full detail, +by using the cfdump tool, for example:

+
+
Use cfdump on the command line to inspect the field +constructs contained in a dataset. The “-s” option +requests short, minimal detail as output.
+
$ cfdump
+USAGE: cfdump [-s] [-c] [-e file [-e file] ...] [-h] file
+  [-s]      Display short, one-line descriptions
+  [-c]      Display complete descriptions
+  [-e file] External files
+  [-h]      Display the full man page
+  file      Name of netCDF file (or URL if DAP access enabled)
+$ cfdump -s file.nc
+Field: specific_humidity(latitude(5), longitude(8)) 1
+Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K
+
+
+
+

cfdump may also be used with external files.

+
+
+
+
+

Properties

+

Descriptive properties that apply to field construct as a whole may be +retrieved with the properties method:

+
+
Retrieve all of the descriptive properties
+
>>> t.properties()
+{'Conventions': 'CF-1.9',
+ 'project': 'research',
+ 'standard_name': 'air_temperature',
+ 'units': 'K'}
+
+
+
+

Individual properties may be accessed and modified with the +del_property, get_property, has_property, +and set_property methods:

+
+
Check is a property exists, retrieve its value, delete +it and then set it to a new value.
+
>>> t.has_property('standard_name')
+True
+>>> t.get_property('standard_name')
+'air_temperature'
+>>> t.del_property('standard_name')
+'air_temperature'
+>>> t.get_property('standard_name', default='not set')
+'not set'
+>>> t.set_property('standard_name', value='air_temperature')
+>>> t.get_property('standard_name', default='not set')
+'air_temperature'
+
+
+
+

A collection of properties may be set at the same time with the +set_properties method of the field construct, and all +properties may be completely removed with the +clear_properties method.

+
+
Update the properties with a collection, delete all of +the properties, and reinstate the original properties.
+
>>> original = t.properties()
+>>> original
+{'Conventions': 'CF-1.9',
+ 'project': 'research',
+ 'standard_name': 'air_temperature',
+ 'units': 'K'}
+>>> t.set_properties({'foo': 'bar', 'units': 'K'})
+>>> t.properties()
+{'Conventions': 'CF-1.9',
+ 'foo': 'bar',
+ 'project': 'research',
+ 'standard_name': 'air_temperature',
+ 'units': 'K'}
+>>> t.clear_properties()
+ {'Conventions': 'CF-1.9',
+ 'foo': 'bar',
+ 'project': 'research',
+ 'standard_name': 'air_temperature',
+ 'units': 'K'}
+>>> t.properties()
+{}
+>>> t.set_properties(original)
+>>> t.properties()
+{'Conventions': 'CF-1.9',
+ 'project': 'research',
+ 'standard_name': 'air_temperature',
+ 'units': 'K'}
+
+
+
+

All of the methods related to the properties are listed here.

+
+
+
+

Metadata constructs

+

The metadata constructs describe the field construct that contains +them. Each CF data model metadata construct has +a corresponding cfdm class:

+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Class

CF data model construct

Description

DomainAxis

Domain axis

Independent axes of the domain

DimensionCoordinate

Dimension coordinate

Domain cell locations

AuxiliaryCoordinate

Auxiliary coordinate

Domain cell locations

CoordinateReference

Coordinate reference

Domain coordinate systems

DomainAncillary

Domain ancillary

Cell locations in alternative +coordinate systems

CellMeasure

Cell measure

Domain cell size or shape

FieldAncillary

Field ancillary

Ancillary metadata which vary +within the domain

CellMethod

Cell method

Describes how data represent +variation within cells

+

Metadata constructs of a particular type can be retrieved with the +following methods of the field construct:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Method

Metadata constructs

domain_axes

Domain axes

dimension_coordinates

Dimension coordinates

auxiliary_coordinates

Auxiliary coordinates

coordinate_references

Coordinate references

domain_ancillaries

Domain ancillaries

cell_measures

Cell measures

field_ancillaries

Field ancillaries

cell_methods

Cell methods

+

Each of these attributes returns a Constructs class instance that +maps metadata constructs to unique identifiers called “construct +keys”. A Constructs instance has methods for selecting constructs +that meet particular criteria (see the section on filtering +metadata constructs). It also behaves +like a “read-only” Python dictionary, in that it has +items, keys and values +methods that work exactly like their corresponding dict methods. It +also has a get method and indexing like a Python +dictionary (see the section on metadata construct access for details).

+
+
Retrieve the field construct’s coordinate reference +constructs, and access them using dictionary methods.
+
>>> t.coordinate_references()
+<Constructs: coordinate_reference(2)>
+>>> print(t.coordinate_references())
+Constructs:
+{'coordinatereference0': <CoordinateReference: atmosphere_hybrid_height_coordinate>,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>}
+>>> list(t.coordinate_references().keys())
+['coordinatereference0', 'coordinatereference1']
+>>> for key, value in t.coordinate_references().items():
+...     print(key, repr(value))
+...
+coordinatereference1 <CoordinateReference: rotated_latitude_longitude>
+coordinatereference0 <CoordinateReference: atmosphere_hybrid_height_coordinate>
+
+
+
+
+
Retrieve the field construct’s dimension coordinate and +domain axis constructs.
+
>>> print(t.dimension_coordinates())
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+>>> print(t.domain_axes())
+Constructs:
+{'domainaxis0': <DomainAxis: size(1)>,
+ 'domainaxis1': <DomainAxis: size(10)>,
+ 'domainaxis2': <DomainAxis: size(9)>,
+ 'domainaxis3': <DomainAxis: size(1)>}
+
+
+
+

The construct keys (e.g. 'domainaxis1') are usually generated +internally and are unique within the field construct. However, +construct keys may be different for equivalent metadata constructs +from different field constructs, and for different Python sessions.

+

Metadata constructs of all types may be returned by the +constructs attribute of the field construct:

+
+
Retrieve all of the field construct’s metadata +constructs.
+
>>> q.constructs
+<Constructs: cell_method(1), dimension_coordinate(3), domain_axis(3)>
+>>> print(q.constructs)
+Constructs:
+{'cellmethod0': <CellMethod: area: mean>,
+ 'dimensioncoordinate0': <DimensionCoordinate: latitude(5) degrees_north>,
+ 'dimensioncoordinate1': <DimensionCoordinate: longitude(8) degrees_east>,
+ 'dimensioncoordinate2': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> t.constructs
+<Constructs: auxiliary_coordinate(3), cell_measure(1), cell_method(2), coordinate_reference(2), dimension_coordinate(4), domain_ancillary(3), domain_axis(4), field_ancillary(1)>
+>>> print(t.constructs)
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name=Grid latitude name(10) >,
+ 'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>,
+ 'coordinatereference0': <CoordinateReference: atmosphere_hybrid_height_coordinate>,
+ 'coordinatereference1': <CoordinateReference: rotated_latitude_longitude>,
+ 'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >,
+ 'domainancillary0': <DomainAncillary: ncvar%a(1) m>,
+ 'domainancillary1': <DomainAncillary: ncvar%b(1) >,
+ 'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>,
+ 'domainaxis0': <DomainAxis: size(1)>,
+ 'domainaxis1': <DomainAxis: size(10)>,
+ 'domainaxis2': <DomainAxis: size(9)>,
+ 'domainaxis3': <DomainAxis: size(1)>,
+ 'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+
+
+
+
+
+
+

Data

+

The field construct’s data is stored in a Data class instance that +is accessed with the data attribute of the field construct.

+
+
Retrieve the data and inspect it, showing the shape and +some illustrative values.
+
>>> t.data
+<Data(1, 10, 9): [[[262.8, ..., 269.7]]] K>
+
+
+
+

The Data instance provides access to the full array of values, as +well as attributes to describe the array and methods for describing +any data compression.

+

The Data instance provides access to the full array of values, as +well as attributes to describe the array and methods for describing +any data compression. However, the field construct (and any other +construct that contains data) also provides attributes for direct +access.

+
+
Retrieve a numpy array of the data.
+
>>> print(t.data.array)
+[[[262.8 270.5 279.8 269.5 260.9 265.0 263.5 278.9 269.2]
+  [272.7 268.4 279.5 278.9 263.8 263.3 274.2 265.7 279.5]
+  [269.7 279.1 273.4 274.2 279.6 270.2 280.0 272.5 263.7]
+  [261.7 260.6 270.8 260.3 265.6 279.4 276.9 267.6 260.6]
+  [264.2 275.9 262.5 264.9 264.7 270.2 270.4 268.6 275.3]
+  [263.9 263.8 272.1 263.7 272.2 264.2 260.0 263.5 270.2]
+  [273.8 273.1 268.5 272.3 264.3 278.7 270.6 273.0 270.6]
+  [267.9 273.5 279.8 260.3 261.2 275.3 271.2 260.8 268.9]
+  [270.9 278.7 273.2 261.7 271.6 265.8 273.0 278.5 266.4]
+  [276.4 264.2 276.3 266.1 276.1 268.1 277.0 273.4 269.7]]]
+
+
+
+
+
Inspect the data type, number of dimensions, dimension +sizes and number of elements of the data.
+
>>> t.dtype
+dtype('float64')
+>>> t.ndim
+3
+>>> t.shape
+(1, 10, 9)
+>>> t.size
+90
+>>> t.data.size
+90
+
+
+
+

Note it is preferable to access the data type, number of dimensions, +dimension sizes and number of elements of the data via the parent +construct, rather than from the Data instance, as there are +particular circumstances when there is no +Data instance, but the construct nonetheless has data descriptors.

+

The field construct also has a get_data method as an +alternative means of retrieving the data instance, which allows for a +default to be returned if no data have been set; as well as a +del_data method for removing the data.

+

All of the methods and attributes related to the data are listed +here.

+
+

Data axes

+

The data array of the field construct spans all the domain axis +constructs with the possible exception of size one domain axis +constructs. The domain axis constructs spanned by the field +construct’s data are found with the get_data_axes method of +the field construct. For example, the data of the field construct +t does not span the size one domain axis construct with key +'domainaxis3'.

+
+
Show which data axis constructs are spanned by the field +construct’s data.
+
>>> print(t.domain_axes())
+Constructs:
+{'domainaxis0': <DomainAxis: size(1)>,
+ 'domainaxis1': <DomainAxis: size(10)>,
+ 'domainaxis2': <DomainAxis: size(9)>,
+ 'domainaxis3': <DomainAxis: size(1)>}
+>>> t
+<Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>
+>>> t.shape
+(1, 10, 9)
+>>> t.get_data_axes()
+('domainaxis0', 'domainaxis1', 'domainaxis2')
+
+
+
+

The data may be set with the set_data method of the field +construct. The domain axis constructs spanned by the data may also be +set by explicitly providing them via their construct keys. In any +case, the data axes may be set at any time with the +set_data_axes method of the field construct.

+
+
Delete the data and then reinstate it, using the +existing data axes.
+
>>> data = t.del_data()
+>>> t.has_data()
+False
+>>> t.set_data(data, axes=None)
+>>> t.data
+<Data(1, 10, 9): [[[262.8, ..., 269.7]]] K>
+
+
+
+

See the section field construct creation for more examples.

+
+
+

Date-time

+

Data representing date-times is defined as elapsed times since a +reference date-time in a particular calendar (Gregorian, by +default). The array attribute of the Data instance +(and any construct that contains it) returns the elapsed times, and +the datetime_array (and any construct that contains it) +returns the data as an array of date-time objects.

+
+
View date-times aas elapsed time or as date-time +objects.
+
>>> d = cfdm.Data([1, 2, 3], units='days since 2004-2-28')
+>>> print(d.array)
+[1 2 3]
+>>> print(d.datetime_array)
+[cftime.DatetimeGregorian(2004-02-29 00:00:00)
+ cftime.DatetimeGregorian(2004-03-01 00:00:00)
+ cftime.DatetimeGregorian(2004-03-02 00:00:00)]
+>>> e = cfdm.Data([1, 2, 3], units='days since 2004-2-28',
+...               calendar='360_day')
+>>> print(e.array)
+[1 2 3]
+>>> print(e.datetime_array)
+[cftime.Datetime360Day(2004-02-29 00:00:00)
+ cftime.Datetime360Day(2004-02-30 00:00:00)
+ cftime.Datetime360Day(2004-03-01 00:00:00)]
+
+
+
+
+
+

Manipulating dimensions

+

The dimensions of a field construct’s data may be reordered, have size +one dimensions removed and have new new size one dimensions included +by using the following field construct methods:

+ ++++ + + + + + + + + + + + + + + + + +

Method

Description

insert_dimension

Insert a new size one data dimension. The +new dimension must correspond to an +existing size one domain axis construct.

squeeze

Remove size one data dimensions

transpose

Reorder data dimensions

+
+
Remove all size one dimensions from the data, noting +that metadata constructs which span the corresponding +domain axis construct are not affected.
+
>>> q, t = cfdm.read('file.nc')
+>>> t
+<CF Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>
+>>> t2 = t.squeeze()
+>>> t2
+<CF Field: air_temperature(grid_latitude(10), grid_longitude(9)) K>
+>>> print(t2.dimension_coordinates())
+Constructs:
+{'dimensioncoordinate0': <CF DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <CF DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <CF DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <CF DimensionCoordinate: time(1) days since 2018-12-01 >}
+
+
+
+
+
Insert a new size one dimension, corresponding to a size +one domain axis construct, and then reorder the +dimensions.
+
>>> t3 = t2.insert_dimension(axis='domainaxis3', position=1)
+>>> t3
+<CF Field: air_temperature(grid_latitude(10), time(1), grid_longitude(9)) K>
+>>> t3.transpose([2, 0, 1])
+<CF Field: air_temperature(grid_longitude(9), grid_latitude(10), time(1)) K>
+
+
+
+

When transposing the data dimensions, the dimensions of metadata +construct data are, by default, unchanged. It is also possible to +permute the data dimensions of the metadata constructs so that they +have the same relative order as the field construct:

+
+
Also permute the data dimension of metadata constructs +using the ‘constructs’ keyword.
+
>>> t4 = t.transpose([0, 2, 1], constructs=True)
+
+
+
+
+
+

Data mask

+

There is always a data mask, which may be thought of as a separate +data array of Booleans with the same shape as the original data. The +data mask is False where the the data has values, and True where +the data is missing. The data mask may be inspected with the +mask attribute of the data instance, which returns the +data mask in a field construct with the same metadata constructs as +the original field construct.

+
+
Inspect the data mask of a field construct.
+
>>> print(q)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> print(q.data.mask)
+<Data(5, 8): [[False, ..., False]]>
+>>> print(q.data.mask.array)
+[[False False False False False False False False]
+ [False False False False False False False False]
+ [False False False False False False False False]
+ [False False False False False False False False]
+ [False False False False False False False False]]
+
+
+
+
+
Mask the polar rows (see the “Assignment by index” +section) and inspect the new data mask.
+
>>> q.data[[0, 4], :] = cfdm.masked
+>>> print(q.data.mask.array)
+[[ True  True  True  True  True  True  True  True]
+ [False False False False False False False False]
+ [False False False False False False False False]
+ [False False False False False False False False]
+ [ True  True  True  True  True  True  True  True]]
+
+
+
+

The _FillValue and missing_value attributes of the field +construct are not stored as values of the field construct’s +data. They are only used when writing the data to a netCDF +dataset. Therefore testing for missing +data by testing for equality to one of these property values will +produce incorrect results; the any method of the Data +instance should be used instead.

+
+
See if any data points are masked.
+
>>> q.data.mask.any()
+True
+
+
+
+

The mask of a netCDF dataset array is implied by array values that +meet the criteria implied by the missing_value, _FillValue, +valid_min, valid_max, and valid_range properties, and is +usually applied automatically by cfdm.read. NetCDF data elements +that equal the values of the missing_value and _FillValue +properties are masked, as are data elements that exceed the value of +the valid_max property, subceed the value of the valid_min +property, or lie outside of the range defined by the valid_range +property.

+

However, this automatic masking may be bypassed by setting the mask +keyword of the cfdm.read function to False. The mask, as defined +in the dataset, may subsequently be applied manually with the +apply_masking method of the field construct.

+
+
Read a dataset from disk without automatic masking, and +then manually apply the mask
+
>>> cfdm.write(q, 'masked_q.nc')
+>>> no_mask_q = cfdm.read('masked_q.nc', mask=False)[0]
+>>> print(no_mask_q.data.array)
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36],
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+[9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36,
+ 9.96920997e+36, 9.96920997e+36, 9.96920997e+36, 9.96920997e+36]])
+>>> masked_q = no_mask_q.apply_masking()
+>>> print(masked_q.data.array)
+[[   --    --    --    --    --    --    --    --]
+ [0.023 0.036 0.045 0.062 0.046 0.073 0.006 0.066]
+ [0.11  0.131 0.124 0.146 0.087 0.103 0.057 0.011]
+ [0.029 0.059 0.039 0.07  0.058 0.072 0.009 0.017]
+ [   --    --    --    --    --    --    --    --]]
+
+
+
+

The apply_masking method of the field construct utilises as +many of the missing_value, _FillValue, valid_min, +valid_max, and valid_range properties as are present and may +be used on any construct, not just those that have been read from +datasets.

+
+
+

Indexing

+

When a Data instance is indexed a new instance is created for the +part of the data defined by the indices. Indexing follows rules that +are very similar to the numpy indexing rules, +the only differences being:

+
    +
  • An integer index i specified for a dimension reduces the size of +this dimension to unity, taking just the i-th element, but keeps +the dimension itself, so that the rank of the array is not reduced.

  • +
+
    +
  • When two or more dimensions’ indices are sequences of integers then +these indices work independently along each dimension (similar to +the way vector subscripts work in Fortran). This is the same +indexing behaviour as on a Variable object of the netCDF4 +package.

  • +
+
+
Create new data by indexing and show the shape +corresponding to the indices.
+
>>> data = t.data
+>>> data.shape
+(1, 10, 9)
+>>> data[:, :, 1].shape
+(1, 10, 1)
+>>> data[:, 0].shape
+(1, 1, 9)
+>>> data[..., 6:3:-1, 3:6].shape
+(1, 3, 3)
+>>> data[0, [2, 9], [4, 8]].shape
+(1, 2, 2)
+>>> data[0, :, -2].shape
+(1, 10, 1)
+
+
+
+
+
+

Assignment

+

Values can be changed by assigning to elements selected by indices of +the Data instance using rules that are very similar to the numpy +indexing rules, +the only difference being:

+
    +
  • When two or more dimensions’ indices are sequences of integers then +these indices work independently along each dimension (similar to +the way vector subscripts work in Fortran). This is the same +indexing behaviour as on a Variable object of the netCDF4 +package.

  • +
+

A single value may be assigned to any number of elements.

+
+
Set a single element to -1, a “column” of elements +to -2 and a “square” of elements to -3.
+
>>> import numpy
+>>> t.data[:, 0, 0] = -1
+>>> t.data[:, :, 1] = -2
+>>> t.data[..., 6:3:-1, 3:6] = -3
+>>> print(t.data.array)
+[[[ -1.0  -2.0 279.8 269.5 260.9 265.0 263.5 278.9 269.2]
+  [272.7  -2.0 279.5 278.9 263.8 263.3 274.2 265.7 279.5]
+  [269.7  -2.0 273.4 274.2 279.6 270.2 280.0 272.5 263.7]
+  [261.7  -2.0 270.8 260.3 265.6 279.4 276.9 267.6 260.6]
+  [264.2  -2.0 262.5  -3.0  -3.0  -3.0 270.4 268.6 275.3]
+  [263.9  -2.0 272.1  -3.0  -3.0  -3.0 260.0 263.5 270.2]
+  [273.8  -2.0 268.5  -3.0  -3.0  -3.0 270.6 273.0 270.6]
+  [267.9  -2.0 279.8 260.3 261.2 275.3 271.2 260.8 268.9]
+  [270.9  -2.0 273.2 261.7 271.6 265.8 273.0 278.5 266.4]
+  [276.4  -2.0 276.3 266.1 276.1 268.1 277.0 273.4 269.7]]]
+
+
+
+

An array of values can be assigned, as long as it is broadcastable to +the shape defined by the indices, using the numpy broadcasting rules.

+
+
Overwrite the square of values of -3 with the numbers 0 +to 8, and set the corners of a different square to be +either -4 or -5.
+
>>> t.data[..., 6:3:-1, 3:6] = numpy.arange(9).reshape(3, 3)
+>>> t.data[0, [2, 9], [4, 8]] =  cfdm.Data([[-4, -5]])
+>>> print(t.data.array)
+[[[ -1.0  -2.0 279.8 269.5 260.9 265.0 263.5 278.9 269.2]
+  [272.7  -2.0 279.5 278.9 263.8 263.3 274.2 265.7 279.5]
+  [269.7  -2.0 273.4 274.2  -4.0 270.2 280.0 272.5  -5.0]
+  [261.7  -2.0 270.8 260.3 265.6 279.4 276.9 267.6 260.6]
+  [264.2  -2.0 262.5   6.0   7.0   8.0 270.4 268.6 275.3]
+  [263.9  -2.0 272.1   3.0   4.0   5.0 260.0 263.5 270.2]
+  [273.8  -2.0 268.5   0.0   1.0   2.0 270.6 273.0 270.6]
+  [267.9  -2.0 279.8 260.3 261.2 275.3 271.2 260.8 268.9]
+  [270.9  -2.0 273.2 261.7 271.6 265.8 273.0 278.5 266.4]
+  [276.4  -2.0 276.3 266.1  -4.0 268.1 277.0 273.4  -5.0]]]
+
+
+
+

Data array elements may be set to missing values by assigning them to +the cfdm.masked constant. Missing values may be unmasked by +assigning them to any other value.

+
+
Set a column of elements to missing values, and then +change one of them back to a non-missing value.
+
>>> t.data[0, :, -2] = cfdm.masked
+>>> t.data[0, 5, -2] = -6
+>>> print(t.data.array)
+[[[ -1.0  -2.0 279.8 269.5 260.9 265.0 263.5    -- 269.2]
+  [272.7  -2.0 279.5 278.9 263.8 263.3 274.2    -- 279.5]
+  [269.7  -2.0 273.4 274.2  -4.0 270.2 280.0    --  -5.0]
+  [261.7  -2.0 270.8 260.3 265.6 279.4 276.9    -- 260.6]
+  [264.2  -2.0 262.5   6.0   7.0   8.0 270.4    -- 275.3]
+  [263.9  -2.0 272.1   3.0   4.0   5.0 260.0  -6.0 270.2]
+  [273.8  -2.0 268.5   0.0   1.0   2.0 270.6    -- 270.6]
+  [267.9  -2.0 279.8 260.3 261.2 275.3 271.2    -- 268.9]
+  [270.9  -2.0 273.2 261.7 271.6 265.8 273.0    -- 266.4]
+  [276.4  -2.0 276.3 266.1  -4.0 268.1 277.0    --  -5.0]]]
+
+
+
+
+
+
+
+

Subspacing

+

Creation of a new field construct which spans a subspace of the domain +of an existing field construct is achieved by indexing the field +itself, rather than its Data instance. This is because the operation +must also subspace any metadata constructs of the field construct +(e.g. coordinate metadata constructs) which span any of the +domain axis constructs that are affected. The new field +construct is created with the same properties as the original +field. Subspacing uses the same cfdm indexing rules +that apply to the Data class.

+
+
Create a new field whose domain spans the first longitude +of the original, and with a reversed latitude axis.
+
>>> print(q)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: time(1) = [2019-01-01 00:00:00]
+                : latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+
+>>> new = q[::-1, 0]
+>>> print(new)
+Field: specific_humidity (ncvar%q)
+----------------------------------
+Data            : specific_humidity(latitude(5), longitude(1)) 1
+Cell methods    : area: mean
+Dimension coords: time(1) = [2019-01-01 00:00:00]
+                : latitude(5) = [75.0, ..., -75.0] degrees_north
+                : longitude(1) = [22.5] degrees_east
+
+
+
+
+
+
+

Selecting metadata constructs

+

A Constructs instance has filtering methods for selecting constructs +that meet various criteria:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Method

Filter criteria

filter

General purpose interface to all other filter methods

filter_by_identity

Metadata construct identity

filter_by_type

Metadata construct type

filter_by_property

Property values

filter_by_axis

The domain axis constructs spanned by the data

filter_by_naxes

The number of domain axis constructs spanned by the data

filter_by_size

The size domain axis constructs

filter_by_measure

Measure value (for cell measure constructs)

filter_by_method

Method value (for cell method constructs)

filter_by_data

Whether or not there could be be data.

filter_by_key

Construct key

filter_by_ncvar

NetCDF variable name (see the netCDF interface)

filter_by_ncdim

NetCDF dimension name (see the netCDF interface)

+

The filter method of a Constructs instance allows +these filters to be chained together in a single call.

+

Each of these methods returns a new Constructs instance by default +that contains the selected constructs.

+
+
Get constructs by their type.
+
>>> print(t.constructs.filter_by_type('dimension_coordinate'))
+Constructs:
+{'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+>>> print(t.constructs.filter_by_type('cell_method', 'field_ancillary'))
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>,
+ 'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+
+
+
+
+
Get constructs by their properties.
+
>>> print(t.constructs.filter_by_property(
+...             standard_name='air_temperature standard_error'))
+Constructs:
+{'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+>>> print(t.constructs.filter_by_property(
+...             standard_name='air_temperature standard_error',
+...             units='K'))
+Constructs:
+{'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+>>> print(t.constructs.filter_by_property(
+...             'or',
+...             standard_name='air_temperature standard_error',
+...             units='m'))
+Constructs:
+{'domainancillary0': <DomainAncillary: ncvar%a(1) m>,
+ 'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>,
+ 'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+
+
+
+
+
Get constructs whose data span at least one of the +‘grid_latitude’ and ‘grid_longitude’ domain axis constructs.
+
>>> print(t.constructs.filter_by_axis('grid_latitude', 'grid_longitude',
+...                                   axis_mode='or'))
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name=Grid latitude name(10) >,
+ 'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>,
+ 'fieldancillary0': <FieldAncillary: air_temperature standard_error(10, 9) K>}
+
+
+
+
+
Get cell measure constructs by their “measure”.
+
>>> print(t.constructs.filter_by_measure('area'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+
+
+
+
+
Get cell method constructs by their “method”.
+
>>> print(t.constructs.filter_by_method('maximum'))
+Constructs:
+{'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+
+

As each of these methods returns a Constructs instance by default, +it is easy to perform further filters on their results:

+
+
Make selections from previous selections.
+
>>> print(
+...     t.constructs.filter_by_type('auxiliary_coordinate').filter_by_axis('domainaxis2')
+... )
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>}
+>>> c = t.constructs.filter_by_type('dimension_coordinate')
+>>> d = c.filter_by_property(units='degrees')
+>>> print(d)
+Constructs:
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>}
+
+
+
+

Filters can also be chained with the filter method of a +Constructs instance

+
+
Make a chain of selections.
+
>>> c = t.constructs.filter(filter_by_type=('dimension_coordinate',),
+...                         filter_by_property={'units': 'degrees'})
+>>> print(c)
+Constructs:
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>}
+
+
+
+

If the result are only required as a dict, rather than a +Constructs instance, the “todict” parameter can be used to give +faster performance:

+
+
Make a chain of selections and return as a dictionary.
+
>>> d = t.constructs.filter(filter_by_type=('dimension_coordinate',),
+...                         filter_by_property={'units': 'degrees'},
+...                         todict=True)
+>>> type(d)
+dict
+>>> print(d)
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>}
+
+
+
+

Filters can also be chained with the filter method of a +Constructs instance

+
+
Make a chain of selections.
+
>>> c = t.constructs.filter(filter_by_type=('dimension_coordinate',),
+...                         filter_by_property={'units': 'degrees'})
+>>> print(c)
+Constructs:
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>}
+
+
+
+

Another method of selection is by metadata construct “identity”. +Construct identities are used to describe constructs when they are +inspected, and so it is often convenient to copy these identities +when selecting metadata constructs. For example, the three +auxiliary coordinate constructs in the field +construct t have identities 'latitude', 'longitude' and +'long_name=Grid latitude name'.

+

A construct’s identity may be any one of the following

+
    +
  • The value of the standard_name property, +e.g. 'air_temperature',

  • +
  • The value of any property, preceded by the property name and an +equals, e.g. 'long_name=Air Temperature', 'axis=X', +'foo=bar', etc.,

  • +
  • The cell measure, preceded by “measure:”, +e.g. 'measure:volume'

  • +
  • The cell method, preceded by “method:”, e.g. 'method:maximum'

  • +
  • The netCDF variable name, preceded by “ncvar%”, +e.g. 'ncvar%tas' (see the netCDF interface),

  • +
  • The netCDF dimension name, preceded by “ncdim%” e.g. 'ncdim%z' +(see the netCDF interface), and

  • +
  • The construct key, preceded by “key%” +e.g. 'key%auxiliarycoordinate2'.

  • +
+
+
Get constructs by their identity.
+
>>> print(t)
+Field: air_temperature (ncvar%ta)
+---------------------------------
+Data            : air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K
+Cell methods    : grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees) time(1): maximum
+Field ancils    : air_temperature standard_error(grid_latitude(10), grid_longitude(9)) = [[0.81, ..., 0.78]] K
+Dimension coords: time(1) = [2019-01-01 00:00:00]
+                : atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., kappa]
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: atmosphere_hybrid_height_coordinate
+                : rotated_latitude_longitude
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+>>> print(t.constructs.filter_by_identity('latitude'))
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>}
+>>> print(t.constructs.filter_by_identity('long_name=Grid latitude name'))
+Constructs:
+{'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name=Grid latitude name(10) >}
+>>> print(t.constructs.filter_by_identity('measure:area'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+>>> print(t.constructs.filter_by_identity('ncvar%b'))
+Constructs:
+{'domainancillary1': <DomainAncillary: ncvar%b(1) >}
+
+
+
+

Each construct has an identity method that, by default, returns the +least ambiguous identity (defined in the documentation of a +construct’s identity method); and an identities method that +returns a list of all of the identities that would select the +construct.

+

As a further convenience, selection by construct identity is also +possible by providing identities to a call of a Constructs instance +itself, and this technique for selecting constructs by identity will be +used in the rest of this tutorial:

+
+
Construct selection by identity is possible with via the +“filter_by_identity” method, or directly from the +“Constructs” instance.
+
>>> print(t.constructs.filter_by_identity('latitude'))
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>}
+>>> print(t.constructs('latitude'))
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>}
+
+
+
+

Selection by construct key is useful for systematic metadata construct +access, or for when a metadata construct is not identifiable by other +means:

+
+
Get constructs by construct key.
+
>>> print(t.constructs.filter_by_key('domainancillary2'))
+Constructs:
+{'domainancillary2': <DomainAncillary: surface_altitude(10, 9) m>}
+>>> print(t.constructs.filter_by_key('cellmethod1'))
+Constructs:
+{'cellmethod1': <CellMethod: domainaxis3: maximum>}
+>>> print(t.constructs.filter_by_key('auxiliarycoordinate2', 'cellmeasure0'))
+Constructs:
+{'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name=Grid latitude name(10) >,
+ 'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+
+
+
+

If no constructs match the given criteria, then an “empty” +Constructs instance is returned:

+
+
If no constructs meet the criteria then an empty +“Constructs” object is returned.
+
>>> c = t.constructs('radiation_wavelength')
+>>> c
+<Constructs: >
+>>> print(c)
+Constructs:
+{}
+>>> len(c)
+0
+
+
+
+

The constructs that were not selected by a filter may be returned by +the inverse_filter method applied to the results of +filters:

+
+
Get the constructs that were not selected by a filter.
+
>>> c = t.constructs.filter_by_type('auxiliary_coordinate')
+>>> c
+<Constructs: auxiliary_coordinate(3)>
+>>> c.inverse_filter()
+<Constructs: cell_measure(1), cell_method(2), coordinate_reference(2), dimension_coordinate(4), domain_ancillary(3), domain_axis(4), field_ancillary(1)>
+
+
+
+

Note that selection by construct type is equivalent to using the +particular method of the field construct for retrieving that type of +metadata construct:

+
+
The bespoke methods for retrieving constructs by type +are equivalent to a selection on all of the metadata +constructs.
+
>>> print(t.constructs.filter_by_type('cell_measure'))
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+>>> print(t.cell_measures())
+Constructs:
+{'cellmeasure0': <CellMeasure: measure:area(9, 10) km2>}
+
+
+
+
+
+
+

Metadata construct access

+

An individual metadata construct may be returned, without its +construct key, by any of the following techniques:

+
    +
  • with the construct method of a field construct,

  • +
+
+
Get the “latitude” metadata construct with its construct +identity.
+
>>> t.construct('latitude')
+<AuxiliaryCoordinate: latitude(10, 9) degrees_N>
+
+
+
+ +
+
Get the “latitude” metadata construct key with its construct +identity and use the key to get the construct itself
+
>>> key = t.construct_key('latitude')
+>>> t.construct(key)
+<AuxiliaryCoordinate: latitude(10, 9) degrees_N>
+
+
+
+ +
+
Get the “latitude” metadata construct and its identifier +via its construct identity.
+
>>> key, lat = t.construct_item('latitude')
+('auxiliarycoordinate0', <AuxiliaryCoordinate: latitude(10, 9) degrees_N>)
+
+
+
+
    +
  • by indexing a Constructs instance with a construct key.

  • +
+
+
Get the “latitude” metadata construct via its construct +key and indexing
+
>>> key = t.construct_key('latitude')
+>>> t.constructs[key]
+<AuxiliaryCoordinate: latitude(10, 9) degrees_N>
+
+
+
+ +
+
Get the “latitude” metadata construct via its construct +key and the ‘get’ method.
+
>>> key = t.construct_key('latitude')
+>>> c = t.constructs.get(key)
+<AuxiliaryCoordinate: latitude(10, 9) degrees_N>
+
+
+
+

The construct method of the field construct and the +value method of the Constructs instance will raise an +exception of there is not a unique metadata construct to return, but +this may be replaced with returning a default value or raising a +customised exception:

+
+
By default an exception is raised if there is not a +unique construct that meets the criteria. Alternatively, +the value of the “default” parameter is returned.
+
>>> t.construct('measure:volume')                # Raises Exception
+Traceback (most recent call last):
+   ...
+ValueError: Can't return zero constructs
+>>> t.construct('measure:volume', default=False)
+False
+>>> t.construct('measure:volume', default=Exception("my error"))  # Raises Exception
+Traceback (most recent call last):
+   ...
+Exception: my error
+>>> c = t.constructs.filter_by_measure("volume")
+>>> len(c)
+0
+>>> d = t.constructs("units=degrees")
+>>> len(d)
+2
+>>> t.construct("units=degrees")  # Raises Exception
+Traceback (most recent call last):
+   ...
+ValueError: Field.construct() can't return 2 constructs
+>>> print(t.construct("units=degrees", default=None))
+None
+
+
+
+
+

Metadata construct properties

+

Metadata constructs share the same API as the field construct for accessing their properties:

+
+
Retrieve the “longitude” metadata construct, set a new +property, and then inspect all of the properties.
+
>>> lon = q.construct('longitude')
+>>> lon
+<DimensionCoordinate: longitude(8) degrees_east>
+>>> lon.set_property('long_name', 'Longitude')
+>>> lon.properties()
+{'units': 'degrees_east',
+ 'long_name': 'Longitude',
+ 'standard_name': 'longitude'}
+
+
+
+
+
Get the metadata construct with units of “km2”, find its +canonical identity, and all of its valid identities, that +may be used for selection by the “filter_by_identity” +method
+
>>> area = t.constructs.filter_by_property(units='km2').value()
+>>> area
+<CellMeasure: measure:area(9, 10) km2>
+>>> area.identity()
+'measure:area'
+>>> area.identities()
+['measure:area', 'units=km2', 'ncvar%cell_measure']
+
+
+
+
+
+

Metadata construct data

+

Metadata constructs share the a similar API as the field +construct as the field construct for accessing their data:

+
+
Retrieve the “longitude” metadata construct, inspect its +data, change the third element of the array, and get the +data as a numpy array.
+
>>> lon = q.constructs('longitude').value()
+>>> lon
+<DimensionCoordinate: longitude(8) degrees_east>
+>>> lon.data
+<Data(8): [22.5, ..., 337.5] degrees_east>
+>>> lon.data[2]
+<Data(1): [112.5] degrees_east>
+>>> lon.data[2] = 133.33
+>>> print(lon.data.array)
+[22.5 67.5 133.33 157.5 202.5 247.5 292.5 337.5]
+
+
+
+

The domain axis constructs spanned by a particular metadata +construct’s data are found with the get_data_axes method +of the field construct:

+
+
Find the construct keys of the domain axis constructs +spanned by the data of each metadata construct.
+
>>> key = t.construct_key('latitude')
+>>> key
+'auxiliarycoordinate0'
+>>> t.get_data_axes(key=key)
+('domainaxis1', 'domainaxis2')
+
+
+
+

The domain axis constructs spanned by all the data of all metadata +construct may be found with the data_axes method of the +field construct’s Constructs instance:

+
+
Find the construct keys of the domain axis constructs +spanned by the data of each metadata construct.
+
>>> t.constructs.data_axes()
+{'auxiliarycoordinate0': ('domainaxis1', 'domainaxis2'),
+ 'auxiliarycoordinate1': ('domainaxis2', 'domainaxis1'),
+ 'auxiliarycoordinate2': ('domainaxis1',),
+ 'cellmeasure0': ('domainaxis2', 'domainaxis1'),
+ 'dimensioncoordinate0': ('domainaxis0',),
+ 'dimensioncoordinate1': ('domainaxis1',),
+ 'dimensioncoordinate2': ('domainaxis2',),
+ 'dimensioncoordinate3': ('domainaxis3',),
+ 'domainancillary0': ('domainaxis0',),
+ 'domainancillary1': ('domainaxis0',),
+ 'domainancillary2': ('domainaxis1', 'domainaxis2'),
+ 'fieldancillary0': ('domainaxis1', 'domainaxis2')}
+
+
+
+

A size one domain axis construct that is not spanned by the field +construct’s data may still be spanned by the data of metadata +constructs. For example, the data of the field construct t +does not span the size one domain axis construct +with key 'domainaxis3', but this domain axis construct is spanned +by a “time” dimension coordinate construct (with key +'dimensioncoordinate3'). Such a dimension coordinate (i.e. one +that applies to a domain axis construct that is not spanned by the +field construct’s data) corresponds to a CF-netCDF scalar coordinate +variable.

+
+
+
+
+

Time

+

Constructs representing elapsed time (identified by the presence of +“reference time” units) have data array values that represent elapsed +time since a reference date. These values may be converted into the +date-time objects of the cftime package with the datetime_array +method of the Data instance.

+
+
Inspect the the values of a “time” construct as elapsed +times and as date-times.
+
>>> time = q.construct('time')
+>>> time
+<DimensionCoordinate: time(1) days since 2018-12-01 >
+>>> time.get_property('units')
+'days since 2018-12-01'
+>>> time.get_property('calendar', default='standard')
+'standard'
+>>> print(time.data.array)
+[ 31.]
+>>> print(time.data.datetime_array)
+[cftime.DatetimeGregorian(2019, 1, 1, 0, 0, 0, 0, 1, 1)]
+
+
+
+
+
+
+

Domain

+

The domain of the CF data model is defined +collectively by various other metadata constructs. It is represented +by the Domain class. A domain construct may exist independently, or +is accessed from a field construct with its domain attribute, +or get_domain method.

+
+
Get the domain, and inspect it.
+
>>> domain = t.domain
+>>> domain
+<Domain: {1, 1, 9, 10}>
+>>> print(domain)
+Dimension coords: atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [2.2, ..., -1.76] degrees
+                : grid_longitude(9) = [-4.7, ..., -1.18] degrees
+                : time(1) = [2019-01-01 00:00:00]
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[53.941, ..., 50.225]] degrees_N
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[2.004, ..., 8.156]] degrees_E
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., kappa]
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[2391.9657, ..., 2392.6009]] km2
+Coord references: atmosphere_hybrid_height_coordinate
+                : rotated_latitude_longitude
+Domain ancils   : ncvar%a(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : ncvar%b(atmosphere_hybrid_height_coordinate(1)) = [20.0]
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 270.0]] m
+>>> description = domain.dump(display=False)
+
+
+
+

The domain construct returned by a field construct is not independent +of its parent field instance, i.e. changes to domain construct are +seen by the field construct, and vice versa. This is because, in this +case, the domain instance is a “view” of the relevant metadata +constructs contained in the field construct.

+
+
Change a property of a metadata construct of the domain +and show that this change appears in the same metadata +data construct of the parent field, and vice versa.
+
>>> domain_latitude = t.domain.constructs('latitude').value()
+>>> field_latitude = t.constructs('latitude').value()
+>>> domain_latitude.set_property('test', 'set by domain')
+>>> print(field_latitude.get_property('test'))
+set by domain
+>>> field_latitude.set_property('test', 'set by field')
+>>> print(domain_latitude.get_property('test'))
+set by field
+>>> domain_latitude.del_property('test')
+'set by field'
+>>> field_latitude.has_property('test')
+False
+
+
+
+
+
+
+

Domain axes

+

A domain axis metadata construct specifies the number of points along +an independent axis of the field construct’s domain and is stored in a +DomainAxis instance. The size of the axis is retrieved with +the get_size method of the domain axis construct.

+
+
Get the size of a domain axis construct.
+
>>> print(q.domain_axes())
+Constructs:
+{'domainaxis0': <DomainAxis: size(5)>,
+ 'domainaxis1': <DomainAxis: size(8)>,
+ 'domainaxis2': <DomainAxis: size(1)>}
+>>> d = q.domain_axes().get('domainaxis1')
+>>> d
+<DomainAxis: size(8)>
+>>> d.get_size()
+8
+
+
+
+
+
+
+

Coordinates

+

There are two types of coordinate construct, dimension and auxiliary coordinate +constructs, which can be retrieved together with the +coordinates method of the field construct, as well as +individually with the auxiliary_coordinates and +dimension_coordinates methods.

+
+
Retrieve both types of coordinate constructs.
+
>>> print(t.coordinates())
+Constructs:
+{'auxiliarycoordinate0': <AuxiliaryCoordinate: latitude(10, 9) degrees_N>,
+ 'auxiliarycoordinate1': <AuxiliaryCoordinate: longitude(9, 10) degrees_E>,
+ 'auxiliarycoordinate2': <AuxiliaryCoordinate: long_name=Grid latitude name(10) >,
+ 'dimensioncoordinate0': <DimensionCoordinate: atmosphere_hybrid_height_coordinate(1) >,
+ 'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>,
+ 'dimensioncoordinate2': <DimensionCoordinate: grid_longitude(9) degrees>,
+ 'dimensioncoordinate3': <DimensionCoordinate: time(1) days since 2018-12-01 >}
+
+
+
+
+

Bounds

+

A coordinate construct may contain an array of cell bounds that +provides the extent of each cell by defining the locations of the cell +vertices. This is in addition to the main coordinate data array that +contains a representative grid point location for each cell. The cell +bounds are stored in a Bounds class instance that is accessed with +the bounds attribute, or get_bounds +method, of the coordinate construct.

+

A Bounds instance shares the the same API as the field +construct for accessing its data.

+
+
Get the Bounds instance of a coordinate construct and +inspect its data.
+
>>> lon = t.constructs('grid_longitude').value()
+>>> bounds = lon.bounds
+>>> bounds
+<Bounds: grid_longitude(9, 2) >
+>>> bounds.data
+<Data(9, 2): [[-4.92, ..., -0.96]]>
+>>> print(bounds.data.array)
+[[-4.92 -4.48]
+ [-4.48 -4.04]
+ [-4.04 -3.6 ]
+ [-3.6  -3.16]
+ [-3.16 -2.72]
+ [-2.72 -2.28]
+ [-2.28 -1.84]
+ [-1.84 -1.4 ]
+ [-1.4  -0.96]]
+
+
+
+

The Bounds instance inherits the descriptive properties from its +parent coordinate construct, but it may also have its own properties +(although setting these is not recommended).

+
+
Inspect the inherited and bespoke properties of a Bounds +instance.
+
>>> bounds.inherited_properties()
+{'standard_name': 'grid_longitude',
+ 'units': 'degrees'}
+>>> bounds.properties()
+{}
+
+
+
+
+
+

Geometry cells

+

For many geospatial applications, cell bounds can not be represented +by a simple line or polygon, and different cells may have different +numbers of nodes describing their bounds. For example, if each cell +describes the areal extent of a watershed, then it is likely that some +watersheds will require more nodes than others. Such cells are called +geometries.

+

If a coordinate construct represents geometries then it will have a +“geometry” attribute (not a CF property) with one of the values 'point', +'line' or 'polygon'.

+

This is illustrated with the file geometry.nc (found in the +sample datasets):

+
+
Read and inspect a dataset containing geometry cell +bounds.
+
>>> f = cfdm.read('geometry.nc')[0]
+>>> print(f)
+Field: precipitation_amount (ncvar%pr)
+--------------------------------------
+Data            : precipitation_amount(cf_role=timeseries_id(2), time(4))
+Dimension coords: time(4) = [2000-01-02 00:00:00, ..., 2000-01-05 00:00:00]
+Auxiliary coords: latitude(cf_role=timeseries_id(2)) = [25.0, 7.0] degrees_north
+                : longitude(cf_role=timeseries_id(2)) = [10.0, 40.0] degrees_east
+                : altitude(cf_role=timeseries_id(2)) = [5000.0, 20.0] m
+                : cf_role=timeseries_id(cf_role=timeseries_id(2)) = [b'x1', b'y2']
+Coord references: grid_mapping_name:latitude_longitude
+>>> lon = f.construct('longitude')
+>>> lon.dump()
+Auxiliary coordinate: longitude
+   standard_name = 'longitude'
+   units = 'degrees_east'
+   Data(2) = [10.0, 40.0] degrees_east
+   Geometry: polygon
+   Bounds:axis = 'X'
+   Bounds:standard_name = 'longitude'
+   Bounds:units = 'degrees_east'
+   Bounds:Data(2, 3, 4) = [[[20.0, ..., --]]] degrees_east
+   Interior Ring:Data(2, 3) = [[0, ..., --]]
+>>> lon.get_geometry()
+'polygon'
+
+
+
+

Bounds for geometry cells are also stored in a Bounds instance, but +one that always has two extra trailing dimensions (rather than +one). The fist trailing dimension indexes the distinct parts of a +geometry, and the second indexes the nodes of each part. When a part +has fewer nodes than another, its nodes dimension is padded with +missing data.

+
+
Inspect the geometry nodes.
+
>>> print(lon.bounds.data.array)
+[[20.0 10.0  0.0   --]
+ [ 5.0 10.0 15.0 10.0]
+ [20.0 10.0  0.0   --]]
+
+[[50.0 40.0 30.0   --]
+ [  --   --   --   --]
+ [  --   --   --   --]]]
+
+
+
+

If a cell is composed of multiple polygon parts, an individual polygon +may define an “interior ring”, i.e. a region that is to be omitted +from, as opposed to included in, the cell extent. Such cells also have +an interior ring array that spans the same domain axes as the +coordinate cells, with the addition of one extra dimension that +indexes the parts for each cell. This array records whether each +polygon is to be included or excluded from the cell, with values of +1 or 0 respectively.

+
+
Inspect the interior ring information.
+
>>> print(lon.get_interior_ring().data.array)
+[[0  1  0]
+ [0 -- --]]
+
+
+
+

Note that it is preferable to access the data type, number of +dimensions, dimension sizes and number of elements of the coordinate +construct via the construct’s attributes, rather than the attributes +of the Data instance that provides representative values for each +cell. This is because the representative cell values for geometries +are optional, and if they are missing then the construct attributes +are able to infer these attributes from the bounds.

+

When a field construct containing geometries is written to disk, a +CF-netCDF geometry container variable is automatically created, and +the cells encoded with the compression techniques +defined in the CF conventions.

+
+
+
+
+

Domain ancillaries

+

A domain ancillary construct +provides information which is needed for computing the location of +cells in an alternative coordinate system. If a domain ancillary construct provides extra +coordinates then it may contain cell bounds in addition to its main +data array.

+
+
Get the data and bounds data of a domain ancillary +construct.
+
>>> a = t.constructs.get('domainancillary0')
+>>> print(a.data.array)
+[10.]
+>>> bounds = a.bounds
+>>> bounds
+<Bounds: ncvar%a_bounds(1, 2) >
+>>> print(bounds.data.array)
+[[  5.  15.]]
+
+
+
+
+
+
+

Coordinate systems

+

A field construct may contain various coordinate systems. Each +coordinate system is either defined by a coordinate reference +construct that relates dimension +coordinate, auxiliary coordinate and domain ancillary constructs (as +is the case for the field construct t), or is inferred from +dimension and auxiliary coordinate constructs alone (as is the case +for the field construct q).

+

A coordinate reference construct contains

+
    +
  • references (by construct keys) to the dimension and auxiliary +coordinate constructs to which it applies, accessed with the +coordinates method of the coordinate +reference construct;

  • +
+
    +
  • the zeroes of the dimension and auxiliary coordinate constructs +which define the coordinate system, stored in a Datum instance, +which is accessed with the datum attribute, +or get_datum method, of the coordinate +reference construct; and

  • +
+
    +
  • a formula for converting coordinate values taken from the dimension +or auxiliary coordinate constructs to a different coordinate system, +stored in a CoordinateConversion class instance, which is accessed +with the coordinate_conversion attribute, or +get_coordinate_conversion method, of the +coordinate reference construct.

  • +
+
+
Select the vertical coordinate system construct and +inspect its coordinate constructs.
+
>>> crs = t.constructs('standard_name:atmosphere_hybrid_height_coordinate').value()
+>>> crs
+<CoordinateReference: atmosphere_hybrid_height_coordinate>
+>>> crs.dump()
+Coordinate Reference: atmosphere_hybrid_height_coordinate
+    Coordinate conversion:computed_standard_name = altitude
+    Coordinate conversion:standard_name = atmosphere_hybrid_height_coordinate
+    Coordinate conversion:a = domainancillary0
+    Coordinate conversion:b = domainancillary1
+    Coordinate conversion:orog = domainancillary2
+    Datum:earth_radius = 6371007
+    Coordinate: dimensioncoordinate0
+>>> crs.coordinates()
+{'dimensioncoordinate0'}
+
+
+
+
+
Get the datum and inspect its parameters.
+
>>> crs.datum
+<Datum: Parameters: earth_radius>
+>>> crs.datum.parameters()
+{'earth_radius': 6371007}
+
+
+
+
+
Get the coordinate conversion and inspect its parameters +and referenced domain ancillary constructs.
+
>>> crs.coordinate_conversion
+<CoordinateConversion: Parameters: computed_standard_name, standard_name; Ancillaries: a, b, orog>
+>>> crs.coordinate_conversion.parameters()
+{'computed_standard_name': 'altitude',
+ 'standard_name': 'atmosphere_hybrid_height_coordinate'}
+>>> crs.coordinate_conversion.domain_ancillaries()
+{'a': 'domainancillary0',
+ 'b': 'domainancillary1',
+ 'orog': 'domainancillary2'}
+
+
+
+
+
+
+

Cell methods

+

A cell method construct describes how the data represent the variation +of the physical quantity within the cells of the domain and is stored +in a CellMethod instance. A field constructs allows multiple +cell method constructs to be recorded.

+
+
Inspect the cell methods. The description follows the CF +conventions for cell_method attribute strings, apart from +the use of construct keys instead of netCDF variable +names for cell method axes identification.
+
>>> print(t.cell_methods())
+Constructs:
+{'cellmethod0': <CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>,
+ 'cellmethod1': <CellMethod: domainaxis3: maximum>}
+
+
+
+

The application of cell methods is not commutative (e.g. a mean of +variances is generally not the same as a variance of means), and the +cell methods are assumed to have been applied in the order in which +they were added to the field construct during field construct +creation.

+

The axes to which the method applies, the method itself, and any +qualifying properties are accessed with the +get_axes, get_method, , +get_qualifier and qualifiers +methods of the cell method construct.

+
+
Get the domain axes constructs to which the cell method +construct applies, and the method and other properties.
+
>>> cm = t.constructs('method:mean').value()
+>>> cm
+<CellMethod: domainaxis1: domainaxis2: mean where land (interval: 0.1 degrees)>)
+>>> cm.get_axes()
+('domainaxis1', 'domainaxis2')
+>>> cm.get_method()
+'mean'
+>>> cm.qualifiers()
+{'interval': [<Data(): 0.1 degrees>], 'where': 'land'}
+>>> cm.get_qualifier('where')
+'land'
+
+
+
+
+
+
+

Field ancillaries

+

A field ancillary construct +provides metadata which are distributed over the same domain as the +field construct itself. For example, if a field construct holds a data +retrieved from a satellite instrument, a field ancillary construct +might provide the uncertainty estimates for those retrievals (varying +over the same spatiotemporal domain).

+
+
Get the properties and data of a field ancillary +construct.
+
>>> a = t.get_construct('fieldancillary0')
+>>> a
+<FieldAncillary: air_temperature standard_error(10, 9) K>
+>>> a.properties()
+{'standard_name': 'air_temperature standard_error',
+ 'units': 'K'}
+>>> a.data
+<Data(10, 9): [[0.76, ..., 0.32]] K>
+
+
+
+
+
+
+

Field creation in memory

+

There are various methods for creating a field construct in memory:

+
    +
  • Ab initio creation: Instantiate +instances of field and metadata construct classes and manually +provide the connections between them.

  • +
+
    +
  • Command modification: Produce the +commands that would create an already existing field construct, and +then modify them.

  • +
+
    +
  • Creation by conversion: Convert a +single metadata construct already in memory to an independent field +construct

  • +
+ +
+

Ab initio creation

+

Ab initio creation of a field construct has three stages:

+

Stage 1: The field construct is created without metadata +constructs.

+

Stage 2: Metadata constructs are created independently.

+

Stage 3: The metadata constructs are inserted into the field +construct with cross-references to other, related metadata constructs +if required. For example, an auxiliary coordinate construct is related +to an ordered list of the domain axis constructs which correspond to +its data array dimensions.

+

There are two equivalent approaches to stages 1 and 2.

+

Either as much of the content as possible is specified during object +instantiation:

+
+
Create a field construct with a “standard_name” +property. Create dimension coordinate and field ancillary +constructs, both with properties and data.
+
>>> p = cfdm.Field(properties={'standard_name': 'precipitation_flux'})
+>>> p
+<Field: precipitation_flux>
+>>> dc = cfdm.DimensionCoordinate(properties={'long_name': 'Longitude'},
+...                               data=cfdm.Data([0, 1, 2.]))
+>>> dc
+<DimensionCoordinate: long_name=Longitude(3) >
+>>> fa = cfdm.FieldAncillary(
+...        properties={'standard_name': 'precipitation_flux status_flag'},
+...        data=cfdm.Data(numpy.array([0, 0, 2], dtype='int8')))
+>>> fa
+<FieldAncillary: precipitation_flux status_flag(3) >
+
+
+
+

or else some or all content is added after instantiation via object +methods:

+
+
Create empty constructs and provide them with properties +and data after instantiation.
+
>>> p = cfdm.Field()
+>>> p
+<Field: >
+>>> p.set_property('standard_name', 'precipitation_flux')
+>>> p
+<Field: precipitation_flux>
+>>> dc = cfdm.DimensionCoordinate()
+>>> dc
+<DimensionCoordinate:  >
+>>> dc.set_property('long_name', 'Longitude')
+>>> dc.set_data(cfdm.Data([1, 2, 3.]))
+>>> dc
+<DimensionCoordinate: long_name=Longitude(3) >
+>>> fa = cfdm.FieldAncillary(
+...        data=cfdm.Data(numpy.array([0, 0, 2], dtype='int8')))
+>>> fa
+<FieldAncillary: (3) >
+>>> fa.set_property('standard_name', 'precipitation_flux status_flag')
+>>> fa
+<FieldAncillary: precipitation_flux status_flag(3) >
+
+
+
+

For stage 3, the set_construct method of the field +construct is used for setting metadata constructs and mapping data +array dimensions to domain axis constructs. This method returns the +construct key for the metadata construct which can be used when other +metadata constructs are added to the field (e.g. to specify which +domain axis constructs correspond to a data array), or when other +metadata constructs are created (e.g. to identify the domain ancillary +constructs forming part of a coordinate reference construct):

+
+
Set a domain axis construct and use its construct key +when setting the dimension coordinate construct. Also +create a cell method construct that applies to the domain +axis construct.
+
>>> longitude_axis = p.set_construct(cfdm.DomainAxis(3))
+>>> longitude_axis
+'domainaxis0'
+>>> key = p.set_construct(dc, axes=longitude_axis)
+>>> key
+'dimensioncoordinate0'
+>>> cm = cfdm.CellMethod(axes=longitude_axis, method='minimum')
+>>> p.set_construct(cm)
+'cellmethod0'
+
+
+
+

In general, the order in which metadata constructs are added to the +field does not matter, except when one metadata construct is required +by another, in which case the former must be added to the field first +so that its construct key is available to the latter. Cell method +constructs must, however, be set in the relative order in which their +methods were applied to the data.

+

The domain axis constructs spanned by a metadata construct’s data may +be changed after insertion with the set_data_axes method of +the field construct.

+
+
Create a field construct with properties; data; and +domain axis, cell method and dimension coordinate +metadata constructs (data arrays have been generated with +dummy values using numpy.arange).
+
import numpy
+import cfdm
+
+# Initialise the field construct with properties
+Q = cfdm.Field(
+          properties={'project': 'research',
+                           'standard_name': 'specific_humidity',
+                           'units': '1'})
+
+# Create the domain axis constructs
+domain_axisT = cfdm.DomainAxis(1)
+domain_axisY = cfdm.DomainAxis(5)
+domain_axisX = cfdm.DomainAxis(8)
+
+# Insert the domain axis constructs into the field. The
+# set_construct method returns the domain axis construct key that
+# will be used later to specify which domain axis corresponds to
+# which dimension coordinate construct.
+axisT = Q.set_construct(domain_axisT)
+axisY = Q.set_construct(domain_axisY)
+axisX = Q.set_construct(domain_axisX)
+
+# Create and insert the field construct data
+data = cfdm.Data(numpy.arange(40.).reshape(5, 8))
+Q.set_data(data, axes=[axisY, axisX])
+
+# Create the cell method constructs
+cell_method1 = cfdm.CellMethod(axes='area', method='mean')
+
+cell_method2 = cfdm.CellMethod()
+cell_method2.set_axes(axisT)
+cell_method2.set_method('maximum')
+
+# Insert the cell method constructs into the field in the same
+# order that their methods were applied to the data
+Q.set_construct(cell_method1)
+Q.set_construct(cell_method2)
+
+# Create a "time" dimension coordinate construct, with coordinate
+# bounds
+dimT = cfdm.DimensionCoordinate(
+                            properties={'standard_name': 'time',
+                                        'units': 'days since 2018-12-01'},
+                            data=cfdm.Data([15.5]),
+                            bounds=cfdm.Bounds(data=cfdm.Data([[0,31.]])))
+
+# Create a "longitude" dimension coordinate construct, without
+# coordinate bounds
+dimX = cfdm.DimensionCoordinate(data=cfdm.Data(numpy.arange(8.)))
+dimX.set_properties({'standard_name': 'longitude',
+                     'units': 'degrees_east'})
+
+# Create a "longitude" dimension coordinate construct
+dimY = cfdm.DimensionCoordinate(properties={'standard_name': 'latitude',
+                                            'units': 'degrees_north'})
+array = numpy.arange(5.)
+dimY.set_data(cfdm.Data(array))
+
+# Create and insert the latitude coordinate bounds
+bounds_array = numpy.empty((5, 2))
+bounds_array[:, 0] = array - 0.5
+bounds_array[:, 1] = array + 0.5
+bounds = cfdm.Bounds(data=cfdm.Data(bounds_array))
+dimY.set_bounds(bounds)
+
+# Insert the dimension coordinate constructs into the field,
+# specifying to # which domain axis each one corresponds
+Q.set_construct(dimT, axes=axisT)
+Q.set_construct(dimY, axes=axisY)
+Q.set_construct(dimX, axes=axisX)
+
+
+
+
+
Inspect the new field construct.
+
>>> Q.dump()
+------------------------
+Field: specific_humidity
+------------------------
+project = 'research'
+standard_name = 'specific_humidity'
+units = '1'
+
+Data(latitude(5), longitude(8)) = [[0.0, ..., 39.0]] 1
+
+Cell Method: area: mean
+Cell Method: time(1): maximum
+
+Domain Axis: latitude(5)
+Domain Axis: longitude(8)
+Domain Axis: time(1)
+
+Dimension coordinate: time
+    standard_name = 'time'
+    units = 'days since 2018-12-01'
+    Data(time(1)) = [2018-12-16 12:00:00]
+    Bounds:Data(time(1), 2) = [[2018-12-01 00:00:00, 2019-01-01 00:00:00]]
+
+Dimension coordinate: latitude
+    standard_name = 'latitude'
+    units = 'degrees_north'
+    Data(latitude(5)) = [0.0, ..., 4.0] degrees_north
+    Bounds:Data(latitude(5), 2) = [[-0.5, ..., 4.5]] degrees_north
+
+Dimension coordinate: longitude
+    standard_name = 'longitude'
+    units = 'degrees_east'
+    Data(longitude(8)) = [0.0, ..., 7.0] degrees_east
+
+
+
+

The Conventions property does not need to be set because it is +automatically included in output files as a netCDF global +Conventions attribute, either as the CF version of the cfdm +package (as returned by the cfdm.CF function), or else specified via +the Conventions keyword of the cfdm.write function. See the +section on Writing to disk for details on how to specify +additional conventions.

+

If this field were to be written to a netCDF dataset then, in the +absence of predefined names, default netCDF variable and dimension +names would be automatically generated (based on standard names where +they exist). The setting of bespoke netCDF names is, however, easily +done with the netCDF interface.

+
+
Set netCDF variable and dimension names for the field +and metadata constructs.
+
Q.nc_set_variable('q')
+
+domain_axisT.nc_set_dimension('time')
+domain_axisY.nc_set_dimension('lat')
+domain_axisX.nc_set_dimension('lon')
+
+dimT.nc_set_variable('time')
+dimY.nc_set_variable('lat')
+dimX.nc_set_variable('lon')
+
+
+
+

Here is a more complete example which creates a field construct that +contains every type of metadata construct (again, data arrays have +been generated with dummy values using numpy.arange):

+
+
Create a field construct that contains at least one +instance of each type of metadata construct.
+
import numpy
+import cfdm
+
+# Initialize the field construct
+tas = cfdm.Field(
+    properties={'project': 'research',
+                'standard_name': 'air_temperature',
+                'units': 'K'})
+
+# Create and set domain axis constructs
+axis_T = tas.set_construct(cfdm.DomainAxis(1))
+axis_Z = tas.set_construct(cfdm.DomainAxis(1))
+axis_Y = tas.set_construct(cfdm.DomainAxis(10))
+axis_X = tas.set_construct(cfdm.DomainAxis(9))
+
+# Set the field construct data
+tas.set_data(cfdm.Data(numpy.arange(90.).reshape(10, 9)),
+             axes=[axis_Y, axis_X])
+
+# Create and set the cell method constructs
+cell_method1 = cfdm.CellMethod(
+          axes=[axis_Y, axis_X],
+          method='mean',
+          qualifiers={'where': 'land',
+                      'interval': [cfdm.Data(0.1, units='degrees')]})
+
+cell_method2 = cfdm.CellMethod(axes=axis_T, method='maximum')
+
+tas.set_construct(cell_method1)
+tas.set_construct(cell_method2)
+
+# Create and set the field ancillary constructs
+field_ancillary = cfdm.FieldAncillary(
+             properties={'standard_name': 'air_temperature standard_error',
+                          'units': 'K'},
+             data=cfdm.Data(numpy.arange(90.).reshape(10, 9)))
+
+tas.set_construct(field_ancillary, axes=[axis_Y, axis_X])
+
+# Create and set the dimension coordinate constructs
+dimension_coordinate_T = cfdm.DimensionCoordinate(
+                           properties={'standard_name': 'time',
+                                       'units': 'days since 2018-12-01'},
+                           data=cfdm.Data([15.5]),
+                           bounds=cfdm.Bounds(data=cfdm.Data([[0., 31]])))
+
+dimension_coordinate_Z = cfdm.DimensionCoordinate(
+        properties={'computed_standard_name': 'altitude',
+                    'standard_name': 'atmosphere_hybrid_height_coordinate'},
+        data = cfdm.Data([1.5]),
+        bounds=cfdm.Bounds(data=cfdm.Data([[1.0, 2.0]])))
+
+dimension_coordinate_Y = cfdm.DimensionCoordinate(
+        properties={'standard_name': 'grid_latitude',
+                    'units': 'degrees'},
+        data=cfdm.Data(numpy.arange(10.)),
+        bounds=cfdm.Bounds(data=cfdm.Data(numpy.arange(20).reshape(10, 2))))
+
+dimension_coordinate_X = cfdm.DimensionCoordinate(
+        properties={'standard_name': 'grid_longitude',
+                    'units': 'degrees'},
+    data=cfdm.Data(numpy.arange(9.)),
+    bounds=cfdm.Bounds(data=cfdm.Data(numpy.arange(18).reshape(9, 2))))
+
+dim_T = tas.set_construct(dimension_coordinate_T, axes=axis_T)
+dim_Z = tas.set_construct(dimension_coordinate_Z, axes=axis_Z)
+dim_Y = tas.set_construct(dimension_coordinate_Y, axes=axis_Y)
+dim_X = tas.set_construct(dimension_coordinate_X, axes=axis_X)
+
+# Create and set the auxiliary coordinate constructs
+auxiliary_coordinate_lat = cfdm.AuxiliaryCoordinate(
+                      properties={'standard_name': 'latitude',
+                                  'units': 'degrees_north'},
+                      data=cfdm.Data(numpy.arange(90.).reshape(10, 9)))
+
+auxiliary_coordinate_lon = cfdm.AuxiliaryCoordinate(
+                  properties={'standard_name': 'longitude',
+                              'units': 'degrees_east'},
+                  data=cfdm.Data(numpy.arange(90.).reshape(9, 10)))
+
+array = numpy.ma.array(list('abcdefghij'))
+array[0] = numpy.ma.masked
+auxiliary_coordinate_name = cfdm.AuxiliaryCoordinate(
+                       properties={'long_name': 'Grid latitude name'},
+                       data=cfdm.Data(array))
+
+aux_LAT  = tas.set_construct(auxiliary_coordinate_lat, axes=[axis_Y, axis_X])
+aux_LON  = tas.set_construct(auxiliary_coordinate_lon, axes=[axis_X, axis_Y])
+aux_NAME = tas.set_construct(auxiliary_coordinate_name, axes=[axis_Y])
+
+# Create and set domain ancillary constructs
+domain_ancillary_a = cfdm.DomainAncillary(
+                   properties={'units': 'm'},
+                   data=cfdm.Data([10.]),
+                   bounds=cfdm.Bounds(data=cfdm.Data([[5., 15.]])))
+
+domain_ancillary_b = cfdm.DomainAncillary(
+                       properties={'units': '1'},
+                       data=cfdm.Data([20.]),
+                       bounds=cfdm.Bounds(data=cfdm.Data([[14, 26.]])))
+
+domain_ancillary_orog = cfdm.DomainAncillary(
+                          properties={'standard_name': 'surface_altitude',
+                                      'units': 'm'},
+                          data=cfdm.Data(numpy.arange(90.).reshape(10, 9)))
+
+domain_anc_A    = tas.set_construct(domain_ancillary_a, axes=axis_Z)
+domain_anc_B    = tas.set_construct(domain_ancillary_b, axes=axis_Z)
+domain_anc_OROG = tas.set_construct(domain_ancillary_orog,
+                                    axes=[axis_Y, axis_X])
+
+# Create the datum for the coordinate reference constructs
+datum = cfdm.Datum(parameters={'earth_radius': 6371007.})
+
+# Create the coordinate conversion for the horizontal coordinate
+# reference construct
+coordinate_conversion_h = cfdm.CoordinateConversion(
+              parameters={'grid_mapping_name': 'rotated_latitude_longitude',
+                          'grid_north_pole_latitude': 38.0,
+                          'grid_north_pole_longitude': 190.0})
+
+# Create the coordinate conversion for the vertical coordinate
+# reference construct
+coordinate_conversion_v = cfdm.CoordinateConversion(
+         parameters={'standard_name': 'atmosphere_hybrid_height_coordinate',
+                     'computed_standard_name': 'altitude'},
+         domain_ancillaries={'a': domain_anc_A,
+                             'b': domain_anc_B,
+                             'orog': domain_anc_OROG})
+
+# Create the vertical coordinate reference construct
+horizontal_crs = cfdm.CoordinateReference(
+                   datum=datum,
+                   coordinate_conversion=coordinate_conversion_h,
+                   coordinates=[dim_X,
+                                dim_Y,
+                                aux_LAT,
+                                aux_LON])
+
+# Create the vertical coordinate reference construct
+vertical_crs = cfdm.CoordinateReference(
+                 datum=datum,
+                 coordinate_conversion=coordinate_conversion_v,
+                 coordinates=[dim_Z])
+
+# Set the coordinate reference constructs
+tas.set_construct(horizontal_crs)
+tas.set_construct(vertical_crs)
+
+# Create and set the cell measure constructs
+cell_measure = cfdm.CellMeasure(measure='area',
+                 properties={'units': 'km2'},
+                 data=cfdm.Data(numpy.arange(90.).reshape(9, 10)))
+
+tas.set_construct(cell_measure, axes=[axis_X, axis_Y])
+
+
+
+

The new field construct may now be inspected:

+
+
Inspect the new field construct.
+
>>> print(tas)
+Field: air_temperature
+----------------------
+Data            : air_temperature(grid_latitude(10), grid_longitude(9)) K
+Cell methods    : grid_latitude(10): grid_longitude(9): mean where land (interval: 0.1 degrees) time(1): maximum
+Field ancils    : air_temperature standard_error(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 89.0]] K
+Dimension coords: time(1) = [2018-12-16 12:00:00]
+                : atmosphere_hybrid_height_coordinate(1) = [1.5]
+                : grid_latitude(10) = [0.0, ..., 9.0] degrees
+                : grid_longitude(9) = [0.0, ..., 8.0] degrees
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 89.0]] degrees_north
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[0.0, ..., 89.0]] degrees_east
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., j]
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[0.0, ..., 89.0]] km2
+Coord references: atmosphere_hybrid_height_coordinate
+                : rotated_latitude_longitude
+Domain ancils   : key%domainancillary0(atmosphere_hybrid_height_coordinate(1)) = [10.0] m
+                : key%domainancillary1(atmosphere_hybrid_height_coordinate(1)) = [20.0] 1
+                : surface_altitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 89.0]] m
+
+
+
+
+
+

Command modification

+

It is sometimes convenient to produce the commands that would create +an already existing field construct, and then modify them to create +the desired field construct. The commands are produced by the +creation_commands method of the existing field construct.

+
+
Produce the commands that would create an existing field +construct.
+
>>> q, t = cfdm.read('file.nc')
+>>> print(q.creation_commands())
+#
+# field: specific_humidity
+field = cfdm.Field()
+field.set_properties({'Conventions': 'CF-1.9', 'project': 'research', 'standard_name': 'specific_humidity', 'units': '1'})
+field.nc_set_variable('q')
+data = cfdm.Data([[0.007, 0.034, 0.003, 0.014, 0.018, 0.037, 0.024, 0.029], [0.023, 0.036, 0.045, 0.062, 0.046, 0.073, 0.006, 0.066], [0.11, 0.131, 0.124, 0.146, 0.087, 0.103, 0.057, 0.011], [0.029, 0.059, 0.039, 0.07, 0.058, 0.072, 0.009, 0.017], [0.006, 0.036, 0.019, 0.035, 0.018, 0.037, 0.034, 0.013]], units='1', dtype='f8')
+field.set_data(data)
+#
+# domain_axis: ncdim%lat
+c = cfdm.DomainAxis()
+c.set_size(5)
+c.nc_set_dimension('lat')
+field.set_construct(c, key='domainaxis0', copy=False)
+#
+# domain_axis: ncdim%lon
+c = cfdm.DomainAxis()
+c.set_size(8)
+c.nc_set_dimension('lon')
+field.set_construct(c, key='domainaxis1', copy=False)
+#
+# domain_axis:
+c = cfdm.DomainAxis()
+c.set_size(1)
+field.set_construct(c, key='domainaxis2', copy=False)
+#
+# dimension_coordinate: latitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_north', 'standard_name': 'latitude'})
+c.nc_set_variable('lat')
+data = cfdm.Data([-75.0, -45.0, 0.0, 45.0, 75.0], units='degrees_north', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lat_bnds')
+data = cfdm.Data([[-90.0, -60.0], [-60.0, -30.0], [-30.0, 30.0], [30.0, 60.0], [60.0, 90.0]], units='degrees_north', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+field.set_construct(c, axes=('domainaxis0',), key='dimensioncoordinate0', copy=False)
+#
+# dimension_coordinate: longitude
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'degrees_east', 'standard_name': 'longitude'})
+c.nc_set_variable('lon')
+data = cfdm.Data([22.5, 67.5, 112.5, 157.5, 202.5, 247.5, 292.5, 337.5], units='degrees_east', dtype='f8')
+c.set_data(data)
+b = cfdm.Bounds()
+b.nc_set_variable('lon_bnds')
+data = cfdm.Data([[0.0, 45.0], [45.0, 90.0], [90.0, 135.0], [135.0, 180.0], [180.0, 225.0], [225.0, 270.0], [270.0, 315.0], [315.0, 360.0]], units='degrees_east', dtype='f8')
+b.set_data(data)
+c.set_bounds(b)
+field.set_construct(c, axes=('domainaxis1',), key='dimensioncoordinate1', copy=False)
+#
+# dimension_coordinate: time
+c = cfdm.DimensionCoordinate()
+c.set_properties({'units': 'days since 2018-12-01', 'standard_name': 'time'})
+c.nc_set_variable('time')
+data = cfdm.Data([31.0], units='days since 2018-12-01', dtype='f8')
+c.set_data(data)
+field.set_construct(c, axes=('domainaxis2',), key='dimensioncoordinate2', copy=False)
+#
+# cell_method: mean
+c = cfdm.CellMethod()
+c.set_method('mean')
+c.set_axes(('area',))
+field.set_construct(c)
+#
+# field data axes
+field.set_data_axes(('domainaxis0', 'domainaxis1'))
+
+
+
+

Some example fields are always available from the cfdm.example_field +function.

+
+
+

Creating data from an array on disk

+

All the of above examples use arrays in memory to construct the data +instances for the field and metadata constructs. It is, however, +possible to create data from arrays that reside on disk. The +cfdm.read function creates data in this manner. A pointer to an +array in a netCDF file can be stored in a NetCDFArray +instance, which is is used to initialize a Data instance.

+
+
Define a variable from a dataset with the netCDF package +and use it to create a NetCDFArray instance with which to +initialize a Data instance.
+
>>> import netCDF4
+>>> nc = netCDF4.Dataset('file.nc', 'r')
+>>> v = nc.variables['ta']
+>>> netcdf_array = cfdm.NetCDFArray(filename='file.nc', ncvar='ta',
+...                                 dtype=v.dtype, ndim=v.ndim,
+...                                 shape=v.shape, size=v.size)
+>>> data_disk = cfdm.Data(netcdf_array)
+
+
+
+
+
Read the netCDF variable’s data into memory and +initialise another Data instance with it. Compare the +values of the two data instances.
+
>>> numpy_array = v[...]
+>>> data_memory = cfdm.Data(numpy_array)
+>>> data_disk.equals(data_memory)
+True
+
+
+
+

Note that data type, number of dimensions, dimension sizes and number +of elements of the array on disk that are used to initialize the +NetCDFArray instance are those expected by the CF data model, +which may be different to those of the netCDF variable in the file +(although they are the same in the above example). For example, a +netCDF character array of shape (12, 9) is viewed in cfdm as a +one-dimensional string array of shape (12,).

+
+
+

Creation by conversion

+

An independent field construct may be created from an existing +metadata construct using convert method of the field +construct, which identifies a unique metadata construct and returns a +new field construct based on its properties and data. The new field +construct always has domain axis constructs corresponding to +the data, and (by default) any other metadata constructs that further +define its domain.

+
+
Create an independent field construct from the “surface +altitude” metadata construct.
+
>>> key = tas.construct_key('surface_altitude')
+>>> orog = tas.convert(key)
+>>> print(orog)
+Field: surface_altitude
+-----------------------
+Data            : surface_altitude(grid_latitude(10), grid_longitude(9)) m
+Dimension coords: grid_latitude(10) = [0.0, ..., 9.0] degrees
+                : grid_longitude(9) = [0.0, ..., 8.0] degrees
+Auxiliary coords: latitude(grid_latitude(10), grid_longitude(9)) = [[0.0, ..., 89.0]] degrees_north
+                : longitude(grid_longitude(9), grid_latitude(10)) = [[0.0, ..., 89.0]] degrees_east
+                : long_name=Grid latitude name(grid_latitude(10)) = [--, ..., j]
+Cell measures   : measure:area(grid_longitude(9), grid_latitude(10)) = [[0.0, ..., 89.0]] km2
+Coord references: rotated_latitude_longitude
+
+
+
+

The convert method has an option to only include domain axis +constructs in the new field construct, with no other metadata +constructs.

+
+
Create an independent field construct from the “surface +altitude” metadata construct, but without a complete +domain.
+
>>> orog1 = tas.convert(key, full_domain=False)
+>>> print(orog1)
+Field: surface_altitude
+-----------------------
+Data            : surface_altitude(key%domainaxis2(10), key%domainaxis3(9)) m
+
+
+
+
+
+

Creation by reading

+

The cfdm.read function reads a netCDF dataset and returns the contents as a list of zero or more +field constructs, each one corresponding to a unique CF-netCDF data +variable in the dataset. For example, the field construct tas that +was created manually can be written to a netCDF dataset and then read back into memory:

+
+
Write the field construct that was created manually to +disk, and then read it back into a new field construct.
+
>>> cfdm.write(tas, 'tas.nc')
+>>> f = cfdm.read('tas.nc')
+>>> f
+[<Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+
+
+
+

The cfdm.read function also allows field constructs to be derived +directly from the netCDF variables that correspond to particular types +metadata constructs. In this case, the new field constructs will have +a domain limited to that which can be inferred from the corresponding +netCDF variable, but without the connections that are defined by the +parent netCDF data variable. This will often result in a new field +construct that has fewer metadata constructs than one created with the +convert method.

+
+
Read the file, treating formula terms netCDF variables +(which map to domain ancillary constructs) as additional +CF-netCDF data variables.
+
>>> fields = cfdm.read('tas.nc', extra='domain_ancillary')
+>>> fields
+[<Field: ncvar%a(atmosphere_hybrid_height_coordinate(1)) m>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>,
+ <Field: ncvar%b(atmosphere_hybrid_height_coordinate(1)) 1>,
+ <Field: surface_altitude(grid_latitude(10), grid_longitude(9)) m>]
+>>> orog_from_file = fields[3]
+>>> print(orog_from_file)
+Field: surface_altitude (ncvar%surface_altitude)
+------------------------------------------------
+Data            : surface_altitude(grid_latitude(10), grid_longitude(9)) m
+Dimension coords: grid_latitude(10) = [0.0, ..., 9.0] degrees
+                : grid_longitude(9) = [0.0, ..., 8.0] degrees
+
+
+
+

Comparing the field constructs orog_from_file (created with +cfdm.read) and orog (created with the convert method of +the tas field construct), the former lacks the auxiliary +coordinate, cell measure and coordinate reference constructs of the +latter. This is because the surface altitude netCDF variable in +tas.nc does not have the coordinates, cell_measures nor +grid_mapping netCDF attributes that would link it to auxiliary +coordinate, cell measure and grid mapping netCDF variables.

+
+ +
+
+

Copying

+

A field construct may be copied with its copy method. This +produces a “deep copy”, i.e. the new field construct is completely +independent of the original field.

+
+
Copy a field construct and change elements of the copy, +showing that the original field construct has not been +altered.
+
>>> u = t.copy()
+>>> u.data[0, 0, 0] = -1e30
+>>> u.data[0, 0, 0]
+<Data(1, 1, 1): [[[-1e+30]]] K>
+>>> t.data[0, 0, 0]
+<Data(1, 1, 1): [[[-1.0]]] K>
+>>> u.del_construct('grid_latitude')
+<DimensionCoordinate: grid_latitude(10) degrees>
+>>> u.constructs('grid_latitude')
+Constructs:
+{}
+>>> t.constructs('grid_latitude')
+Constructs:
+{'dimensioncoordinate1': <DimensionCoordinate: grid_latitude(10) degrees>}
+
+
+
+

Equivalently, the copy.deepcopy function may be used:

+
+
Copy a field construct with the built-in copy module.
+
>>> import copy
+>>> u = copy.deepcopy(t)
+
+
+
+

Metadata constructs may be copied individually in the same manner:

+
+
Copy a metadata construct.
+
>>> orog = t.constructs('surface_altitude').value().copy()
+
+
+
+

Arrays within Data instances are copied with a copy-on-write technique. This means +that a copy takes up very little memory, even when the original +constructs contain very large data arrays, and the copy operation is +fast.

+
+
+
+

Equality

+

Whether or not two field constructs are the same is tested with either +field construct’s equals method.

+
+
A field construct is always equal to itself, a copy of +itself and a complete subspace of itself. The “verbose” +keyword will give some (but not necessarily all) of the +reasons why two field constructs are not the same.
+
>>> t.equals(t)
+True
+>>> t.equals(t.copy())
+True
+>>> t.equals(t[...])
+True
+>>> t.equals(q)
+False
+>>> t.equals(q, verbose=True)
+Field: Different units: 'K', '1'
+Field: Different properties
+False
+
+
+
+

Equality is strict by default. This means that for two field +constructs to be considered equal they must have corresponding +metadata constructs and for each pair of constructs:

+
    +
  • the descriptive properties must be the same (with the exception of +the field construct’s Conventions property, which is never +checked), and vector-valued properties must have same the size and +be element-wise equal, and

  • +
  • if there are data arrays then they must have same shape, data type +and be element-wise equal.

  • +
+

Two real numbers \(x\) and \(y\) are considered equal if +\(|x - y| \le a_{tol} + r_{tol}|y|\), where \(a_{tol}\) (the +tolerance on absolute differences) and \(r_{tol}\) (the tolerance +on relative differences) are positive, typically very small +numbers. By default both are set to the system epsilon (the difference +between 1 and the least value greater than 1 that is representable as +a float). Their values may be inspected and changed with the +cfdm.atol and cfdm.rtol functions.

+

Note that the above equation is not symmetric in \(x\) and +\(y\), so that for two fields f1 and f2, f1.equals(f2) +may be different from f2.equals(f1) in some rare cases.

+
+
The atol and rtol functions allow the numerical equality +tolerances to be inspected and changed.
+
>>> print(cfdm.atol())
+2.220446049250313e-16
+>>> print(cfdm.rtol())
+2.220446049250313e-16
+>>> original = cfdm.rtol(0.00001)
+>>> print(cfdm.rtol())
+1e-05
+>>> print(cfdm.rtol(original))
+1e-05
+>>> print(cfdm.rtol())
+2.220446049250313e-16
+
+
+
+

The \(a_{tol}\) and \(r_{tol}\) constants may be set for a +runtime context established using a with statement.

+
+
Create a runtime contenxt with a different value of +‘atol’.
+
>>> print(cfdm.atol())
+2.220446049250313e-16
+>>> with cfdm.atol(1e-5):
+...     print(cfdm.atol())
+...
+1e-05
+>>> print(cfdm.atol())
+2.220446049250313e-16
+
+
+
+

NetCDF elements, such as netCDF variable and dimension names, do not +constitute part of the CF data model and so are not checked on any +construct.

+

The equals method has optional parameters for modifying the +criteria for considering two fields to be equal:

+
    +
  • named properties may be omitted from the comparison,

  • +
  • fill value and missing data value properties may be ignored,

  • +
  • the data type of data arrays may be ignored, and

  • +
  • the tolerances on absolute and relative differences for numerical +comparisons may be temporarily changed, without changing the default +settings.

  • +
+

Metadata constructs may also be tested for equality:

+
+
Metadata constructs also have an equals method, that +behaves in a similar manner.
+
>>> orog = t.constructs('surface_altitude').value()
+>>> orog.equals(orog.copy())
+True
+
+
+
+
+
+
+

NetCDF interface

+

The logical CF data model is independent of netCDF, but the CF +conventions are designed to enable the processing and sharing of +datasets stored in netCDF files. Therefore, the cfdm package includes +methods for recording and editing netCDF elements that are not part of +the CF model, but are nonetheless often required to interpret and +create CF-netCDF datasets. See the section on philosophy for a further discussion.

+

When a netCDF dataset is read, netCDF elements (such as dimension and +variable names, and some attribute values) that do not have a place in +the CF data model are, nevertheless, stored within the appropriate +cfdm constructs. This allows them to be used when writing field +constructs to a new netCDF dataset, and also makes them accessible as +filters to a Constructs instance:

+
+
Retrieve metadata constructs based on their netCDF +names.
+
>>> print(t.constructs.filter_by_ncvar('b'))
+Constructs:
+{'domainancillary1': <DomainAncillary: ncvar%b(1) >}
+>>> t.constructs('ncvar%x').value()
+<DimensionCoordinate: grid_longitude(9) degrees>
+>>> t.constructs('ncdim%x')
+<Constructs: domain_axis(1)>
+
+
+
+

Each construct has methods to access the netCDF elements which it +requires. For example, the field construct has the following methods:

+ ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Method

Description

nc_get_variable

Return the netCDF variable name

nc_set_variable

Set the netCDF variable name

nc_del_variable

Remove the netCDF variable name

nc_has_variable

Whether the netCDF variable name has +been set

nc_global_attributes

Return the selection of properties to +be written as netCDF global attributes

nc_set_global_attribute

Set a property to be written as a +netCDF global attribute

nc_set_global_attributes

Set properties to be written as +netCDF global attributes

nc_clear_global_attributes

Clear the selection of properties +to be written as netCDF global +attributes

nc_group_attributes

Return the selection of properties to +be written as netCDF group attributes

nc_set_group_attribute

Set a property to be written as a +netCDF group attribute

nc_set_group_attributes

Set properties to be written as +netCDF group attributes

nc_clear_group_attributes

Clear the selection of properties +to be written as netCDF group +attributes

nc_variable_groups

Return the netCDF group structure

nc_set_variable_groups

Set the netCDF group structure

nc_clear_variable_groups

Remove the netCDF group structure

nc_geometry_variable_groups

Return the netCDF geometry +variable group structure

nc_set_geometry_variable_groups

Set the netCDF geometry +variable group structure

nc_clear_geometry_variable_groups

Remove the netCDF geometry +variable group structure

nc_del_component_variable

Remove the netCDF variable name for +all components of the given type.

nc_set_component_variable

Set the netCDF variable name for all +components of the given type.

nc_set_component_variable_groups

Set the netCDF variable groups +hierarchy for all components of +the given type.

nc_clear_component_variable_groups

Remove the netCDF variable groups +hierarchy for all components of the +given type.

nc_del_component_dimension

Remove the netCDF dimension name for +all components of the given type.

nc_set_component_dimension

Set the netCDF dimension name for all +components of the given type.

nc_set_component_dimension_groups

Set the netCDF dimension groups +hierarchy for all components of the +given type.

nc_clear_component_dimension_groups

Remove the netCDF dimension groups +hierarchy for all components of the +given type.

nc_del_component_sample_dimension

Remove the netCDF sample dimension +name for all components of the given type.

nc_set_component_sample_dimension

Set the netCDF sample dimension name +for all components of the given type.

nc_set_component_sample_dimension_groups

Set the netCDF sample dimension +groups hierarchy for all components +of the given type.

nc_clear_component_sample_dimension_groups

Remove the netCDF sample dimension +groups hierarchy for all components +of the given type.

+
+
Access netCDF elements associated with the field and +metadata constructs.
+
>>> q.nc_get_variable()
+'q'
+>>> q.nc_global_attributes()
+{'project': None, 'Conventions': None}
+>>> q.nc_set_variable('humidity')
+>>> q.nc_get_variable()
+'humidity'
+>>> q.constructs('latitude').value().nc_get_variable()
+'lat'
+
+
+
+

The complete collection of netCDF interface methods is:

+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Method

Classes

NetCDF element

nc_del_variable

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Variable name

nc_get_variable

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Variable name

nc_has_variable

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Variable name

nc_set_variable

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Variable name

nc_variable_groups

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Group hierarchy

nc_set_variable_groups

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Group hierarchy

nc_clear_variable_groups

Field, DimensionCoordinate, +AuxiliaryCoordinate, CellMeasure, +DomainAncillary, FieldAncillary, +CoordinateReference, Bounds, +Datum, Count, Index, List

Group hierarchy

nc_del_dimension

DomainAxis, Bounds, Count, +Index

Dimension name

nc_get_dimension

DomainAxis, Bounds, Count, +Index

Dimension name

nc_has_dimension

DomainAxis, Bounds, Count, +Index

Dimension name

nc_set_dimension

DomainAxis, Bounds, Count, +Index

Dimension name

nc_dimension_groups

DomainAxis, Bounds, Count, +Index

Group hierarchy

nc_set_dimension_groups

DomainAxis, Bounds, Count, +Index

Group hierarchy

nc_clear_dimension_groups

DomainAxis, Bounds, Count, +Index

Group hierarchy

nc_is_unlimited

DomainAxis

Unlimited dimension

nc_set_unlimited

DomainAxis

Unlimited dimension

nc_global_attributes

Field

Global attributes

nc_set_global_attribute

Field

Global attributes

nc_set_global_attributes

Field

Global attributes

nc_clear_global_attributes

Field

Global attributes

nc_variable_groups

Field

Group hierarchy

nc_set_variable_groups

Field

Group hierarchy

nc_clear_variable_groups

Field

Group hierarchy

nc_geometry_variable_groups

Field

Group hierarchy

nc_set_geometry_variable_groups

Field

Group hierarchy

nc_clear_geometry_variable_groups

Field

Group hierarchy

nc_group_attributes

Field

Group attributes

nc_set_group_attribute

Field

Group attributes

nc_set_group_attributes

Field

Group attributes

nc_clear_group_attributes

Field

Group attributes

nc_del_component_variable

Field

Component common netCDF properties

nc_set_component_variable

Field

Component common netCDF properties

nc_set_component_variable_groups

Field

Component common netCDF properties

nc_clear_component_variable_groups

Field

Component common netCDF properties

nc_del_component_dimension

Field

Component common netCDF properties

nc_set_component_dimension

Field

Component common netCDF properties

nc_set_component_dimension_groups

Field

Component common netCDF properties

nc_clear_component_dimension_groups

Field

Component common netCDF properties

nc_del_component_sample_dimension

Field

Component common netCDF properties

nc_set_component_sample_dimension

Field

Component common netCDF properties

nc_set_component_sample_dimension_groups

Field

Component common netCDF properties

nc_clear_component_sample_dimension_groups

Field

Component common netCDF properties

nc_get_external

CellMeasure

External variable status

nc_set_external

CellMeasure

External variable status

nc_del_sample_dimension

Count, Index

Sample dimension name

nc_get_sample_dimension

Count, Index

Sample dimension name

nc_has_sample_dimension

Count, Index

Sample dimension name

nc_set_sample_dimension

Count, Index

Sample dimension name

nc_sample_dimension_groups

Count

Group hierarchy

nc_set_sample_dimension_groups

Count

Group hierarchy

nc_clear_sample_dimension_groups

Count

Group hierarchy

+
+
+
+

Writing to disk

+

The cfdm.write function writes a field construct, or a sequence of +field constructs, to a netCDF file on disk:

+
+
Write a field construct to a netCDF dataset on disk.
+
>>> print(q)
+Field: specific_humidity (ncvar%humidity)
+-----------------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> cfdm.write(q, 'q_file.nc')
+
+
+
+

The file name may describe relative paths, and standard tilde and +shell parameter expansions are applied to it.

+

The new dataset is structured as follows:

+
+
Inspect the new dataset with the ncdump command line +tool.
+
$ ncdump -h q_file.nc
+netcdf q_file {
+dimensions:
+     lat = 5 ;
+     bounds2 = 2 ;
+     lon = 8 ;
+variables:
+     double lat_bnds(lat, bounds2) ;
+     double lat(lat) ;
+             lat:units = "degrees_north" ;
+             lat:standard_name = "latitude" ;
+             lat:bounds = "lat_bnds" ;
+     double lon_bnds(lon, bounds2) ;
+     double lon(lon) ;
+             lon:units = "degrees_east" ;
+             lon:standard_name = "longitude" ;
+             lon:bounds = "lon_bnds" ;
+     double time ;
+             time:units = "days since 2018-12-01" ;
+             time:standard_name = "time" ;
+     double humidity(lat, lon) ;
+             humidity:standard_name = "specific_humidity" ;
+             humidity:cell_methods = "area: mean" ;
+             humidity:units = "1" ;
+             humidity:coordinates = "time" ;
+
+// global attributes:
+             :Conventions = "CF-1.9" ;
+             :project = "research" ;
+}
+
+
+
+

A sequence of field constructs is written in exactly the same way:

+
+
Write multiple field constructs to a netCDF dataset on +disk.
+
>>> x
+[<Field: specific_humidity(latitude(5), longitude(8)) 1>,
+ <Field: air_temperature(atmosphere_hybrid_height_coordinate(1), grid_latitude(10), grid_longitude(9)) K>]
+>>> cfdm.write(x, 'new_file.nc')
+
+
+
+

By default the output file will be for CF-1.9.

+

The cfdm.write function has optional parameters to

+
    +
  • set the output netCDF format (all netCDF3 and netCDF4 formats are +possible);

  • +
  • append to the netCDF file rather than over-writing it by default;

  • +
  • specify which field construct properties should become netCDF data +variable attributes and which should become netCDF global +attributes;

  • +
  • set extra netCDF global attributes;

  • +
  • create external variables in an external +file;

  • +
  • specify the version of the CF conventions (from CF-1.6 up to +CF-1.9), and of any other conventions that the file adheres +to;

  • +
  • change the data type of output data arrays;

  • +
  • apply netCDF compression and packing;

  • +
  • set the endian-ness of the output data; and

  • +
  • specify whether or not netCDF string arrays are to +be used.

  • +
+

For example, to use the mode parameter to append a new field, or fields, +to a netCDF file whilst preserving the field or fields already contained +in that file:

+
+
Append field constructs to a netCDF dataset on +disk.
+
>>> g = cfdm.example_field(2)
+>>> cfdm.write(g, 'append-example-file.nc')
+>>> cfdm.read('append-example-file.nc')
+[<Field: air_potential_temperature(time(36), latitude(5), longitude(8)) K>]
+>>> h = cfdm.example_field(0)
+>>> h
+<Field: specific_humidity(latitude(5), longitude(8)) 1>
+>>> cfdm.write(h, 'append-example-file.nc', mode='a')
+>>> cfdm.read('append-example-file.nc')
+[<Field: air_potential_temperature(time(36), latitude(5), longitude(8)) K>,
+ <Field: specific_humidity(latitude(5), longitude(8)) 1>]
+
+
+
+

Output netCDF variable and dimension names read from a netCDF dataset +are stored in the resulting field constructs, and may also be set +manually with the nc_set_variable, nc_set_dimension and +nc_set_sample_dimension methods. If a name has not been set then one +will be generated internally (usually based on the standard name if it +exists).

+

It is possible to create netCDF unlimited dimensions using the +nc_set_unlimited method of the domain axis construct.

+

A field construct is not transformed through being written to a file +on disk and subsequently read back from that file.

+
+
Read a file that has been created by writing a field +construct, and compare the result with the original field +construct in memory.
+
>>> f = cfdm.read('q_file.nc')[0]
+>>> q.equals(f)
+True
+
+
+
+
+

Global attributes

+

The field construct properties that correspond to the standardised +description-of-file-contents attributes are automatically written as +netCDF global attributes. Other attributes may also be written as +netCDF global attributes if they have been identified as such with the +global_attributes keyword, or via the +nc_set_global_attribute or nc_set_global_attributes +method of the field constructs. In either case, the creation of a +netCDF global attribute depends on the corresponding property values +being identical across all of the field constructs being written to +the file. If they are all equal then the property will be written as a +netCDF global attribute and not as an attribute of any netCDF data +variable; if any differ then the property is written only to each +netCDF data variable.

+
+
Request that the “model” property is written as a netCDF +global attribute, using the “global_attributes” keyword.
+
>>> f.set_property('model', 'model_A')
+>>> cfdm.write(f, 'f_file.nc', global_attributes='model')
+
+
+
+
+
Request that the “model” property is written as a netCDF +global attribute, using the “nc_set_global_attribute” +method.
+
>>> f.nc_global_attributes()
+{'Conventions': None, 'project': None}
+>>> f.nc_set_global_attribute('model')
+>>> f.nc_global_attributes()
+{'Conventions': None, 'project': None, 'model': None}
+>>> f.nc_global_attributes(values=True)
+{'Conventions': 'CF-1.9', 'project': 'research', 'model': 'model_A'}
+>>> cfdm.write(f, 'f_file.nc')
+
+
+
+

It is possible to create both a netCDF global attribute and a netCDF +data variable attribute with the same name, but with different +values. This may be done by assigning the global value to the property +name with the nc_set_global_attribute or +nc_set_global_attributes method, or by via the +file_descriptors keyword. For the former technique, any +inconsistencies arising from multiple field constructs being written +to the same file will be resolved by omitting the netCDF global +attribute from the file.

+
+
Request that the “information” property is written as +netCDF global and data variable attributes, with +different values, using the “nc_set_global_attribute” +method.
+
>>> f.set_property('information', 'variable information')
+>>> f.properties()
+{'Conventions': 'CF-1.9',
+ 'project': 'research',
+ 'standard_name': 'specific_humidity',
+ 'units': '1',
+ 'model': 'model_A',
+ 'information': 'variable information'}
+>>> f.nc_set_global_attribute('information', 'global information')
+>>> f.nc_global_attributes()
+{'Conventions': None,
+ 'project': None,
+ 'model': None,
+ 'information': 'global information'}
+>>> cfdm.write(f, 'f_file.nc')
+
+
+
+

NetCDF global attributes defined with the file_descriptors keyword +of the cfdm.write function will always be written as requested, +independently of the netCDF data variable attributes, and superseding +any global attributes that may have been defined with the +global_attributes keyword, or set on the individual field +constructs.

+
+
Insist that the “history” property is written as netCDF +a global attribute, with the “file_descriptors” keyword.
+
>>> cfdm.write(f, 'f_file.nc', file_descriptors={'history': 'created in 2021'})
+>>> f_file = cfdm.read('f_file.nc')[0]
+>>> f_file.properties()
+{'Conventions': 'CF-1.9',
+ 'history': 'created in 2021',
+ 'model': 'model_A',
+ 'project': 'research',
+ 'information': 'variable information',
+ 'standard_name': 'specific_humidity',
+ 'units': '1'}
+>>> f_file.nc_global_attributes()
+{'Conventions': None,
+ 'history': None,
+ 'model': None,
+ 'project': None,
+ 'information': 'global information'}
+
+
+
+
+
+

Conventions

+

The Conventions netCDF global attribute containing the version of +the CF conventions is always automatically created. If the version of +the CF conventions has been set as a field property, or with the +Conventions keyword of the cfdm.write function, then it is +ignored. However, other conventions that may apply can be set with +either technique.

+
+
+

Scalar coordinate variables

+

A CF-netCDF scalar (i.e. zero-dimensional) coordinate variable is +created from a size one dimension coordinate construct that spans a +domain axis construct which is not spanned by the field construct’s +data, nor the data of any other metadata construct. This occurs for +the field construct q, for which the “time” dimension coordinate +construct was to the file q_file.nc as a scalar coordinate +variable.

+

To change this so that the “time” dimension coordinate construct is +written as a CF-netCDF size one coordinate variable, the field +construct’s data must be expanded to span the corresponding size one +domain axis construct, by using the insert_dimension method +of the field construct.

+
+
Write the “time” dimension coordinate construct to a +(non-scalar) CF-netCDF coordinate variable by inserting +the corresponding dimension into the field construct’s +data.
+
>>> print(q)
+Field: specific_humidity (ncvar%humidity)
+-----------------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+<Field: specific_humidity(latitude(5), longitude(8)) 1>
+>>> key = q.construct_key('time')
+>>> axes = q.get_data_axes(key)
+>>> axes
+('domainaxis2',)
+>>> q2 = q.insert_dimension(axis=axes[0])
+>>> q2
+<Field: specific_humidity(time(1), latitude(5), longitude(8)) 1>
+>>> cfdm.write(q2, 'q2_file.nc')
+
+
+
+

The new dataset is structured as follows (note, relative to file +q_file.nc, the existence of the “time” dimension and the lack of a +coordinates attribute on the, now three-dimensional, data +variable):

+
+
Inspect the new dataset with the ncdump command line +tool.
+
$ ncdump -h q2_file.nc
+netcdf q2_file {
+dimensions:
+     lat = 5 ;
+     bounds2 = 2 ;
+     lon = 8 ;
+     time = 1 ;
+variables:
+     double lat_bnds(lat, bounds2) ;
+     double lat(lat) ;
+             lat:units = "degrees_north" ;
+             lat:standard_name = "latitude" ;
+             lat:bounds = "lat_bnds" ;
+     double lon_bnds(lon, bounds2) ;
+     double lon(lon) ;
+             lon:units = "degrees_east" ;
+             lon:standard_name = "longitude" ;
+             lon:bounds = "lon_bnds" ;
+     double time(time) ;
+             time:units = "days since 2018-12-01" ;
+             time:standard_name = "time" ;
+     double humidity(time, lat, lon) ;
+             humidity:units = "1" ;
+             humidity:standard_name = "specific_humidity" ;
+             humidity:cell_methods = "area: mean" ;
+
+// global attributes:
+             :Conventions = "CF-1.9" ;
+             :project = "research" ;
+}
+
+
+
+
+
+

Compressed constructs

+

Constructs that contain compressed data will be automatically written +to a dataset with the correct compression encoding. See the section on +compression for details.

+
+
+

Strings

+

String-valued data may be written to netCDF files either as netCDF +character arrays with a trailing dimension large enough to contain the +longest value, or as netCDF4 string arrays. The former is allowed for +all formats of netCDF3 and netCDF4 format files; but string arrays may +only be written to netCDF4 format files (note that string arrays can +not be written to netCDF4 classic format files).

+

By default, netCDF string arrays will be created whenever possible, +and in all other cases netCDF character arrays will be +used. Alternatively, netCDF character arrays can be used in all cases +by setting the string keyword of the cfdm.write function.

+
+
+

Groups

+

NetCDF4 files with hierarchical groups may be created if a group +structure is defined by the netCDF variable and dimension names, +accessed via the netCDF interface. See the +section on hierarchical groups for +details.

+
+
+
+
+

Hierarchical groups

+

Hierarchical groups provide a mechanism to structure variables +within netCDF4 datasets, with well defined rules for resolving +references to out-of-group netCDF variables and dimensions.

+

A group structure that may be applied when writing to disk can be +created ab initio with the netCDF interface. For example, the data variable and a coordinate +construct may be moved to a sub-group that has its own group +attribute, and a coordinate construct may be moved to a different +sub-group:

+
+
Create a group structure and write it to disk.
+
>>> q, t = cfdm.read('file.nc')
+>>> print(q)
+Field: specific_humidity (ncvar%/forecast/model/q)
+--------------------------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> q.set_property('comment', 'comment')
+>>> q.nc_set_group_attribute('comment', 'group comment')
+>>> q.nc_set_variable_groups(['forecast', 'model'])
+()
+>>> q.construct('time').nc_set_variable_groups(['forecast'])
+()
+>>> cfdm.write(q, 'grouped.nc')
+
+
+
+
+
Inspect the new grouped dataset with the ncdump command +line tool.
+
$ ncdump -h grouped.nc
+netcdf grouped {
+dimensions:
+        lat = 5 ;
+        bounds2 = 2 ;
+        lon = 8 ;
+variables:
+        double lat_bnds(lat, bounds2) ;
+        double lat(lat) ;
+                lat:units = "degrees_north" ;
+                lat:standard_name = "latitude" ;
+                lat:bounds = "lat_bnds" ;
+        double lon_bnds(lon, bounds2) ;
+        double lon(lon) ;
+                lon:units = "degrees_east" ;
+                lon:standard_name = "longitude" ;
+                lon:bounds = "lon_bnds" ;
+
+// global attributes:
+                :Conventions = "CF-1.8" ;
+                :comment = "comment" ;
+
+group: forecast {
+  variables:
+        double time ;
+                time:units = "days since 2018-12-01" ;
+                time:standard_name = "time" ;
+
+  group: model {
+    variables:
+        double q(lat, lon) ;
+                q:project = "research" ;
+                q:standard_name = "specific_humidity" ;
+                q:units = "1" ;
+                q:coordinates = "time" ;
+                q:cell_methods = "area: mean" ;
+
+    // group attributes:
+                :comment = "group comment" ;
+    } // group model
+  } // group forecast
+}
+
+
+
+

When reading a netCDF dataset, the group structure and groups +attributes are recorded and are made accessible via the netCDF +interface.

+
+
Read the grouped file and inspect its group structure.
+
>>> g = cfdm.read('grouped.nc')[0]
+>>> print(g)
+Field: specific_humidity (ncvar%/forecast/q)
+--------------------------------------------
+Data            : specific_humidity(latitude(5), longitude(8)) 1
+Cell methods    : area: mean
+Dimension coords: latitude(5) = [-75.0, ..., 75.0] degrees_north
+                : longitude(8) = [22.5, ..., 337.5] degrees_east
+                : time(1) = [2019-01-01 00:00:00]
+>>> g.nc_get_variable()
+'/forecast/model/q'
+>>> g.nc_variable_groups()
+('forecast', 'model')
+>>> g.nc_group_attributes(values=True)
+{'comment': 'group comment'}
+>>> g.construct('latitude').nc_get_variable()
+'lat'
+
+
+
+

By default field constructs are written out to a dataset with their +groups struct (if any) intact. It is always possible, however, to +create a “flat” dataset, i.e. one without any sub-groups. This does +not require the removal of the group structure from the field +construct and all of its components (although that is possible), as it +can be done by simply by overriding the existing group structure by +setting the group keyword to cfdm.write to False.

+
+
Write the field construct to a file with the same group +structure, and also to a flat file.
+
>>> cfdm.write(g, 'flat.nc', group=False)
+
+
+
+

NetCDF variables in the flattened output file will inherit any netCDF +group attributes, providing that they are not superceded by variable +attributes. The output netCDF variable and dimension names will be +taken as the basenames of any that have been pre-defined. This is the +case in file flat.nc, for which the netCDF variable q has +inherited the comment attribute that was originally set on the +/forecast/model group. NetCDF group attributes may be set and +accessed via the netCDF interface, for both +netCDF variable and netCDF dimensions.

+
+
Inspect the flat version of the dataset with the ncdump +command line tool.
+
$ ncdump -h flat_out.nc
+netcdf flat {
+dimensions:
+        lat = 5 ;
+        bounds2 = 2 ;
+        lon = 8 ;
+variables:
+        double lat_bnds(lat, bounds2) ;
+        double lat(lat) ;
+                lat:units = "degrees_north" ;
+                lat:standard_name = "latitude" ;
+                lat:bounds = "lat_bnds" ;
+        double lon_bnds(lon, bounds2) ;
+        double lon(lon) ;
+                lon:units = "degrees_east" ;
+                lon:standard_name = "longitude" ;
+                lon:bounds = "lon_bnds" ;
+        double time ;
+                time:units = "days since 2018-12-01" ;
+                time:standard_name = "time" ;
+        double q(lat, lon) ;
+                q:comment = "group comment" ;
+                q:project = "research" ;
+                q:standard_name = "specific_humidity" ;
+                q:units = "1" ;
+                q:coordinates = "time" ;
+                q:cell_methods = "area: mean" ;
+
+// global attributes:
+                :Conventions = "CF-1.8" ;
+                :comment = "comment" ;
+}
+
+
+
+

The fields constructs read from a grouped file are identical to those +read from the flat version of the file:

+
+
Demonstrate that the field constructs are independent of +the dataset structure.
+
>>> f = cfdm.read('flat.nc')[0]
+>>> f.equals(g)
+True
+
+
+
+
+
+
+

External variables

+

External variables are those in a netCDF file that are referred to, +but which are not present in it. Instead, such variables are stored in +other netCDF files known as “external files”. External variables may, +however, be incorporated into the field constructs of the dataset, as +if they had actually been stored in the same file, simply by providing +the external file names to the cfdm.read function.

+

An external variables file name may describe relative paths, and +standard tilde and shell parameter expansions are applied to it.

+

This is illustrated with the files parent.nc (found in the +sample datasets):

+
+
Inspect the parent dataset with the ncdump command line +tool.
+
$ ncdump -h parent.nc
+netcdf parent {
+dimensions:
+     latitude = 10 ;
+     longitude = 9 ;
+variables:
+     double latitude(latitude) ;
+             latitude:units = "degrees_north" ;
+             latitude:standard_name = "latitude" ;
+     double longitude(longitude) ;
+             longitude:units = "degrees_east" ;
+             longitude:standard_name = "longitude" ;
+     double eastward_wind(latitude, longitude) ;
+             eastward_wind:units = "m s-1" ;
+             eastward_wind:standard_name = "eastward_wind" ;
+             eastward_wind:cell_measures = "area: areacella" ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+             :external_variables = "areacella" ;
+}
+
+
+
+

and external.nc (found in the sample datasets):

+
+
Inspect the external dataset with the ncdump command +line tool.
+
$ ncdump -h external.nc
+netcdf external {
+dimensions:
+     latitude = 10 ;
+     longitude = 9 ;
+variables:
+     double areacella(longitude, latitude) ;
+             areacella:units = "m2" ;
+             areacella:standard_name = "cell_area" ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+}
+
+
+
+

The dataset in parent.nc may be read without specifying the +external file external.nc. In this case a cell measure construct +is still created, but one without any metadata or data:

+
+
Read the parent dataset without specifying the location +of any external datasets.
+
>>> u = cfdm.read('parent.nc')[0]
+>>> print(u)
+Field: eastward_wind (ncvar%eastward_wind)
+------------------------------------------
+Data            : eastward_wind(latitude(10), longitude(9)) m s-1
+Dimension coords: latitude(10) = [0.0, ..., 9.0] degrees
+                : longitude(9) = [0.0, ..., 8.0] degrees
+Cell measures   : measure:area (external variable: ncvar%areacella)
+
+>>> area = u.constructs('measure:area').value()
+>>> area
+<CellMeasure: measure:area >
+>>> area.nc_get_external()
+True
+>>> area.nc_get_variable()
+'areacella'
+>>> area.properties()
+{}
+>>> area.has_data()
+False
+
+
+
+

If this field construct were to be written to disk using cfdm.write, +then the output file would be identical to the original parent.nc +file, i.e. the netCDF variable name of the cell measure construct +(areacella) would be listed by the external_variables global +attribute.

+

However, the dataset may also be read with the external file. In +this case a cell measure construct is created with all of the metadata +and data from the external file, as if the netCDF cell measure +variable had been present in the parent dataset:

+
+
Read the parent dataset whilst providing the external +dataset containing the external variables.
+
>>> g = cfdm.read('parent.nc', external='external.nc')[0]
+>>> print(g)
+Field: eastward_wind (ncvar%eastward_wind)
+------------------------------------------
+Data            : eastward_wind(latitude(10), longitude(9)) m s-1
+Dimension coords: latitude(10) = [0.0, ..., 9.0] degrees
+                : longitude(9) = [0.0, ..., 8.0] degrees
+Cell measures   : cell_area(longitude(9), latitude(10)) = [[100000.5, ..., 100089.5]] m2
+>>> area = g.constructs('measure:area').value()
+>>> area
+<CellMeasure: cell_area(9, 10) m2>
+>>> area.nc_get_external()
+False
+>>> area.nc_get_variable()
+'areacella'
+>>> area.properties()
+{'standard_name': 'cell_area', 'units': 'm2'}
+>>> area.data
+<Data(9, 10): [[100000.5, ..., 100089.5]] m2>
+
+
+
+

If this field construct were to be written to disk using cfdm.write +then by default the cell measure construct, with all of its metadata +and data, would be written to the named output file, along with all of +the other constructs. There would be no external_variables global +attribute.

+

To create a reference to an external variable in an output netCDF +file, set the status of the cell measure construct to “external” with +its nc_set_external method.

+
+
Flag the cell measure as external and write the field +construct to a new file.
+
>>> area.nc_set_external(True)
+>>> cfdm.write(g, 'new_parent.nc')
+
+
+
+

To create a reference to an external variable in the an output netCDF +file and simultaneously create an external file containing the +variable, set the status of the cell measure construct to “external” +and provide an external file name to the cfdm.write function:

+
+
Write the field construct to a new file and the cell +measure construct to an external file.
+
>>> cfdm.write(g, 'new_parent.nc', external='new_external.nc')
+
+
+
+
+

External files with cfdump

+

One or more external files may also be included with cfdump.

+
+
Use cfdump to describe the parent file without resolving +the external variable reference.
+
$ cfdump parent.nc
+Field: eastward_wind (ncvar%eastward_wind)
+------------------------------------------
+Data            : eastward_wind(latitude(10), longitude(9)) m s-1
+Dimension coords: latitude(10) = [0.0, ..., 9.0] degrees_north
+                : longitude(9) = [0.0, ..., 8.0] degrees_east
+Cell measures   : measure:area (external variable: ncvar%areacella)
+
+
+
+
+
Providing an external file with the “-e” option allows +the reference to be resolved.
+
$ cfdump -e external.nc parent.nc
+Field: eastward_wind (ncvar%eastward_wind)
+------------------------------------------
+Data            : eastward_wind(latitude(10), longitude(9)) m s-1
+Dimension coords: latitude(10) = [0.0, ..., 9.0] degrees_north
+                : longitude(9) = [0.0, ..., 8.0] degrees_east
+Cell measures   : measure:area(longitude(9), latitude(10)) = [[100000.5, ..., 100089.5]] m2
+
+
+
+
+
+
+
+

Compression

+

The CF conventions have support for saving space by identifying +unwanted missing data. Such compression techniques store the data +more efficiently and result in no precision loss. The CF data model, +however, views compressed arrays in their uncompressed form.

+

Therefore, the field construct contains domain axis constructs +for the compressed dimensions and presents a view of compressed data +in its uncompressed form, even though the “underlying array” (i.e. the +actual array on disk or in memory that is contained in a Data +instance) is compressed. This means that the cfdm package includes +algorithms for uncompressing each type of compressed array.

+

There are two basic types of compression supported by the CF +conventions: ragged arrays (as used by discrete sampling +geometries) and compression by +gathering, each of which has particular implementation +details, but the following access patterns and behaviours apply to +both:

+ +
    +
  • Accessing the data via the array attribute of a Data +instance returns a numpy array that is uncompressed. The underlying +array will, however, remain in its compressed form. The compressed +underlying array may be retrieved as a numpy array with the +compressed_array attribute of the Data instance.

  • +
+
    +
  • A subspace of a field construct is created with +indices of the uncompressed form of the data. The new subspace will +no longer be compressed, i.e. its underlying arrays will be +uncompressed, but the original data will remain compressed. It +follows that to uncompress all of the data in a field construct, +index the field construct with (indices equivalent to) Ellipsis.

  • +
+
    +
  • If data elements are modified by assigning to +indices of the uncompressed form of the data, then the compressed +underlying array is replaced by its uncompressed form.

  • +
+
    +
  • An uncompressed field construct can be compressed, prior to being +written to a dataset, with its compress method, which also +compresses the metadata constructs as required.

  • +
+
    +
  • An compressed field construct can be uncompressed with its +uncompress method, which also uncompresses the metadata +constructs as required.

  • +
+
    +
  • If an underlying array is compressed at the time of writing to disk +with the cfdm.write function, then it is written to the file as a +compressed array, along with the supplementary netCDF variables and +attributes that are required for the encoding. This means that if a +dataset using compression is read from disk then it will be written +back to disk with the same compression, unless data elements have +been modified by assignment.

  • +
+

Examples of all of the above may be found in the sections on +discrete sampling geometries and +gathering.

+
+

Discrete sampling geometries

+

Discrete sampling geometry (DSG) features may be compressed by +combining them using one of three ragged array representations: +contiguous, indexed or indexed contiguous.

+

The count variable that is required to uncompress a contiguous, or +indexed contiguous, ragged array is stored in a Count instance and +is accessed with the get_count method of the Data instance.

+

The index variable that is required to uncompress an indexed, or +indexed contiguous, ragged array is stored in an Index instance and +is accessed with the get_index method of the Data instance.

+

The contiguous case is is illustrated with the file contiguous.nc +(found in the sample datasets):

+
+
Inspect the compressed dataset with the ncdump command +line tool.
+
$ ncdump -h contiguous.nc
+dimensions:
+     station = 4 ;
+     obs = 24 ;
+     strlen8 = 8 ;
+variables:
+     int row_size(station) ;
+             row_size:long_name = "number of observations for this station" ;
+             row_size:sample_dimension = "obs" ;
+     double time(obs) ;
+             time:units = "days since 1970-01-01 00:00:00" ;
+             time:standard_name = "time" ;
+     double lat(station) ;
+             lat:units = "degrees_north" ;
+             lat:standard_name = "latitude" ;
+     double lon(station) ;
+             lon:units = "degrees_east" ;
+             lon:standard_name = "longitude" ;
+     double alt(station) ;
+             alt:units = "m" ;
+             alt:positive = "up" ;
+             alt:standard_name = "height" ;
+             alt:axis = "Z" ;
+     char station_name(station, strlen8) ;
+             station_name:long_name = "station name" ;
+             station_name:cf_role = "timeseries_id" ;
+     double humidity(obs) ;
+             humidity:standard_name = "specific_humidity" ;
+             humidity:coordinates = "time lat lon alt station_name" ;
+             humidity:_FillValue = -999.9 ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+             :featureType = "timeSeries" ;
+}
+
+
+
+

Reading and inspecting this file shows the data presented in +two-dimensional uncompressed form, whilst the underlying array is +still in the one-dimension ragged representation described in the +file:

+
+
Read a field construct from a dataset that has been +compressed with contiguous ragged arrays, and inspect its +data in uncompressed form.
+
>>> h = cfdm.read('contiguous.nc')[0]
+>>> print(h)
+Field: specific_humidity (ncvar%humidity)
+-----------------------------------------
+Data            : specific_humidity(ncdim%station(4), ncdim%timeseries(9))
+Dimension coords:
+Auxiliary coords: time(ncdim%station(4), ncdim%timeseries(9)) = [[1969-12-29 00:00:00, ..., 1970-01-07 00:00:00]]
+                : latitude(ncdim%station(4)) = [-9.0, ..., 78.0] degrees_north
+                : longitude(ncdim%station(4)) = [-23.0, ..., 178.0] degrees_east
+                : height(ncdim%station(4)) = [0.5, ..., 345.0] m
+                : cf_role:timeseries_id(ncdim%station(4)) = [station1, ..., station4]
+>>> print(h.data.array)
+[[0.12 0.05 0.18   --   --   --   --   --   --]
+ [0.05 0.11 0.2  0.15 0.08 0.04 0.06   --   --]
+ [0.15 0.19 0.15 0.17 0.07   --   --   --   --]
+ [0.11 0.03 0.14 0.16 0.02 0.09 0.1  0.04 0.11]]
+
+
+
+
+
Inspect the underlying compressed array and the count +variable that defines how to uncompress the data.
+
>>> h.data.get_compression_type()
+'ragged contiguous'
+>>> print(h.data.compressed_array)
+[0.12 0.05 0.18 0.05 0.11 0.2 0.15 0.08 0.04 0.06 0.15 0.19 0.15 0.17 0.07
+ 0.11 0.03 0.14 0.16 0.02 0.09 0.1 0.04 0.11]
+>>> count_variable = h.data.get_count()
+>>> count_variable
+<Count: long_name=number of observations for this station(4) >
+>>> print(count_variable.data.array)
+[3 7 5 9]
+
+
+
+

The timeseries for the second station is easily selected by indexing +the “station” axis of the field construct:

+
+
Get the data for the second station.
+
>>> station2 = h[1]
+>>> station2
+<Field: specific_humidity(ncdim%station(1), ncdim%timeseries(9))>
+>>> print(station2.data.array)
+[[0.05 0.11 0.2 0.15 0.08 0.04 0.06 -- --]]
+
+
+
+

The underlying array of original data remains in compressed form until +data array elements are modified:

+
+
Change an element of the data and show that the +underlying array is no longer compressed.
+
>>> h.data.get_compression_type()
+'ragged contiguous'
+>>> h.data[1, 2] = -9
+>>> print(h.data.array)
+[[0.12 0.05 0.18   --   --   --   --   --   --]
+ [0.05 0.11 -9.0 0.15 0.08 0.04 0.06   --   --]
+ [0.15 0.19 0.15 0.17 0.07   --   --   --   --]
+ [0.11 0.03 0.14 0.16 0.02 0.09 0.1  0.04 0.11]]
+>>> h.data.get_compression_type()
+''
+
+
+
+

The easiest way to create a compressed field construct is to create +the equivalent uncompressed field construct and then compress it with +its compress method, which also compresses the metadata +constructs as required.

+
+
Create a field construct and then compress it.
+
import numpy
+import cfdm
+
+# Define the array values
+data = cfdm.Data([[280.0,   -99,   -99,   -99],
+                  [281.0, 279.0, 278.0, 279.5]],
+                 mask=[[0, 1, 1, 1],
+                       [0, 0, 0, 0]])
+
+# Create the field construct
+T = cfdm.Field()
+T.set_properties({'standard_name': 'air_temperature',
+                  'units': 'K',
+                  'featureType': 'timeSeries'})
+
+# Create the domain axis constructs
+X = T.set_construct(cfdm.DomainAxis(4))
+Y = T.set_construct(cfdm.DomainAxis(2))
+
+# Set the data for the field
+T.set_data(data, axes=[Y, X])
+
+# Compress the data
+T.compress('contiguous',
+           count_properties={'long_name': 'number of obs for this timeseries'},
+           inplace=True)
+
+
+
+

The new field construct can now be inspected and written to a netCDF file:

+
+
Inspect the new field construct and write it to disk.
+
>>> T
+<Field: air_temperature(key%domainaxis1(2), key%domainaxis0(4)) K>
+>>> print(T.data.array)
+[[280.0    --    --    --]
+ [281.0 279.0 278.0 279.5]]
+>>> T.data.get_compression_type()
+'ragged contiguous'
+>>> print(T.data.compressed_array)
+[280.  281.  279.  278.  279.5]
+>>> count_variable = T.data.get_count()
+>>> count_variable
+<Count: long_name=number of obs for this timeseries(2) >
+>>> print(count_variable.data.array)
+[1 4]
+>>> cfdm.write(T, 'T_contiguous.nc')
+
+
+
+

The content of the new file is:

+
+
Inspect the new compressed dataset with the ncdump +command line tool.
+
$ ncdump T_contiguous.nc
+netcdf T_contiguous {
+dimensions:
+     dim = 2 ;
+     element = 5 ;
+variables:
+     int64 count(dim) ;
+             count:long_name = "number of obs for this timeseries" ;
+             count:sample_dimension = "element" ;
+     float air_temperature(element) ;
+             air_temperature:units = "K" ;
+             air_temperature:standard_name = "air_temperature" ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+             :featureType = "timeSeries" ;
+data:
+
+ count = 1, 4 ;
+
+ air_temperature = 280, 281, 279, 278, 279.5 ;
+}
+
+
+
+

Exactly the same field construct may be also created explicitly with +underlying compressed data. A construct with an underlying ragged +array is created by initialising a Data instance with a ragged +array that is stored in one of three special array objects: +RaggedContiguousArray, RaggedIndexedArray or +RaggedIndexedContiguousArray.

+
+
Create a field construct with compressed data.
+
import numpy
+import cfdm
+
+# Define the ragged array values
+ragged_array = cfdm.Data([280, 281, 279, 278, 279.5])
+
+# Define the count array values
+count_array = [1, 4]
+
+# Create the count variable
+count_variable = cfdm.Count(data=cfdm.Data(count_array))
+count_variable.set_property('long_name', 'number of obs for this timeseries')
+
+# Create the contiguous ragged array object, specifying the
+# uncompressed shape
+array = cfdm.RaggedContiguousArray(
+                 compressed_array=ragged_array,
+                 shape=(2, 4), size=8, ndim=2,
+                 count_variable=count_variable)
+
+# Create the field construct with the domain axes and the ragged
+# array
+T = cfdm.Field()
+T.set_properties({'standard_name': 'air_temperature',
+                  'units': 'K',
+                  'featureType': 'timeSeries'})
+
+# Create the domain axis constructs for the uncompressed array
+X = T.set_construct(cfdm.DomainAxis(4))
+Y = T.set_construct(cfdm.DomainAxis(2))
+
+# Set the data for the field
+T.set_data(cfdm.Data(array), axes=[Y, X])
+
+
+
+
+
+

Gathering

+

Compression by gathering combines axes of a multidimensional array +into a new, discrete axis whilst omitting the missing values and thus +reducing the number of values that need to be stored.

+

The list variable that is required to uncompress a gathered array is +stored in a List object and is retrieved with the get_list +method of the Data instance.

+

This is illustrated with the file gathered.nc (found in the +sample datasets):

+
+
Inspect the compressed dataset with the ncdump command +line tool.
+
$ ncdump -h gathered.nc
+netcdf gathered {
+dimensions:
+     time = 2 ;
+     lat = 4 ;
+     lon = 5 ;
+     landpoint = 7 ;
+variables:
+     double time(time) ;
+             time:standard_name = "time" ;
+             time:units = "days since 2000-1-1" ;
+     double lat(lat) ;
+             lat:standard_name = "latitude" ;
+             lat:units = "degrees_north" ;
+     double lon(lon) ;
+             lon:standard_name = "longitude" ;
+             lon:units = "degrees_east" ;
+     int landpoint(landpoint) ;
+             landpoint:compress = "lat lon" ;
+     double pr(time, landpoint) ;
+             pr:standard_name = "precipitation_flux" ;
+             pr:units = "kg m2 s-1" ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+}
+
+
+
+

Reading and inspecting this file shows the data presented in +three-dimensional uncompressed form, whilst the underlying array is +still in the two-dimensional gathered representation described in the +file:

+
+
Read a field construct from a dataset that has been +compressed by gathering, and inspect its data in +uncompressed form.
+
>>> p = cfdm.read('gathered.nc')[0]
+>>> print(p)
+Field: precipitation_flux (ncvar%pr)
+------------------------------------
+Data            : precipitation_flux(time(2), latitude(4), longitude(5)) kg m2 s-1
+Dimension coords: time(2) = [2000-02-01 00:00:00, 2000-03-01 00:00:00]
+                : latitude(4) = [-90.0, ..., -75.0] degrees_north
+                : longitude(5) = [0.0, ..., 40.0] degrees_east
+>>> print(p.data.array)
+[[[--       0.000122 0.0008   --       --      ]
+  [0.000177 --       0.000175 0.00058  --      ]
+  [--       --       --       --       --      ]
+  [--       0.000206 --       0.0007   --      ]]
+
+ [[--       0.000202 0.000174 --       --      ]
+  [0.00084  --       0.000201 0.0057   --      ]
+  [--       --       --       --       --      ]
+  [--       0.000223 --       0.000102 --      ]]]
+
+
+
+
+
Inspect the underlying compressed array and the list +variable that defines how to uncompress the data.
+
>>> p.data.get_compression_type()
+'gathered'
+>>> print(p.data.compressed_array)
+[[0.000122 0.0008   0.000177 0.000175 0.00058 0.000206 0.0007  ]
+ [0.000202 0.000174 0.00084  0.000201 0.0057  0.000223 0.000102]]
+>>> list_variable = p.data.get_list()
+>>> list_variable
+<List: ncvar%landpoint(7) >
+>>> print(list_variable.data.array)
+[1 2 5 7 8 16 18]
+
+
+
+

Subspaces based on the uncompressed axes of the field construct are +easily created:

+
+
Get subspaces based on indices of the uncompressed +data.
+
>>> p[0]
+<Field: precipitation_flux(time(1), latitude(4), longitude(5)) kg m2 s-1>
+>>> p[1, :, 3:5]
+<Field: precipitation_flux(time(1), latitude(4), longitude(2)) kg m2 s-1>
+
+
+
+

The underlying array of original data remains in compressed form until +data array elements are modified:

+
+
Change an element of the data and show that the +underlying array is no longer compressed.
+
>>> p.data.get_compression_type()
+'gathered'
+>>> p.data[1] = -9
+>>> p.data.get_compression_type()
+''
+
+
+
+

A construct with an underlying gathered array is created by +initializing a Data instance with a gathered array that is stored in +the special GatheredArray array object. The following code creates a +simple field construct with an underlying gathered array:

+
+
Create a field construct with compressed data.
+
import numpy
+import cfdm
+
+# Define the gathered values
+gathered_array = cfdm.Data([[2, 1, 3], [4, 0, 5]])
+
+# Define the list array values
+list_array = [1, 4, 5]
+
+# Create the list variable
+list_variable = cfdm.List(data=cfdm.Data(list_array))
+
+# Create the gathered array object, specifying the uncompressed
+# shape
+array = cfdm.GatheredArray(
+                 compressed_array=gathered_array,
+                 compressed_dimension=1,
+                 shape=(2, 3, 2), size=12, ndim=3,
+                 list_variable=list_variable)
+
+# Create the field construct with the domain axes and the gathered
+# array
+P = cfdm.Field(properties={'standard_name': 'precipitation_flux',
+                           'units': 'kg m-2 s-1'})
+
+# Create the domain axis constructs for the uncompressed array
+T = P.set_construct(cfdm.DomainAxis(2))
+Y = P.set_construct(cfdm.DomainAxis(3))
+X = P.set_construct(cfdm.DomainAxis(2))
+
+# Set the data for the field
+P.set_data(cfdm.Data(array), axes=[T, Y, X])
+
+
+
+

Note that, because compression by gathering acts on a subset of the +array dimensions, it is necessary to state the position of the +compressed dimension in the compressed array (with the +compressed_dimension parameter of the GatheredArray +initialisation).

+

The new field construct can now be inspected and written a netCDF file:

+
+
Inspect the new field construct and write it to disk.
+
>>> P
+<Field: precipitation_flux(key%domainaxis0(2), key%domainaxis1(3), key%domainaxis2(2)) kg m-2 s-1>
+>>> print(P.data.array)
+[[[ -- 2.0]
+  [ --  --]
+  [1.0 3.0]]
+
+ [[ -- 4.0]
+  [ --  --]
+  [0.0 5.0]]]
+>>> P.data.get_compression_type()
+'gathered'
+>>> print(P.data.compressed_array)
+[[2. 1. 3.]
+ [4. 0. 5.]]
+>>> list_variable = P.data.get_list()
+>>> list_variable
+<List: (3) >
+>>> print(list_variable.data.array)
+[1 4 5]
+>>> cfdm.write(P, 'P_gathered.nc')
+
+
+
+

The content of the new file is:

+
+
Inspect new the compressed dataset with the ncdump +command line tool.
+
$ ncdump P_gathered.nc
+netcdf P_gathered {
+dimensions:
+     dim = 2 ;
+     dim_1 = 3 ;
+     dim_2 = 2 ;
+     list = 3 ;
+variables:
+     int64 list(list) ;
+             list:compress = "dim_1 dim_2" ;
+     float precipitation_flux(dim, list) ;
+             precipitation_flux:units = "kg m-2 s-1" ;
+             precipitation_flux:standard_name = "precipitation_flux" ;
+
+// global attributes:
+             :Conventions = "CF-1.7" ;
+data:
+
+ list = 1, 4, 5 ;
+
+ precipitation_flux =
+  2, 1, 3,
+  4, 0, 5 ;
+}
+
+
+
+
+
+

Coordinate subsampling

+

Lossy compression by coordinate subsampling was introduced into the +CF conventions at CF-1.9, but is not yet available in cfdm. It will be +ready in a future 1.9.x.0 release.

+
+
+
+
+

Controlling output messages

+

cfdm will produce messages upon the execution of operations, to +provide feedback about:

+
    +
  • the progress of, and under-the-hood steps involved in, the +operations it is performing;

  • +
  • the events that emerge during these operations;

  • +
  • the nature of the dataset being operated on, including CF compliance +issues that may be encountered during the operation.

  • +
+

This feedback may be purely informational, or may convey warning(s) +about dataset issues or the potential for future error(s).

+

It is possible to configure the extent to which messages are output at +runtime, i.e. the verbosity of cfdm, so that less serious and/or more +detailed messages can be filtered out.

+

There are two means to do this, which are covered in more detail in +the sub-sections below. Namely, you may configure the extent of +messaging:

+
    +
  • globally i.e. for all cfdm operations, by setting the +cfdm.log_level which controls the project-wide logging;

  • +
  • for a specific function only (for many functions) by setting +that function’s verbose keyword (which overrides the global +setting for the duration of the function call).

  • +
+

Both possibilities use a consistent level-based cut-off system, as +detailed below.

+
+

Logging

+

All messages from cfdm, excluding exceptions which are always raised +in error cases, are incorporated into a logging system which assigns +to each a level based on the relative seriousness and/or +verbosity. From highest to lowest on this scale, these levels are:

+
    +
  • 'WARNING': conveys a warning;

  • +
  • 'INFO': provides information concisely, in a few lines or so;

  • +
  • 'DETAIL': provides information in a more detailed manner than +'INFO';

  • +
  • 'DEBUG': produces highly-verbose information intended mainly for +the purposes of debugging and cfdm library development.

  • +
+

The function cfdm.log_level sets the minimum of these levels for +which messages are displayed. Any message marked as being of any lower +level will be filtered out. Note it sets the verbosity globally, for +all cfdm library operations (unless these are overridden for +individual functions, as covered below).

+

As well as the named log levels above, cfdm.log_level accepts a +further identifier, 'DISABLE'. Each of these potential settings +has a numerical value that is treated interchangeably and may instead +be set (as this may be easier to recall and write, if less +explicit). The resulting behaviour in each case is as follows:

+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Log level

Integer code

Result when set as the log severity level

'DISABLE'

0

Disable all logging messages. Note this +does not include exception messages +raised by errors.

'WARNING' (default)

1

Only show logging messages that are +warnings (those labelled as +'WARNING').

'INFO'

2

Only show logging messages that are +warnings or concise informational +messages (marked as 'WARNING' or +'INFO' respectively).

'DETAIL'

3

Enable all logging messages except +for debugging messages. In other words, +show logging messages labelled +'WARNING', 'INFO' and +'DETAIL', but not 'DEBUG'.

'DEBUG'

-1

Enable all logging messages, +including debugging messages +(labelled as 'DEBUG').

+

Note 'DEBUG' is intended as a special case for debugging, which +should not be required in general usage of cfdm, hence its equivalence +to -1 rather than 4 which would follow the increasing integer +code pattern. -1 reflects that it is the final value in the +sequence, as with Python indexing.

+

The default value for cfdm.log_level is 'WARNING' (1). +However, whilst completing this tutorial, it may be instructive to set +the log level` to a higher verbosity level such as 'INFO' to gain +insight into the internal workings of cfdm calls.

+
+
+

Function verbosity

+

Functions and methods that involve a particularly high number of steps +or especially complex processing, for example the cfdm.read and +cfdm.write functions, accept a keyword argument verbose. This be +set to change the minimum log level at which messages are displayed +for the function/method call only, without being influenced by, or +influencing, the global cfdm.log_level value.

+

A verbose value effectively overrides the value of cfdm.log_level +for the function/method along with any functions/methods it calls in +turn, until the origin function/method completes.

+

The verbose argument accepts the same levels as cfdm.log_level +(including 0 for 'DISABLE'), as described in the logging +section, namely either an integer or a corresponding string +for example verbose=2 or equivalently verbose='INFO' +(or verbose='info' since case is ignored).

+

By default, verbose is set to None, in which case the value of the +cfdm.log_level setting is used to determine which messages, +if any, are filtered out.

+

Footnotes

+
+
+
1
+

Requires the netCDF4 python package to have been built with +OPeNDAP support enabled. See +http://unidata.github.io/netcdf4-python for details.

+
+
2
+

Lossy compression by coordinate subsampling was +introduced into the CF conventions at CF-1.9, but is not +yet available in cfdm. It will be ready in a future +1.9.x.0 release.

+
+
+
+
+
+ + + +
+ +
+
+
+
+ + + + + + + \ No newline at end of file