Fixed SVD to handle p > n scenario