
Phaser Elves guide to their scripts

1) In a rush?  Just type this:

scripts/mlphare.com >! logs/mlphare.log
scripts/dm.com 50% mlphared.mtz >! logs/dm_50.log
scripts/fft.com dmed.mtz >! logs/fft.log

# if you have "o" installed:
ono
  O > @ffted.omacro

That should give you something to look at in "o".

Phases calculated from the metal sites in scripts/mlphare.com will be placed in a file
called ./mlphared.mtz by the first command.  

The second command runs dm on these phases, using 50% as the solvent content.  
The solvent-flattening results are placed in ./dmed.mtz.

The fft.com script will calculate a phased electron density map from the 
solvent-flattening results.  If an appropriate conversion program is available 
(mapman, brix), an "o version" of this map will also be generated by fft.com, 
as well as a bones trace, and an o macro (called ffted.omacro) for viewing it.



2) Okay, how does it work?

    The details of how each script behaves are described below.  

    Phaser Elves do a lot of exploratory work to find the correct parameters.
for your phasing run.  It is HIGHLY recommended that you alow Phaser Elves to
explore alternative sign/hand/spacegroup/solvent-content parameters before you
look at any maps.  Particularly for MAD data, you can get exactly the same
phasing statistics for a number of choices of sign/hand/spacegroup, but
only one combination of these will give you an interpretable map.  

    However, once you are certain you have the correct sign and hand choice,
run Phaser with the words "no flip" on the command line, to keep them from 
re-exploring all these alternatives.

    Phaser Elves will also calculate a phased difference Fourier, using all
your difference data, once they are done doing all of the above.  By default,
peaks in this difference Fourier are added to the mlphare script (one at a
time), and then the refinement continues.  This process repeats until all the
significant peaks in the difference Fourier have been tried.  To turn this off,
put the words "no add" on the command line.
	

In the scripts/ directory:

################################################################################
scripts/mlphare.com	- mlphare script
    reads: ../merged.mtz	- cad-ed data sets
    makes: mlphared.mtz	- phases calculated from sites, ready for dm
    usage: scripts/mlphare.com [other.mtz]
    
    example: scripts/mlphare.com

    description:
	The scripts/mlphare.com script has been carefully written to have the best 
	chance of generating a sucessful mlphare run.  Phaser Elves are 
	careful not set up scripts/mlphare.com to refine indeterminant parameters, 
	such as anomalous occupancy when there are no anomalous diffs, and 
	things like one "y" position in P2.  For derivatives where the 
	anomalous differences seem stronger than the isomorphous ones 
	(typical for MAD), the atom refinement flags are set up to take 
	advantage of this.  
	
	Also, since Phaser Elves don't always refine all the atomic parameters, 
	scripts/mlphare.com might only be set up to refine a few.  So, don't believe
	a nice, high FOM if you havn't refined your occupancies yet! 
	
	scripts/mlphare.com also contains all the information Phaser Elves need to
	continue refining your atom sites.  So, once you have got it running, 
	you can run Phaser Elves with scripts/mlphare.com on their command line, and 
	let them tune things up for you.
	
	Note: if an occupancy is set to exactly zero, Phaser Elves will 
	interpret this as a "true" missing parameter and will never refine 
	it.  If you want to start refining from zero, try using "0.001" instead.
	
	See the mlphare manual for more details on how to edit and run mlphare 
	scripts.


################################################################################
scripts/dm.com	- "smart" dm script

    reads: mlphared.mtz	- an mtz with some kind of phase information in it
    makes: dmed.mtz	- the solvent-flattened results
    
    usage: scripts/dm.com phased.mtz [Fset] [1.8A] [solc%]
    where: 
    phased.mtz contains the (phased) data to flatten   (default: mtz/mlphare.mtz)
    Fset       is the set of Fs you want to flatten    (default: most complete F)
    1.8A       is the desired outer resolution limit   (default: 2A)
    solc%      is the solvent content of your crystal  (default: 50%)
    
    examples: 
	scripts/dm.com mtz/mlphare.mtz
	  - will flatten an automatically-chosen dataset in 
	    mtz/mlphare.mtz at 50% solvent.  
	scripts/dm.com mtz/mlphare.mtz F 40%
	  - will flatten the F dataset in mtz/mlphare.mtz using 
	  a solvent content of 40%.  
    
    description:
	This script is meant to do a standard, highly-automatic dm run.  Most 
	of the "automatic" stuff it does it finding a suitable F and phase to 
	use in flattening.  There are a lot of things you can do to tweak dm 
	and make it give you better phases, not the least of which is averaging.
	For this reason, dm.com is designed to be easily edited by end-users to
	suit these needs.
	
	Although dm.com was meant for the phased data produced by the Phaser 
	Elves scripts, it should be applicable to almost any phased mtz data, 
	including the "solve.mtz" output from Terwilliger's SOLVE program.

    advanced:
	If you edit or replace this script, Phaser Elves will not overwrite
	your new version of it next time it is run.  You can, therefore, easily
	apply NCS operators just by adding them to dm.com

