Hi,
I'm doing a joint X-ray neutron refinement in Phenix and have run into some behaviour that puzzles me. I had not been paying any attention to the use or non-use of anomalous signal in the neutron dataset, as
This is what I get if I let phenix.refine itself decide whether or not to use anomalous data:
================================= Neutron data ================================
F-obs:
neutron.mtz:FO,SIGFO,DANO,SIGDANO,ISYM
Miller array info: neutron.mtz:FO,SIGFO,DANO,SIGDANO,ISYM
Observation type: xray.reconstructed_amplitude
Type of data: double, size=16672
Type of sigmas: double, size=16672
Number of Miller indices: 16672
Anomalous flag: True
Unit cell: (removed)
Space group: P 21 21 21 (No. 19)
Systematic absences: 0
Centric reflections: 1258
Resolution range: 29.22 1.89826
Completeness in resolution range: 0.785008
Completeness with d_max=infinity: 0.78486
Bijvoet pairs: 6832
Lone Bijvoet mates: 1750
Anomalous signal: 0.0876
Number of F-obs in resolution range: 16672
Number of F-obs<0 (these reflections will be rejected): 0
Number of F-obs=0 (these reflections will be used in refinement): 0
Refinement resolution range: d_max = 29.2200
d_min = 1.8983
and this is what I get if I forcibly switch off use of anomalous data in the phenix.refine GUI:
================================= Neutron data ================================
F-obs:
neutron.mtz:FO,SIGFO,DANO,SIGDANO,ISYM
Miller array info: neutron.mtz:FO,SIGFO,DANO,SIGDANO,ISYM
Observation type: xray.reconstructed_amplitude
Type of data: double, size=16672
Type of sigmas: double, size=16672
Number of Miller indices: 16672
Anomalous flag: True
Unit cell: (removed)
Space group: P 21 21 21 (No. 19)
Systematic absences: 0
Centric reflections: 1258
Resolution range: 29.22 1.89826
Completeness in resolution range: 0.785008
Completeness with d_max=infinity: 0.78486
Bijvoet pairs: 6832
Lone Bijvoet mates: 1750
Anomalous signal: 0.0876
force_anomalous_flag_to_be_equal_to=False
Reducing data to non-anomalous array.
R-linear = sum(abs(data - mean(data))) / sum(abs(data))
R-square = sum((data - mean(data))**2) / sum(data**2)
In these sums single measurements are excluded.
Redundancy Mean Mean
Min Max Mean R-linear R-square
unused: - 29.2234
bin 1: 29.2234 - 4.0863 1 2 1.699 0.0240 0.0011
bin 2: 4.0863 - 3.2448 1 2 1.793 0.0302 0.0022
bin 3: 3.2448 - 2.8350 1 2 1.800 0.0417 0.0041
bin 4: 2.8350 - 2.5760 1 2 1.764 0.0486 0.0054
bin 5: 2.5760 - 2.3914 1 2 1.745 0.0505 0.0051
bin 6: 2.3914 - 2.2505 1 2 1.717 0.0513 0.0051
bin 7: 2.2505 - 2.1378 1 2 1.658 0.0533 0.0056
bin 8: 2.1378 - 2.0448 1 2 1.614 0.0611 0.0074
bin 9: 2.0448 - 1.9661 1 2 1.575 0.0634 0.0075
bin 10: 1.9661 - 1.8983 1 2 1.485 0.0736 0.0097
unused: 1.8983 -
Fobs statistics after all cutoffs applied:
Miller array info: None
Observation type: xray.amplitude
Type of data: double, size=9840
Type of sigmas: double, size=9840
Number of Miller indices: 9840
Anomalous flag: False
Unit cell: (removed)
Space group: P 21 21 21 (No. 19)
Systematic absences: 0
Centric reflections: 1258
Resolution range: 29.22 1.89826
Completeness in resolution range: 0.855801
Completeness with d_max=infinity: 0.855503
What's going on here? If I let phenix.refine decide automatically, it looks like it's reading in F+ and F- separately and regarding them as independent in the refinement. If I force "no anomalous" it merges them. However I can't work out whether in either
case it has actually read FOBS instead of the Friedel mates. According to the SCALA manual the I+ and I- columns will always be written out even if the keyword ANOMALOUS OFF is used, so this is a potential pitfall for many. In addition, phenix.refine seems
to identify the neutron data first as xray.reconstructed_amplitude
then as xray.amplitude even though the data are explicitly defined as neutron data in the GUI.
I can send more information if required!
Thanks
Derek