sigmaa HKLIN foo_in.mtz [ HKLOUT foo_out.mtz
]
[Keyworded input]
The program SIGMAA (Read, 1986) can be used to combine a set of calculated phases with a set of previously determined phases for which the phase probability profiles are held in the form of Hendrickson-Lattman coefficients.
It calculates weighted Fourier coefficients either from the calculated phase from a (partial) model structure, or by combining phase probabilities from isomorphous phases with those from one or more (partial) structures.
WARNING: SIGMAA has been converted so that it will work with MNFs. In a similar fashion to FFT (see also documentation on Missing Number Flags); Fo will be replaced by DFc, if it is missing, for the FWT map coefficient. Also, when combining phases of missing data, the phase probability will be assumed to be uniform. However, the procedure may not be optimal, hopefully a version from Randy Read will be available in a subsequent version.
There are 3 main options:
where Fo, Fc are observed and calculated structure factors. Note that for centric terms, the (2m|Fo|-D|Fc|) coefficients are replaced by m|Fo|; these coefficients reduce/remove model bias.
The program first calculates, iteratively in resolution bins, the value of SigmaA as defined by Srinivasan, 1966; and then for each reflection, the figure of merit m and the estimate of the error in the partial structure from coordinate errors D (Luzzati, 1952). There is an option to scale these to modify the weight assigned to the partial structure information, or to read in values of SigmaA derived previously.
If EPS is the multiplicity for the reflection zone (Rogers, 1965),
SigmaA = D*sqrt(sigmaP/sigmaN) Eo = Fo/sqrt(EPS*sigmaN) and Ec = Fc/sqrt(EPS*sigmaN) where sigmaN = <Fo**2/EPS> and sigmaP = <Fc**2/EPS>.
The figure of merit m = <cos(AlphaTrue - AlphaCalc)> is calculated from Eo, Ec and SigmaA, while the map coefficients arise from the approximation that
m Eo exp(iAlphaCalc) = 0.5 Eo exp(iAlphaTrue) + 0.5 SigmaA Ec exp(iAlphaCalc)
If coordinate errors are assumed to be normally distributed,
ln SigmaA = intercept - slope * (sintheta/lambda)**2 where intercept = 0.5 * ln(sigmaP/sigmaN) and slope = pi**3 * (mean square coordinate error)
The various data control lines are identified by keywords. Only the first 4 characters need be given. Those available are:
COMBINE, END, ERROR, LABIN, LABOUT, PARTIAL, RANGES, RESOLUTION, SIGMAA, SYMMETRY, TITLE
[Required for option (b).]
Use this option to combine experimental phase information from isomorphous replacement (columns PHIBP, WP, HLA, HLB, HLC, HLD from the input data file) with that from (partial) model structures. This option produces an output data file assigned to HKLOUT.
Merge together two sets of MIR phases. RESOLUTION is the same as above.
If this command is present, a straight line is fitted to the plot of ln (SigmaA) against resolution in order to estimate the rms coordinate error.
Input column assignments. If you wish to make use of Hendrickson Lattman coefficients in the input MTZ file, the program assumes that they will have the column labels HLA, HLB, HLC and HLD. If you wish to use alternative column labels for the HL coefficients then they must be specified using LABIN. Program labels for the various options are:
Output column assignments. Program labels for the options producing output data are:
Produce weighted map coefficients from a partial structure. This is the default option. It produces an output .mtz data file.
Set the number of resolution bins <nbin> and the reflection monitoring interval <mon>. Defaults: 20 1000; maximum <nbin> allowed: 50.
<nbin> is the number of resolution bins (equal width in [sin(theta)/(lambda)]**2 in which to divide partial structure data for normalization and sigmaA estimation. It is IMPORTANT that resolution ranges contain sufficient reflections. It is best to use as large a value of <nbin> as possible, as long as the estimates of sigmaA vary smoothly with resolution. If they do not, <nbin> should be reduced until sigmaA does vary smoothly. A good first guess is the number of reflections divided by 1000. If sigmaA refinement converges to zero in one or more of the ranges (which happens sometimes when the correct value is low), this can usually be circumvented by decreasing <nbin>.
Information about every <nmon>-th reflection will be written to the log file.
Low and high resolution limits in either order or upper limit if only one is specified. These may are in Angstroms or if both are <1.0, units of 4(sintheta/lambda)**2. By default, all the data in the file are used.
Input SigmaA values from another source. Normally these values will be calculated in the program so this keyword is unnecessary. However if the agreement between Fobs and Fcalc becomes very good - for example if the Rfactor is <25% - then the calculated SIGMAA values weight up the PHIcalc at the expense of the experimental phases. This may not be desirable and you may need either to invoke the DAMP keyword or retain an early estimate of sigmaA.
SigmaA(1,1) [ SigmaA(2,1) ... [SigmaA(nps,1)]] SigmaA(1,2) [ SigmaA(2,2) ... [SigmaA(nps,2)]] .......... SigmaA(1,nbin) [ SigmaA(2,nbin) ... [SigmaA(nps,nbin)]]
Spacegroup number or name or operators in International Tables format. By default, symmetry information is read from the input file header.
A title written to the log file and in the header of the output MTZ data file (if produced).
End of input.
This is an MTZ file assigned to logical name HKLIN. The following column assignments are required (those which are optional are enclosed in square brackets):
This is an MTZ file assigned to logical name HKLOUT. The file will contain all the columns from the input file with extra columns appended, the number depending on which option was used. The default labels of these columns are given below; these may be changed with LABOUT command.
The phases used for these maps will always be PHIC.
Originator: August 1986: R.J. Read.
Incorporates updates from [11].
sigmaa HKLIN hktmpico.mtz HKLOUT hksigmaa1.mtz TITLE SIGMAA m*Fo-Fc map pfk B.st. BP2.. PROLSQ cycle<1>.. RESOLUTION 100.0 2.6 ! Resolution limits in Angstroms RANGES 30 5000 ! Number of bins for analysis v. resolution ! Monitor every 5000th reflection PARTIAL ! Option for difference map coefficients ERROR ! Use sigmaA v resolution for coordinate error LABIN FP=FO SIGFP=SIGFO FC=FC PHIC=PHIC END
Note: This example uses the default output file labels. To calculate the `difference' map, use DELFWT in FFT. To calculate the `2Fo-Fc' map, use FWT.
sigmaa HKLIN ../data/sp400_monster2.mtz HKLOUT ../data/sp400_phase_comb.mtz << END-sigmaa TITLE TRYIT RANGES 10 1000 ! Number of analysis bins, monitor interval RESOLUTION 0.0 0.25 ! Resolution limits in 4(sintheta/lambda)**2 ERROR ! Use sigmaA v resolution for coordinate error COMBINE PART 1 ! Combine isomorphous + 1 partial model LABOUT PHCMB=PHCMB WCMB=WCMB FWT=FWT PHWT=PHWT LABIN FP=F(Mer) SIGFP=SIGF(Mer) PHIBP=PHIBEST WP=FOM - HLA=A HLB=B HLC=C HLD=D - FC=FC PHIC=AC END END-sigmaa
The phase combination method used in sigmaa depends on the Hendrickson and Lattman (1970) formulation of the phase probability profile for a phase Alpha:
P(Alpha) = exp(A cosAlpha + B sinAlpha + C cos2Alpha + D sin2Alpha)
A, B, C, D are known as the phase coefficients. Phase information from different sources can be combined by a simple addition of the phase coefficients from each determination. The application of a weighting scheme proposed by Sim (1959) allows for the inclusion of phase information determined from a partial structure.
The principles of the method and details of the original phase combination program are described by Bricogne (1976).
It is assumed that the coefficients giving least bias vary as a linear function of partial structure influence. The variation of information is the parameter used to measure the contribution of each partial structure to the combined phase probability profile; and this is normalised to give partial structure weights w. These are tabulated as a function of resolution in the log file. If there are p partial structures, the modified map coefficients are given by
[2mFo - sum_over_p(wDFc)] / [2 - sum_over_p(w)]