Reciprocal space

Leave this function alone, it is legacy code that I wrote. I'll deal with this in a different PR