DecoratingPatterns
- class PlasmaCalcs.quantities.quantity_tools.DecoratingPatterns(known_calcs=None)
Bases:
DecoratingCalcsDecoratingVars but for patterns; name should be an re.Pattern (or str; and will apply re.compile()),
and decorated functions will always be provided a value for kwarg _match=re.match(name, var).deps values might contain ints; that indicates the dependency is at that group index.E.g. ‘(.*)_([xyz])’ would put deps=[0] since it matches {var}_{x} and depends on {var}.Methods
decorator([name, deps, aliases, dims, ...])decorates f(self, var, *, _match=None) like DecoratingCalcs.decorator, but also:
track_f(f, *[, name, aliases, deps, ...])add f to self.known_calcs as a LoadableQuantity.
- decorator(name=None, deps=[], *, aliases=[], dims=None, load_across_dims=None, ignores_dims=[], reduces_dims=[], partition_across_dim=None, partition_deps=None, **kw_decorator)
decorates f(self, var, *, _match=None) like DecoratingCalcs.decorator, but also:
- name is treated as a Pattern (re.compile() it if necessary)- returned function will determine _match via Pattern.fullmatch, if necessary.(This way, the function can be called directly, though that is usually discouraged.)
- loadable_quantity_cls
alias of
LoadablePattern
- track_f(f, *, name=None, aliases=[], deps=[], attr_deps=[], value_deps=[], dims=None, ignores_dims=[], reduces_dims=[])
add f to self.known_calcs as a LoadableQuantity.
See help(self.decorator) for details on parameters.