Users' Instructions for Program "diffE" --------------------------------------- c c Robert H. Blessing c Hauptman-Woodward Institute c 73 High Street c Buffalo, New York 14203, USA c Telephone: (716) 856-9600, extension 335 c Electronic Mail: blessing@hwi.buffalo.edu c c Evaluate SIR or SAS difference E values. c c SIR difference E: c c abs[sqrt{sum[f(Der)**2]}*E(Der) - sqrt{sum[f(Nat)**2]}*E(Nat)] c diffE = -------------------------------------------------------------- c q*sqrt{sum[f(Der)**2] - sum[f(Nat)**2]} c c SAS difference E: c c sqrt{sum[(f0 + fp)**2 + fpp**2])}*abs[E(+h) - E(-h)] c diffE = ---------------------------------------------------- c 2*q*sqrt[sum(fpp**2)] c c where q = q0*exp(q1*s**2 + q2*s**4), in which s = sin(theta)/lambda, c is a least-squares-fitted empirical renormalization scaling function c such that = 1. c . . . character locscl*60,type*3,evaldat(2)*60 . . . io1=10 io2=20 ilp=60 c c Read control data file "diffe.dat". c open (unit=io1,file='diffe.dat',status='old') read (io1,'(a)') atitle read (io1,'(a)') locscl read (io1,'(a)') type if (type.eq.'sir') type='SIR' if (type.eq.'sas') type='SAS' read (io1,'(a)') evaldat(1) if (type.eq.'SIR') read (io1,'(a)') evaldat(2) data tmax,xmin,ymin,zmin,zmax,smin,smax /7*0/ read (io1,*,end=5) tmax read (io1,*,end=5) xmin read (io1,*,end=5) ymin read (io1,*,end=5) zmin read (io1,*,end=5) zmax read (io1,*,end=5) smin,smax 5 close (unit=io1,status='keep') c----------------------------------------------------------------------- c c Control data: c ------------- c c atitle (a) = Job title c c locscl (a) = Name of the locally scaled reflections file "data.locscl" c or "sort.locscl" from the program "locscl", an ascii, c formatted file read by program "diffe" under free format c with records: c c h,k,l,F1,sigma(F1),F2,sigma(F2),E1,sigma(E1),E2,sigma(E2) c c type (a) = SIR or SAS c c For an SIR case, c the E1 data should be those for the native crystal, and c the E2 data should be those for the derivative crystal. c c For an SAS case, c the E1 data should correspond to +h+k+l, and c the E2 data should correspond to -h-k-l. c c evaldat(1) (a) = Name of the "eval.dat" file from program "levy" (or c program "rogers") for native SIR data or SAS data. c ------ --- c evaldat(2) (a) = Name of the "eval.dat" file for derivative SIR data. c ---------- --- c For an SAS case, omit the evaldat(2) record. c c From the "eval.dat" file(s) the program gets the c crystal data, the unit cell chemical composition, and c the atomic scattering factor coefficients. c c tmax (*) = Maximum value of c c abs(Delta) abs(Delta) c ---------- = ----------------------- c sigma 1.25*median[abs(Delta)] c c abs[(E1 - E2) - median(E1 - E2)] c = ---------------------------------------------, c 1.25*median{abs[(E1 - E2) - median(E1 - E2)]} c c for reflection pairs to be accepted for renormalization. c The variable tmax is used to exclude data with unreliably c large values of abs(E1 - E2) in the tails of the data-set c (E1 - E2) distribution. c c The tmax test assumes that the data-set t = Delta/sigma c distribution should approximate a zero-mean, unit-variance c normal distribution, for which values of t .lt. -tmax or c t .gt. +tmax are extremely improbable. c c Default value: tmax = 99.9 c Recommended trial value: tmax = 6 c c xmin (*) = Minimum value for c c min[E1/sigma(E1), E2/sigma(E2)] c c for reflection pairs to be included in the program "diffE" c processing. Default value: xmin = 0. Recommended trial c value: xmin = 3. c c ymin (*) = Minimum value for c c abs(E1 - E2)/sqrt[sigma(E1)**2 + sigma(E2)**2] c c for reflection pairs to be included in the program "diffE" c processing. Default value: ymin = 0. Recommended trial c value: ymin = 1. c c zmin (*) = Minimum value for c c diffE/sigma(diffE) c c for reflection pairs to be included in the diffE-sorted c output reflections file "sort.diffe". Default value: c zmin = 0. Recommended trial value: zmin = 3. c c zmax (*) = Maximum value for c c (diffE - diffEmax)/sigma(diffE) c c for reflection pairs to be included in the diffE-sorted c output reflections file "sort.diffe". Default value: c zmax = 0. Largest recommended trial value: zmax = 3. c c For SIR cases c c sum[f(Heavy)] c diffEmax = ------------------------------ , c sqrt{epsilon*sum[f(Heavy)**2]} c c c sum[f(Der)] - sum[f(Nat)] c diffEmax = --------------------------------------------- , c sqrt{epsilon*sum[f(Der)**2] - sum[f(Nat)**2]} c c and for SAS cases c c sum(fpp) c diffEmax = ------------------------- . c sqrt[epsilon*sum(fpp**2)] c c smin, smax (*) = Minimum and maximum limits for s = sin(theta)/lambda c for reflection pairs to be included in the program c "diffE" processing. c c For default values smin = smax = 0, the exclusion c test is not applied. c c Exclusion based on sin(theta)/lambda limits is c applied only if smin .gt. 0 .or. smax .gt. 0. c c The user might need to try several runs of the program, experimenting c with the input cutoff data selection variables tmax, xmin, ymin, and c smax, in order to arrive an acceptable distribution of diffE values, c as judged by the plots of the diffE distributions and the lists of c distribution statistics recorded in the "diffe.lp" output file. c c In addition to using the output cutoff variable zmin to reject data c that have large estimated standard uncertainties, the user should c inspect the (descending-order) diffE-ranked, formatted, ascii output c reflection file "sort.diffe", and delete any reflection pairs at the c top of the list that have diffE larger than about three or four. Such c large diffE values are very improbable and are almost certainly due to c measurement errors. c c----------------------------------------------------------------------- The purpose of the input cutoff smax is to prevent generating spuriously large diffE values from high-resolution data pairs measured with large uncertainty due to imperfect isomorphism and/or the general falloff of scattering intensity with increasing scattering angle. dmin (A) smax = sin[theta(max)]/lambda = 1/(2*dmin) (A**-1) ---- ---- 10 0.05 9 0.05556 8 0.0625 7 0.07143 6 0.08333 5 0.1 4 0.125 3.5 0.14286 3 0.16667 2.5 0.2 2 0.25 1.5 0.33333 1 0.5