eig() is for nonsymmetric matrices and eigh() is for symmetric
(or hermitian matrices).
The former most likely will return complex eigen values. The latter
always returns real eigen values.
eig() is slower and numerically less reliable (it calls LAPACK's DGEEV
and ZGEEV). Even for symmetric matrices it can produce complex
eigen pairs due to numerical round-off.