I am a bit against the name of the function here. It isn't checking the parameters (as in validating them), it is normalizing them against each other. Let's see what this function looks like after a refactor using np.broadcast_arrays() and see what it really should be called.