################################################################################
scripts/fft.com	- "smart" fft script

    reads: phased.mtz	- an mtz with some kind of phase information in it
           cover.pdb	- a PDB file to "cover" with the map
           phased.map   - (optional) an already-calculated CCP4 map you want to
			  convert to "o format"
    makes: ffted.map	- a CCP4 map of phased.mtz (one ASU only)
           ffted.omap	- a DSN6 or BRIX version of ffted.map 
			  (extended to cover either cover.pdb or 120% of the cell)
	   bones.o	- a "bones" trace of ffted.omap
	   fftpick.pdb  - a peak-pick of ffted.omap (unless cover.pdb is available)
	   ffted.omacro - an o macro for viewing all these files
	   
    usage: scripts/fft.com phased.mtz [Fset] [PHI] [FOM] [1.8A]
    where: 
    phased.mtz contains the (phased) data to transform (default: mtz/best_phased.mtz)
    Fset       is the set of Fs you want to use        (default: most complete F)
    PHI        is the phase set you want to use	       (default: most recent phase)
    FOM        is the FOM weight to use		       (default: most recent FOM)
    1.8A       is the desired outer resolution limit   (default: 2A)
    
    examples: 
	scripts/fft.com dmed.mtz F FOM
	  - will transform the F dataset in dmed.mtz using the most-
	    recently added phase in dmed.mtz (PHIDM), but weighted by 
	    mlphare's FOM (FOM in dmed.mtz).  
	scripts/fft.com maps/2fofc.map pdb/refmac123.pdb
	  - will calculate the ffted.omap and ffted.omacro to cover 
	    pdb/refmac123.pdb with maps/2fofc.map, (no actual fft will 
	    be done).  
    
    description:
	This script is meant to do a quick, "most reasonable" fft of the 
	"best" data in the mtz file provided to it, and make sure its easy for 
	you to see in o as quickly as possible.  Most of the "automatic" stuff
	it does it finding a suitable F and phase to use (in exactly the same 
	way dm.com does).
	
	For your convenience, a pdb file included on the command line, 
	ffted.omap will be extended to "cover" everything within 10A of the 
	atoms in this file.  This comes in very handy if your building takes 
	you significantly out of the unit cell.
	Also for your convenience, the above o-map calculation can be done on 
	a pre-calculated CCP4 map (like one you obtained from refmac).
	
	If no pdb file is provided, fft.com produced fftpeak.pdb, which is 
	just a simple peak-pick on the region covered by the "o" map.  
	fftpeak.pdb is handy when exploring a new map in "o", giving you atoms 
	to "cen_id" on as you move around the map.
	The ffted.omacro also contains a section for reading in the "sites.pdb"
	file (produced by Phaser Elves) to allow you to see the heavy-atom 
	positions used to calculate the map you are looking at.  However, 
	fft.com does not generate this sites.pdb file itself.
	
	Although fft.com was meant for the phased data produced by the Phaser 
	Elves scripts, it should be applicable to almost any phased mtz data, 
	including the "solve.mtz" output from Terwilliger's SOLVE program.

