Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

We are developing some computer program which at some point uses a library (for which we do not have access to its source code) to solve the general eigenvalue problem; given two input real symmetric matrices $A$ and $B$, calculate eigenvalues $\lambda$ and eigenvectors $v$.

Then we need to test another library which performs the same calculation. The initial problem is that it only accepts as input hermitian matrices.

Therefore we wonder if we could somehow convert our real matrices $A$ and $B$ to hermitian. I guess we would need to specify zero for the imaginary part of the complex number.

share|improve this question
Unless A and B are symmetric, they cannot be 'made' hermitian. At best, you can create separate matrices as $A^TA, B^TB$ from A and B which will be symmetric (& have non-negative eigenvalues). If you can provide more details about the libraries, that would be great! Are you working on LAPACK/Intel MKL type libraries? –  Inquest Feb 24 '12 at 11:29
sorry, I have updated my question. Yes, the matrices are real symmetric, and we are working with a proprietary library which mimics dspgvx from LACPACK –  flow Feb 24 '12 at 11:38
If A and B are symmetric, A and B are hermitian as well. As you said, add 0 as imaginary part. I am surprised why the other library specifically requires a complex matrix! Using LAPACK's implementation of DSPGVX would itself suffice, wouldn't it? Using a hermitian algorithm for a symmetric matrix is an unnecessary waste of time and storage. –  Inquest Feb 24 '12 at 11:45

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.