yt.fields.field_info_container module

The basic field info container resides here. These classes, code specific and universal, are the means by which we access fields across YT, both derived and native.

class yt.fields.field_info_container.FieldInfoContainer(ds, field_list, slice_info=None)[source]

Bases: dict

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_field(name, sampling_type, function=None, **kwargs)[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.

  • name (str) – is the name of the field.
  • function (callable) – A function handle that defines the field. Should accept arguments (field, data)
  • 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 objects
  • particle_type (bool) – Is this a particle (1D) field?
  • vector_field (bool) – Describes the dimensionality of the field. Currently unused.
  • display_name (str) – A name used in the plots
add_output_field(name, sampling_type, **kwargs)[source]
alias(alias_name, original_name, units=None)[source]
clear() → None. Remove all items from D.
copy() → a shallow copy of D
classmethod create_with_fallback(fallback, name='')[source]
extra_union_fields = ()
fallback = None

Returns a new dict with keys from iterable and values equal to value.

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
known_other_fields = ()
known_particle_fields = ()
load_plugin(plugin_name, ftype='gas', skip_check=False)[source]
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
setup_particle_fields(ptype, ftype='gas', num_neighbors=64)[source]
setup_smoothed_fields(ptype, num_neighbors=64, ftype='gas')[source]
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]

values() → an object providing a view on D's values