On 31 January 2012 02:30, Jens Kaiser <[log in to unmask]> wrote:
> Hi all,
> we encountered an odd behaviour of REINDEX.
>
> Snip form logfile:
>
> Data line--- reindex HKL (h+l)/2, -k, (h-l)/2
> Data line--- end
>
> Reflections will be reindexed, and unit cell recalculated
>
> Reindexing transformation:
> (h' k' l') = ( h k l ) ( 1.00000 0.00000 1.00000 )
> ( 0.00000 -1.00000 0.00000 )
> ( 0.50000 0.00000 -0.50000 )
>
> Obviously, the first line of the matrix is not what we intended to
> create.
>
> inputting the transformation as HKL h/2+l/2, -k, h/2-l/2
> produces the desired result:
>
> Data line--- reindex HKL h/2+l/2, -k, h/2-l/2
> Data line--- end
>
> Reflections will be reindexed, and unit cell recalculated
>
> Reindexing transformation:
> (h' k' l') = ( h k l ) ( 0.50000 0.00000 0.50000 )
> ( 0.00000 -1.00000 0.00000 )
> ( 0.50000 0.00000 -0.50000 )
>
>
>
> Admittedly, the documentation does not use any brackets in the examples,
> but i would expect REINDEX either to throw an error or treat (h+l)/2
> like (h-l)/2 but not treat them in the way encountered.
Jens
Reindex is not treating (h+l)/2 any differently from (h-l)/2, they are
being treated identically, i.e. it is simply ignoring the brackets in
both cases (which is why expanding the expressions without brackets
works)..
So (h+l)/2 is being treated as though you had specified h+l/2 and
(h-l)/2 becomes h-l/2.
Don't forget that the rule for matrix multiplication is row-by-column,
not row-by-row!
Cheers
-- Ian
|