I have a matrix A= array([[ 5.25611770e+01, -1.52618366e-01, 2.96790052e+01, -6.18890493e+01], [-1.52618366e-01, 9.22957306e+00, -3.18143330e+00, 3.18998264e+01], [ 2.96790052e+01, -3.18143330e+00, 4.98805057e+01, 2.06257296e+01], [-6.18890493e+01, 3.18998264e+01, 2.06257296e+01, 3.38531289e+03]])
in python, their eigenvectors using scipy.linalg.eigh(A) are:
[[ 0.13131632 0.68589019 0.71551958 0.01850384] [-0.97577162 0.21673083 -0.02843274 -0.00943735] [-0.17454149 -0.69452338 0.69795162 -0.0060059 ] [ 0.0126898 0.01482094 0.00931854 -0.99976621]]
And using scipy.linalg.eigh(A,Id) that is the generalized eigenvalue problem with the identity, their eigenvectors must be the same that scipy.linalg.eigh(A), but they are:
[[ 0.13131632 0.68589019 0.71551958 -0.01850384] [-0.97577162 0.21673083 -0.02843274 0.00943735] [-0.17454149 -0.69452338 0.69795162 0.0060059 ] [ 0.0126898 0.01482094 0.00931854 0.99976621]]
Note the last column.
Looks like the last one was just flipped in its sign?
Note that if $\mathbf q$ is an eigenvector, so is $-\mathbf q$ since $\mathbf A \mathbf q = \lambda \mathbf q \; \Leftrightarrow \; \mathbf A (-\mathbf q) = \lambda (-\mathbf q)$. In other words, the sign of the eigenvector is not determined.