OperatorTrait¶
- class OperatorTrait(*args, **kwargs)¶
Bases:
ProtocolA protocol indicating all methods implemented by operator classes.
Attributes
- groups¶
Returns the groups indices.
Methods
- equiv(other, atol)¶
Checks this operator with another for equivalence up to the specified absolute tolerance.
- classmethod from_terms(terms)¶
Constructs a new operator from an iterator (see also
iter_terms()).
- classmethod from_terms_with_groups(terms)¶
Constructs a new operator from an iterator (see also
iter_terms_with_groups()).
- get_support()¶
Returns the set of mode indices which this operator acts upon.
- group_weights()¶
Returns the mean absolute coefficient magnitude of each group.
This is equivalent to (but cheaper than) reducing
get_coeffs()andgroupsdown to one value per group in NumPy, because it does not copy one value per ungrouped term out of the operator just to aggregate it away again.
- has_groups()¶
Returns whether this operator tracks group indices.
This is equivalent to (but cheaper than) checking
op.groups is not None, because it does not copy the group indices out of the operator in order to inspect them.- Return type:
- ichop(atol)¶
Trims coefficients below the absolute tolerance from this operator.
- Parameters:
atol (float)
- iter_terms_with_groups()¶
Iterates over the terms of this operator with their group indices.
- Return type:
- normal_ordered(*args, **kwargs)¶
Returns the normal-ordered form of this operator.
Note
A specific implementation of this method may take additional arguments.
- Return type:
- relabel_modes(permutation)¶
Relabels the modes of the operator.
- simplify(atol)¶
Simplifies the terms of this operator, discarding those below the absolute tolerance.