The xrefin write statement allows one to merge reflection information. However, no relative scaling is performed. The following example shows how information can be merged. Suppose that reflection file ``r.1" contains the following information:
index 1 2 3 fobs 40. phase 90. fom 0.5 index 2 3 4 fobs 30. phase 60. fom 0.4 weight 1.4 index 3 4 5 fobs 20. phase 50. fom 0.3 index -1 -2 -3 fobs 40. phase 90. fom 0.5 sigma 4.0 index -2 -3 -4 fobs 30. phase 60. fom 0.4 index -3 -4 -5 fobs 20. phase 50. fom 0.3and reflection file ``r.2" contains
index 1 2 3 fcalc 3. 3.5 fpart 4. 4.5 sigma 3.0 index -1 2 -5 fobs 20. fcalc 4. 4.5 weight 3.0Merging of the two files can then be accomplished by using the following statements:
xrefin nreflection=100 reflection @r.1 end reflection @r.2 end write reflection fobs fcalc output=merge.dat end endThe resulting file ``merge.dat" will contain the following information:
index 1 2 3 fobs 40. phase 90. fom 0.5 fcalc 3. 3.5 fpart 4. 4.5 sigma 3.0 index 2 3 4 fobs 30. phase 60. fom 0.4 weight 1.4 index 3 4 5 fobs 20. phase 50. fom 0.3 index -1 -2 -3 fobs 40. phase 90. fom 0.5 sigma 4.0 index -2 -3 -4 fobs 30. phase 60. fom 0.4 index -3 -4 -5 fobs 20. phase 50. fom 0.3 index -1 2 -5 fobs 20. fcalc 4. 4.5 weight 3.0
Note that reflection 1,2,3 is already present in the first file. Information has been merged for this reflection.