DimensionSpecialValueSpecifier
- class PlasmaCalcs.dimensions.dimension_tools.dimension_value.DimensionSpecialValueSpecifier(getter, *args__None, iseler=None, isel_cls=UNSET, **kw__None)
Bases:
objectbehaves in a special way when used to specify a dimension value:
dim.v = specifier –> dim.v = specifier.getter(dim.values)dlist.get(specifier) –> specifier.getter(dlist)(for DimensionSpecialValueSpecifier specifier,Dimension dim, and DimensionValueList dlist.)getter: str or callableself specifies to use the dimension value(s): self.getter(dlist)callable –> callable of 1 arg; will be passed dlist.str –> use dlist.{getter}(). E.g. getter=’get_ion’ –> use dlist.get_ion().internally stored at self.init_getter.iseler: None, str, or callableif provided, can use self in calls to PlasmaCalcs’ xarray_isel and xarray_sel,commonly via array.pc.sel(dim=self) or array.pc.isel(dim=self).None –> crash with InputError if used in xarray_isel or xarray_sel.callable –> callable of 1 arg; will be passed list of coord values for dim,(probably a list of DimensionValue objects, maybe converted to DimensionValueList).must return index (or indexes) appropriate for xarray.isel.str –> use dlist.{iseler}(), where dlist=isel_cls(list of coord values for dim).E.g. iseler=’i_ions’, isel_cls=FluidList –> use FluidList(values).i_ions().internally stored at self.init_iseler.isel_cls: UNSET, None, or typeif provided, iseler calls use iseler(isel_cls(list of coord values for dim)),else, iseler calls use iseler(list of coord values for dim).(None –> set self.isel_cls = None. UNSET –> do not set self.isel_cls.)Methods
returns str representation of self.getter.
_getter_from_str(dlist)get the value from dlist specified by str self.getter.
returns str representation of self.iseler.
_iseler_from_str(dvals)get the indexes from dlist specified by str self.iseler.
_iseler_when_none(dvals)crash, because self was passed to xarray_isel or xarray_sel but self.iseler is None.
contents for repr; used by __repr__.
- _getter_as_str()
returns str representation of self.getter.
Use self.init_getter if it exists, else self.getter if it exists, else ‘UNKNOWN_GETTER’.
- _getter_from_str(dlist)
get the value from dlist specified by str self.getter.
- _iseler_as_str()
returns str representation of self.iseler.
Use self.init_iseler if it exists, else self.iseler if it exists, else ‘UNKNOWN_ISELER’.
- _iseler_from_str(dvals)
get the indexes from dlist specified by str self.iseler.
- _iseler_when_none(dvals)
crash, because self was passed to xarray_isel or xarray_sel but self.iseler is None.
- _repr_contents()
contents for repr; used by __repr__.