I apologize in advance for being slightly off topic.  I was hoping someone on this list would know the answer to my question.

I have implemented a double-shift QR algorithm in three languages, C++, Python, and MATLAB.  The reason for the Python and MATLAB implementations are to check my C++ version which uses the boost bindings to LAPACK.  My problem is that none of the implementations give the same result.  Even the QR decompositions are different.  I know the QR decomposition isn't unique, but it is only not-unique up to multiplying by -1.  At least that's the way I understand it.

Is anyone aware of how I might go about testing my algorithm?  Is there a published example I can compare with?

Thanks,
Jeremy