################################################################################
scripts/bestFH.com	- Matthews "best" FH estimator

    input:  all.mtz	- a cad-ed mtz file with multiple data sets
    output: FH.mtz	- an mtz containing only the estimate of FH
            fh.hkl	- shelx version of FH.mtz
	    FH_Patt.map - a Patterson map of FH
	    FH_Four.map - phased map of FH (if a phase is in all.mtz)
	   
    usage: scripts/bestFH.com all.mtz [Fset] [Dset] [1.8A]
    where: 
    all.mtz    contains same-site reflection data      (default: mtz/all.mtz)
    Fset       are the sets of Fs you want to use      (default: all of them)
    Dset       are the sets of Danos you want to use   (default: all of them)
    1.8A       is the desired outer resolution limit   (default: all data)
    PHI        is the phase set you want to use	       (default: most recent phase)
    
    FH_Patt.map is calculated with a 4*rms(FH) cutoff, as calculated by scaleit.
    
    example1: scripts/bestFH.com mtz/all.mtz
	will calculate an estimate of FH from all the difference data in 
	mtz/all.mtz.
	
    example2: scripts/bestFH.com dmed.mtz
	will calculate an estimate of FH from all the difference data in 
	mtz/all.mtz. (same as above), but will also calculate a phased map 
	of FH, using the most recently-added phase in dmed.mtz (PHIDM).  
	This is usually superior to ordinary difference Fouriers for finding 
	new heavy-atom sites.
    
    example3: scripts/bestFH.com mtz/all.mtz no DANOFlo Flo
	same thing, but leave the "DANOFlo difference data-set and "Flo" data
	set out of the calculation.
    
    description:
	This script offers the "new" functionality of computing a "Matthews FH" 
	estimate.  This analysis not only "averages" information from all your 
	diference data into a single data set, but reduces the systematic error
	produced by cross-terms in the substraction of anomalous and 
	isomorphous difference data: |FH| == |FPH-FP| != |FPH|-|FP|
    
	In bestFH.com, all anomalous difference data are scaled together, 
	and then added (sigma-weighted) together.  Then, all the possible
	isomorphous differences between "F"s in the mtz are subtracted, 
	scaled, and also added together.  Finally, Dano is scaled against
	Diso, and FH is calculated by the Pythagorean theorem.
	
	Care must be taken in the ordering of the "F" datasets.  For example, 
	in a 3-wavelength MAD experiment: Finf Fpeak Fhi should be the order
	used.  Fhi Fpeak Finf is okay too, but not Finf Fhi Fpeak.  The latter
	would result in Finf-Fhi and Fhi-Fpeak "canceling" each other, because
	the f' differences will have opposite signs.  bestFH.com will try to
	get this ordering right, but you should check the difference dataset
	list to make sure none of them are opposing each other.

	Note also that all the data in mtz/all.mtz should be from 
	crystals with metal sites at the same positions, otherwise, FH will 
	be a mix of the two site constellations.  
    
################################################################################
scripts/reindex.com	- general-purpose re-indexing script

    input:  data.mtz	    - mtz file to re-index (merged or unmerged)
    output: reindexed.mtz   - mtz file with the new space group
    
    examples: 
	scripts/reindex.com data.P41212.mtz P43212
	  - will change the space group of "data.P41212.mtz" to P43212 
	    (assuming that is possible), and write the results to 
	    "reindexed.mtz"
	scripts/reindex.com data.P2221.mtz P2122
	  - will change the space group of "data.P2221.mtz" to the "pseudo" 
	    space group "P2122", which is P2221, but with "a" as the screw 
	    axis.  This is done by leaving the mtz file in P2221, but 
	    permuting the cell (and the data) so that the shortest cell edge 
	    (normally "a"), is moved to the third cell parameter (the one 
	    with screw symmetry).
	
    description:
	This is a general utility for changing the assigned space group of 
	mtz data using the CCP4 program "reindex".  It works on merged and 
	unmerged data.  Re-assignment of the screw/rotation axes of 
	anisotropic orthorhombic space groups is supported (see example 2).
	
	"Flipping" between alternative axis assignments is also easily done.
	Just include the word "flip" on the reindex.com command line to switch
	to the "other" axis assignment.  This may be neccessary for any space
	group having two or more cell edges exactly the same length.  The only 
	tricky ones are R3 and P3x, which have four possible axis assignments.  
	To specify the remaining two, use the word "flip" two or three times 
	(respectively).  see /programs/ccp4-5.0.2/doc/reindexing.doc for details.
	
	Changing between space groups with different point group, or even
	lattice symmetry is allowed, but unadvisable!  These transformations
	involve mergeing or "un-mergeing" spots, which reindex can't do.
    
	Note: moving/removing screw axes will result in the "loss" of 
	some systematic absence reflections, so be careful.  It is probably
	advisable to always merge in P222, and reindex later.
    
