A preconditioned conjugate gradient method for computing eigenvector derivatives with distinct and repeated eigenvalues. (January 2015)