Hi Ed,

On Mon, Jul 11, 2011 at 3:35 PM, Edward A. Berry <BerryE@upstate.edu> wrote:
It seems to me there are two things that could be meant by "expand to P1"

One is when data has been reduced to the Reciprocal Space
asymmetric unit (or otherwise one asymmetric unit of a
symmetric dataset has been obtained) and you want to expand
it to P1 by using symmetry to generate all the
symmetry -equivalent reflections.

This is what the cctbx.miller.array.expand_to_p1() method does. -- It is a very simple algorithm once you have the list of symmetry operations.
 
The other is where a full P1 dataset has been calculated from just
one asymmetric unit of the crystal (and hence does not exhibit the
crystallographic symmetry) and you want to generate the transform
of the entire crystal. (I think this is how all the space-group -
specific fft programs used to work before computers got so fast it
was less bother to just do everything in P1 with the whole cell)
Presumably this involves applying the real space symmetry
operators to get n rotated (or phase-shifted for translational
symmetry) P1 datasets and adding them vectorially.

 I tend to call this "symmetry summation in reciprocal space". You are correct, this is used when we compute structure factors with the FFT method.

Ralf