################################################################################
scripts/shelx.com	- automatic, combinatorial shelx script

    input: data.mtz	- mtz file containing one or more data sets
    output: shelx.pdb	- PDB file containing shelx sites and peaks
    
    usage: scripts/shelx.com data.mtz P212121 Fname 1s 4A 3 sites diff 200  no Fbad
    where:
	Fname - dataset or dataset pair you specifically want to use
	1s    - sigma cutoff
	4A    - resolution cutoff
	diff #- maximum difference cutoff (default: auto)
	sites - specify number of expected sites (3 above)
	Fbad  - dataset or dataset pair you do not want to use

    examples:
	shelx.com mtz/Fpp.mtz 
	  - use DANO from mtz/Fpp.mtz as the shelx data set
	shelx.com mtz/Fp.mtz mtz/Flo.mtz
	  - use both DANO data sets, as well as F-F between the two mtzs.
	shelx.com mtz/FH.mtz 
	  - use FH in mtz/FH.mtz (no DANO present)
	shelx.com mtz/FH.mtz 0s 1s 2s 4A 3A 2A 5 sites
	  - use sigma cutoffs of 0.0, 1.0, 2.0, and resolution cutoffs of
	    4, 3, and 2A in all possible combinations.  Looking for 5 sites.
	shelx.com mtz/all.mtz no DANOFlo Flo-Fhi
	  - use all difference data in mtz/all.mtz, except for DANOFlo and
	    the difference between Flo and Fhi
	shelx.com mtz/all.mtz P222 P212121 P21212 P21221 P22121 P21212
	  - try all the listed space groups, permuting axes appropriately
	shelx.com mtz/all.mtz /programs/bin/shelxs
	  - different location of shelxs executable
	
    description:
	shelx.com is designed to be an exhaustive, combinatorial interface
	to direct-methods heavy-atom finding with shelx.  Multiple space
	groups, sigma cutoffs, resolution cutoffs, maximum difference
	cutoffs, data files and target numbers of sites can all be specified, 
	and every combination of the specified parameters will be tried, 
	in turn.  This can, of course, take some time.  The terminal output
	from shelx.com is formatted so that you can cut-and-paste it as
	command-line arguments to a second run of shelx.com, if you want
	to re-run a particular combination.
	  The atoms positions reported by shelx are filtered for non-special
	positions, and then checked against a Patterson map generated with
	the same data that was provided to shelx.  The CCP4 program "vecref"
	is used to reject atoms that do not agree with the Patterson.
	  The output shelx.pdb file contains the shelx peak-heights/10 as
	the B-factor column, and the "occupancy" (refined by vecref) in the
	occupancy column.  Atoms on special positions are listed, but with
	zero occupancy.  
	  shelx.pdb is written whenever the sum of the products of the shelx 
	peak-heights and the Patterson "occupancies" exceeds the "last" 
	shelx.pdb written.  It is not clear if this is the "best" scoring 
	function, but you can always re-run a single-pass shelx.com run to 
	reproduce any combinations that you are curious about.

################################################################################
scripts/rantan.com	- automatic, combinatorial rantan script

    input: data.mtz	- mtz file containing one or more data sets
    output: rantan.pdb	- PDB file containing possible heavy-atom sites
    
    usage: scripts/rantan.com data.mtz P212121 Fname 1s 4A 3 sites diff 200  no Fbad
    where:
	Fname - dataset or dataset pair you specifically want to use
	1s    - sigma cutoff
	4A    - resolution cutoff
	diff #- maximum difference cutoff (default: auto)
	sites - specify number of expected sites (3 above)
	Fbad  - dataset or dataset pair you do not want to use

    examples:
	see shelx.com (above)
	
    description:
	rantan.com is essentially identical to shelx.com (above), except
	that it uses the CCP4 program "rantan" instead of shelx to calculate
	direct phases.  In this case peaks are picked from an E-Fourier of
	the deduced phases, and then subjected to the "Patterson filter"
	in vecref.  The output file: rantan.pdb contains the height/sigma
	peak heights in the E-Fourier as the B-factor column and the 
	"vecref occupancy" in the occupancy column. 
    
