cf.Transform

class cf.Transform(*args, **kwargs)

Bases: cf.utils.CfDict

A CF transform construct.

The named parameters and their values of the transformation (i.e. the transformation’s mappings) comprise the object’s key-value pairs.

A transformation is equivalent to either a netCDF(CF) ‘formula_terms’ or ‘grid_mapping’ property. The latter is identified by the presence of the ‘grid_mapping_name’ key which contains the mapping’s name.

In the ‘formula_terms’ case, a mapping to a coordinate (as opposed to another field) uses the coordinate’s space key name as a pointer rather than a copy of the coordinate itself.

Examples

>>> t
<CF Transform: atmosphere_sigma_coordinate>
>>> print t.dump()
atmosphere_sigma_coordinate transform
-------------------------------------
Transform['ps'] = <CF Field: surface_air_pressure(73, 96)>
Transform['ptop'] = 0.05
Transform['sigma'] = 'dim0'
>>> t
<CF Transform: rotated_latitude_longitude>
>>> print t.dump()
rotated_latitude_longitude transform
------------------------------------
Transform['grid_mapping_name'] = 'rotated_latitude_longitude'
Transform['grid_north_pole_latitude'] = 33.67
Transform['grid_north_pole_longitude'] = 190.0

Initialization

Parameters :
args, kwargs

Keys and values are initialized exactly as for a built-in dict. Keys are transform parameter names (such as grid_north_pole_latitude or sigma) with appropriate values of string, numeric, Coordinate or Field types.

copy()

Return a deep copy.

Equivalent to copy.deepcopy(d).

Returns :
out :

The deep copy.

Examples

>>> d.copy()
dump(id=None)

Return a string containing a full description of the transform.

Parameters :
id : str, optional

Set the common prefix of variable component names. By default the instance’s class name is used.

Returns :
out : str

A string containing the description.

Examples

>>> x = t.dump()
>>> print t.dump()
>>> print t.dump(id='transform1')
equals(other, rtol=None, atol=None, traceback=False)

True if two instances are logically equal, False otherwise.

Parameters :
other :

The object to compare for equality.

atol : float, optional

The absolute tolerance for all numerical comparisons, By default the value returned by the ATOL function is used.

rtol : float, optional

The relative tolerance for all numerical comparisons, By default the value returned by the RTOL function is used.

traceback : bool, optional

If True then print a traceback highlighting where the two instances differ.

Returns :
out : bool

Whether or not the two instances are equal.

Examples

get_keys(regex=None)

Return a list of the key names which match a regular expression.

Parameters :
regex : str, optional

The regular expression with which to identify key names. By default all keys names are returned.

Returns :
out : list

A list of key names.

Examples

>>> d.keys()
['dim2', 'dim0', 'dim1', 'aux0', 'cm0']
>>> d.get_keys()
['dim2', 'dim0', 'dim1', 'aux0', 'cm0']
>>> d.get_keys('dim')
['dim2', 'dim0', 'dim1']
>>> d.get_keys('^aux|^dim')
['dim2', 'dim0', 'dim1', 'aux0']
>>> d.get_keys('dim[1-9]')
['dim2', 'dim1']
has_key(k) → True if CFD has a key k, else False
hash()

Return a hash value for the transform.

Returns :
out : int

The hash value.

Raises :
ValueError:

If the transform is not a grid mapping.

Examples

>>> t.hash()
5768338254506892753
is_formula_terms

True if the transform is a formula_terms.

Examples

>>> t
<CF Transform: rotated_latitude_longitude>
>>> t.is_formula_terms
False
is_grid_mapping

True if the transform is a grid_mapping.

Examples

>>> t
<CF Transform: rotated_latitude_longitude>
>>> t.is_grid_mapping
True
name = None

The identifying name of the transformation.

Examples

>>> t.name
'atmosphere_hybrid_sigma_pressure_coordinate'
>>> t.name = 'rotated_latitude_longitude'

Previous topic

cf.Space

Next topic

cf.Units

This Page