Let's say we have two sets of nodes, A and B, and let R be the |A| x |B| matrix that gives relatedness between A and B.
Given a vector w indexed by B, genetic_relatedness_vector gives us Rw, a A-vector.
Currently, using the nodes argument, we can set A to be anything.
By setting appropriate entries of w to zero we can let B be a subset of the vectors, but we don't have the ability to let B include non-sample nodes.
However, if we'd like to do PCA on non-sample nodes, we need to be able to do this. I think this is straightforward if centre=False, which is already a requirement for passing in the nodes argument; the daunting thing is figuring out what to call the new argument we need.
Note that we do need to be able to have A and B different, for other applications.