Hi Jan,

As you can see the index (0, 1, 2) is added with zero amplitude where instead 
the index (1, 0, 2) should be renamed to (0, 1, 2) as those two are 
symmetrically equivalent for any tetragonal spacegroup (like P4). So to me it 
looks like the complete_array method does not honor symmetrically equivalent 
indices at all, where it should imho. What do you think on this issue?

Considering the current implementation of method complete_array, it seems to me that the problem lies in method complete_set of class miller.set, that replaces (1, 0, 2) with (0, 1, 2) in your example for no particularly good reason I can see. The implementation of complete_array clearly assumes that complete_set should not do that. But then, the way complete_set is implemented, such surprises are bound to happen. A more involved algorithm is necessary there.

I put that on the todo list.

Best wishes,

Luc Bourhis