################################################################################
scripts/rrsps.com	- Recursive Real-Space Patterson Search

    input: Patt.map	- Patterson map file to be deconvoluted
	   boring.pdb	- PDB file containing "uninteresting" sites (to be ignored)
    output: pick.pdb	- PDB file containing picked peaks
    
    usage: scripts/rrsps.com FH_Patt.map P212121 P222
    where:
    FH_Patt.map	- is a CCP4 Patterson map 
    P212121	- is the space group you want to try
    
    examples:
	rrsps.com FH_Patt.map P212121 P222
	  - will run a recursive rsps procedure on FH_Patt.map in P212121 and
	    in P222

    description:
	rrsps.com is a recursive shell script.  It actuall calls itself.
    
################################################################################
scripts/pick.com	- sophisticated peak-picker

    input: pickme.map	- map file to be picked (must cover at least one asu)
	   boring.pdb	- PDB file containing "uninteresting" sites (to be ignored)
    output: pick.pdb	- PDB file containing picked peaks
    
    examples: 
	scripts/pick.com FH_Four.map o/sites.pdb
	  - will pick peaks in FH_Four.map that aren't already within a grid
	    unit or so of atoms in o/sites.pdb
	scripts/pick.com FH_Four.map
	  - just pick peaks in the map
	scripts/pick.com FH_Patt.map
	  - pick unique peaks in the Patterson map, displaying multiplicities
    
    description:
	pick.com does more than a simple "peakmax" run.  The actual pick is
	performed on a map of one asu, plus a 10% "buffer zone" padding the
	outside of the asu.  After the peakmax run, peaks picked outside the
	asu are thrown out.  After that, the remaining peaks are symmeytry-
	expanded and checked against each other to make sure none of their
	symmetry mates overlap. 
	
	This procedure prevents false, "map-edge" peaks from being picked near 
	the edges of the asymmetric unit, and it also gaurentees that none of 
	the output peaks are symmetry mates of each other.  
	
	Peaks on special positions are printed out with occupancies < 1.  The
	B-factor column of pick.pdb contains the height/sigma of the peak.
	
	Including the "boring.pdb" on the command line allows you to specify 
	atom locations that you aren't interested in seeing in the pick.pdb 
	output file (including all their symmetry mates).  This is useful in 
	picking difference Fouriers, which will already have large peaks for 
	the sites used to obtain the phases.
    
################################################################################
scripts/oasis.com	- experimental OASIS script

    input: sad.mtz	- mtz file containing anomalous differences
	   mlphare.com	- mlphare script containing refined sites
    output: oasised.mtz	- same as sad.mtz, but with improved phases
    
    examples: 
	scripts/oasis.com mtz/Fpp.mtz scripts/mlphare.com
	  - will convert the sites refined by scripts/mlphare.com and put
	    them into oasis.
	scripts/oasis.com mtz/Fpp.mtz scripts/mlphare.com 8.76e
	  - same thing, but use an f'' value of 8.76 (otherwise, use
	    the refine occupancy from mlphare)
    
    description:
	oasis is new in CCP4 4.0.  It uses a direct-phasing equation to try
	and resolve the bimodal phase distributions you get with Single-
	Anomalous Difference (SAD) data or SIR data.  oasis has demonstrated
	the ability to substantially improve SAD phases, but Phaser Elves do
	not have enough experience with it to make it the default for SAD
	data.  The results in oasised.mtz can then be solvent-flattened with
	dm.com (above).
    
################################################################################

