> eig could still dispatch to special symmetric matrix methods internally, but
> always return Complex results.

If we forced the return type to be consistent, we would potentially be
incurring the cost of a final memory copy to promote the answer. In
the overall scheme of things, that may not be so expensive in the end.
However, working with the returned data could be subperformant
consequently, e.g. if you were going to use the eigenvectors to rotate
other matrices into the diagonalizing basis of the original matrix and
the eigenvectors were all real, you'd be spending half your time
propagating numerical roundoffs around zero.

In the sqrtm issue, people didn't really seem to have a strong opinion
one way or the other about forcing the return type. At this point I
can't really think of a user gotcha moment that would be sufficiently
strong to argue against the current behavior. But if there was
sufficient interest I suppose we could always revisit the issue.

Thanks,

Jiahao Chen, PhD
Staff Research Scientist
MIT Computer Science and Artificial Intelligence Laboratory

Reply via email to