Yes, once `unit` is set to something else than `None`, the `u.Quantity` initilializer will convert whatever unit `x`, `y`, and `z` came with to `unit` (and raise an exception if this is not possible; which is why you would be able to omit the physical type check; of course, if you wish, you could still do the `u.Quantity` inside another try/except so that you can catch the `u.UnitsError` and change the exception text; my sense, though, is that this would be superfluous).