3)  What about all these data files?

    Phaser Elves do produce a lot of different kinds of output.  This is mainly
    for your convenience, to make reviewing Phaser's exploratoins easy.  Once
    you have seen a map you can interpret, you can go ahead and delete most of
    these files.  Here is a quick review of what all the files are for:
    
    Heavy-atom positions:
	scripts/mlphare.com
	- contains heavy-atom positions, as well as a record of all positons that
	  were added or removed from the starting script by Phaser Elves.  These
	  "BADATOM" and "OLDATOM" positions are avoided when picking the difference
	  Fourier.
	scripts/sites.mlphare
	- contains a symmetry-reduced version of the "good" sites in mlphare.com.
	  Atoms that are close enough to be indistinguishable (separation < d/3)
	  are "merged", giving you an "average" site constellation across all
	  derivatives.  This is useful for re-inputting a unique list of sites
	  back into Phaser.
	o/sites.pdb
	- same as scripts/sites.mlphare, but in PDB format.

    Phased data:
	mtz/mlphare.mtz
	- the output file from the most recent mlphare run.
	mtz/dm_##.mtz	    
	- results from a ##%-solvent dm run on mlphare.mtz.
	mtz/best_phased.mtz
	- a copy of what Phaser Elves consider the "best" solution
    
    Maps:
	maps/best_phased.map
	- a copy of what Phaser Elves consider the "best" map (CCP4 format).
	maps/phased.map
	- the most-recently calculated map (usually from one of the dm_##.mtz files)
    
    O stuff:
	o/phased.omap
	- an "o version" of maps/phased.map, (dsn6 or brix format) extended
	  to cover 1.7 unit cells (one cell, plus 10% in every direction). 
	o/bones.o
	- a simple bones trace of o/phased.omap (molecule name: SKEL)
	o/pick.pdb
	- a peak-pick of the area covered by o/phased.omap.  Useful for
	  providing atoms to cen_id on while you review the map in o.
	o/sites.pdb
	- a simple PDB file of where the mlphare-refined sites ended up.
	o/latest.omacro
	- an o macro for loading and displaying all of the above files.
	o/latest
	- sub-macro for just loading o/phased.omap
	o/best_*
	copies of the above files ultimately calculated from mtz/best_phased.mtz
	o/best.omacro
	- an o macro for loading and displaying the best_* files.
	o/allmaps.omacro
	- an o "super-macro" for displaying all of the alternative "flip"
	  combinations (one at a time) with a single command.
    
    
    Sign/hand flipping results:
	Files like:
	mlphare.com.flip_-hand_+occ or flip_-hand_+occ_phased.map
	- are copies of mlphare.com or phased.map (respectively) that were 
	  calculated for a particular combination of hand, sign and/or space
	  group conventions.  All indications are relative to the initial site
	  constellation provided to/found by Phaser Elves (+hand_+occ).  If you
	  have a chiral space group (i.e. P41/P43), then the space group name
	  is used in place of "flip".
	  
	- under the o/ directory, however, files are not renamed, but moved
	  into a subdirectory called o/flip_+hand_+occ/.  This makes it
	  easy to change "flip states" by just "cd"-ing to the various directories
	  
    
    Deleting files:
	  Once you are satisfied that you have found an interpretable map 
	  (let's say its in flip_+hand_-occ/, at 45% solvent), 
	  then you can type this:
	  
	  # save the script
	cp scripts/mlphare.com.flip_+hand_-occ scripts/mlphare.com
	cp scripts/sites_flip_+hand_-occ.mlphare scripts/sites.mlphare 
	rm scripts/mlphare.com.*
	rm scripts/sites_*
	
	  # save the data (this file contains the mlphare and dm results)
	cp mtz/dm_45_flip_+hand_-occ.mtz mtz/best_phased.mtz
	rm mtz/dm_* mtz/mlphare* 
	
	  # maybe save the CCP4 map
	cp maps/flip_+hand_-occ_phased.map maps/best_phased.map
	rm maps/flip*
	
	  # then take care of the o/ directory
	cd o/
	cp flip_+hand_-occ/* .
	rm -r flip*
	rm best*
	cd ..
	
	  this is easier than re-naming all the proper files by hand.
	  After all that, you should have reduced your disk consumption quite
	  a bit, and running o/latest.omacro will display the results
	  of the flip_+hand_-occ run.
	  
################################################################################


4) What if something goes wrong?

    The Phaser elves have been trained to handle a number of common problems 
encountered in using mlphare.  However, if something happens that
is beyond their experience, they will quit, and display the error message they
couldn't understand.  It's up to you to edit scripts/mlphare.com, and get it working
again.  However, once you do, you can feed the (runnable) scripts/mlphare.com back to
Phaser Elves, and let them tune it up.


5) tips and tricks:

If you start Phaser Elves with "hurry" they will relax their convergence
criteria for mlphare, and finish the refinement earlier.

If you start Phaser Elves with "no flip" they won't try exploring all the
alternative possibilities of sign, hand and space group.

If you start Phaser Elves with "no add" they will exit after picking peaks
in the first difference Fourier they calculate.

If you start Phaser Elves with "6 params" on their command line, they will
begin by refining x, y, z, occ, aocc, and Bfac for all atoms, instead of 
starting with x, y, z only, and working their way up.

---
