Hi Pavel,

did you really collected anomalous neutron data? I doubt.

No, I'm unfortunately not yet developing methods for phasing neutron structures :-) Maybe I should actually have finished the second sentence in my mail, as it looked like I was implying that neutron anomalous signal might be something worth caring about, when what I really meant was "I wonder why phenix.refine is even considering this option". I was sitting in a conference at the time...

Then how you ended up having anomalous data set for your neutron observations: FO,SIGFO,DANO,SIGDANO,ISYM ?

As I mentioned in my original mail, I've discovered that SCALA always outputs I+ and I- no matter what you do. From the manual:

"Normally anomalous scattering is ignored during the scale determination (I+ & I- observations are treated together), but the merged file always contains I+ & I-, even if the ANOMALOUS OFF command is used."

Thus if you don't take special precautions, e.g. in TRUNCATE, these will be converted to F+ and F- and (I now know) phenix.refine will use them. However I've now discovered that the keyword ANOMALOUS NO in TRUNCATE will prevent output of the anomalous columns altogether.

All in all, if you don't have anomalous data make sure your inputs files do not have spurious (anomalous) arrays: phenix.refine can't read your mind to see what you have done in your diffraction experiment - it's beyond the scope of what it's supposed to do!

Fine, I've now learned an important lesson in input/output checking! But could I politely suggest that an improvement in phenix.refine's mind-reading capabilities: if the user mistakenly inputs a file as neutron data with anomalous columns in, then these should be ignored, as the concept is by default incompatible with neutron data? As I've discovered, the default behaviour of SCALA and TRUNCATE is to leave these columns in...

Finally, it would also be nice if the neutron maps and not just the X-ray maps were displayed in Coot during refinement and if the summary panel at the end of refinement showed statistics for the neutron data as well as for the X-ray data. But having said that, thanks for a powerful and user-friendly program!

Best wishes
Derek

On 5/29/13 4:18 AM, Derek Logan wrote:
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