fix eigenvector and eigenvalue problem; enum added