Fix bug that occurred in decompose because for Numpy arrays, the value was being passed by reference, not by copy, and for Quantities with a non-unity scale, this modified the value of the original Quantity