I am solving a linear stability problem using finite element discretization. Then, I have a generalised eigenvalue problem: $$ \lambda M x = J x.$$ I obtain complex eigenvalue and eigenvectors from Arpack using inverse shift method. I would like to compare the eigenvectors obtained with different meshes. To do this it is necessary to normalize norm and phase in a proper way. As concerns the norm of the eigenvector I normalize it imposing: $$ x^HMx = 1. $$ Now, I would need an integral norm for the phase too. I tried one but it doesn't seem to work. I cannot obtain similar eigenvectors with two different meshes.
What do you mean by "compare eigenvectors"? If you just want to measure a concept of distance between them, I would use the angle between subspaces, which is independent of the normalization.
Please refer to some work of Peter Arbenz: http://people.inf.ethz.ch/arbenz/publications.html
He had worked out some generalized eigenvalue problems with constraint condition (I remembered that he used the Jacobi–Davidson Algorithm), his model problems came from the FEM for Maxwell equations.