numpoly.clean_attributes¶
- numpoly.clean_attributes(poly: numpoly.baseclass.ndpoly, retain_coefficients: Optional[bool] = None, retain_names: Optional[bool] = None) → numpoly.baseclass.ndpoly[source]¶
Clean up polynomial attributes that does not affect representation.
Some operations results in polynomial with structures that are redundant. This includes extra unused indeterminants and coefficients consisting of only zeros.
- Args:
- poly:
Polynomial to clean up.
- retain_coefficients:
Do not remove redundant coefficients. If omitted use global defaults.
- retain_names:
Do not remove redundant names. If omitted use global defaults.
- Return:
Same as poly, but with attributes cleaned up.
- Example:
>>> q0, _ = numpoly.align_polynomials(*numpoly.variable(2)) >>> q0.indeterminants polynomial([q0, q1]) >>> q0.exponents array([[0, 1], [1, 0]], dtype=uint32) >>> q0 = numpoly.clean_attributes( ... q0, retain_coefficients=False, retain_names=False) >>> q0.indeterminants polynomial([q0]) >>> q0.exponents array([[1]], dtype=uint32)