yt.fields.field_info_container module¶
-
class
yt.fields.field_info_container.
FieldInfoContainer
(ds, field_list: List[Tuple[str, str]], slice_info=None)[source]¶ Bases:
collections.UserDict
This is a generic field container. It contains a list of potential derived fields, all of which know how to act on a data object and return a value. This object handles converting units as well as validating the availability of a given field.
-
add_deprecated_field
(name, function, sampling_type, since, removal=None, ret_name=None, **kwargs)[source]¶ Add a new field which is deprecated, along with supplemental metadata, to the list of available fields. This respects a number of arguments, all of which are passed on to the constructor for
DerivedField
.- Parameters
name (str) – is the name of the field.
function (callable) – A function handle that defines the field. Should accept arguments (field, data)
sampling_type (str) – “cell” or “particle” or “local”
since (str) – The version string marking when this field was deprecated.
removal (str) – The version string marking when this field will be removed.
ret_name (str) – The name of the field which will actually be returned, used only by
alias()
.units (str) – A plain text string encoding the unit. Powers must be in python syntax (** instead of ^). If set to “auto” the units will be inferred from the return value of the field function.
take_log (bool) – Describes whether the field should be logged
validators (list) – A list of
FieldValidator
objectsvector_field (bool) – Describes the dimensionality of the field. Currently unused.
display_name (str) – A name used in the plots
-
add_field
(name: Tuple[str, str], function: collections.abc.Callable, sampling_type: str, *, alias: Optional[yt.fields.derived_field.DerivedField] = None, force_override: bool = False, **kwargs) → None[source]¶ Add a new field, along with supplemental metadata, to the list of available fields. This respects a number of arguments, all of which are passed on to the constructor for
DerivedField
.- Parameters
name (tuple[str, str]) – field (or particle) type, field name
function (callable) – A function handle that defines the field. Should accept arguments (field, data)
sampling_type (str) – “cell” or “particle” or “local”
force_override (bool) – If False (default), an error will be raised if a field of the same name already exists.
alias (DerivedField (optional):) – existing field to be aliased
units (str) – A plain text string encoding the unit. Powers must be in python syntax (** instead of ^). If set to “auto” the units will be inferred from the return value of the field function.
take_log (bool) – Describes whether the field should be logged
validators (list) – A list of
FieldValidator
objectsvector_field (bool) – Describes the dimensionality of the field. Currently unused.
display_name (str) – A name used in the plots
-
alias
(alias_name: Tuple[str, str], original_name: Tuple[str, str], units: Optional[str] = None, deprecate: Optional[Tuple[str, Optional[str]]] = None)[source]¶ Alias one field to another field.
- Parameters
units (str) – A plain text string encoding the unit. Powers must be in python syntax (** instead of ^). If set to “auto” the units will be inferred from the return value of the field function.
deprecate (tuple[str, str | None] | None) – If this is set, then the tuple contains two string version numbers: the first marking the version when the field was deprecated, and the second marking when the field will be removed.
-
clear
() → None. Remove all items from D.¶
-
copy
()¶
-
property
curvilinear
¶
-
fallback
= None¶
-
classmethod
fromkeys
(iterable, value=None)¶
-
get
(k[, d]) → D[k] if k in D, else d. d defaults to None.¶
-
items
() → a set-like object providing a view on D’s items¶
-
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.
-
popitem
() → (k, v), remove and return some (key, value) pair¶ as a 2-tuple; but raise KeyError if D is empty.
-
setdefault
(k[, d]) → D.get(k,d), also set D[k]=d if k not in D¶
-
update
([E, ]**F) → None. Update D from mapping/iterable E and F.¶ If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
-
values
() → an object providing a view on D’s values¶
-