Jiffies: Difference between revisions

From XDSwiki
Jump to navigation Jump to search
(adjust scalefactors alias to latest XDS version)
(get rid of sortlattices alias)
Line 1: Line 1:
Here are two one-liners for your .cshrc (FIXME: or should these lines go into .login or .profile?) :
Here is a one-liner for your .cshrc :


alias sortlattices "egrep '^    ..        [aomhtc]' IDXREF.LP | sort -k3n | head -12"
  alias scalefactors "egrep ' .....  0 ...... ........  ..  .....    ....  ...  ......  ......' INTEGRATE.LP"
  alias scalefactors "egrep ' .....  0 ...... ........  ..  .....    ....  ...  ......  ......' INTEGRATE.LP"


In sh/bash/ksh/zsh syntax this would be:
In sh/bash/ksh/zsh syntax this would be:


alias sortlattices='egrep "^    ..        [aomhtc]" IDXREF.LP | sort -k3n | head -12'
  alias scalefactors='egrep " .....  0 ...... ........  ..  .....    ....  ...  ......  ......" INTEGRATE.LP'
  alias scalefactors='egrep " .....  0 ...... ........  ..  .....    ....  ...  ......  ......" INTEGRATE.LP'


which could go into ~/.bashrc or something similar. There are many possibilities - best thing might be to search for the file that already contains alias commands:
which could go into ~/.bashrc (or should it go into .login or .profile?)


grep -l "alias " ~/.[a-z]*
----
For the not-so-Unix-proficient-ones: ''sortlattices'' runs on IDXREF.LP the following commands:
# grep (for finding lines that are non-blank at two positions and have one out of the characters 'aomtc' later in the line)
# sorts these lines on the third column, numerically, ascending
# and prints the first 12 of these to the terminal
Example:
dikay@turn29:-data/temp% sortlattices
    44        aP          0.0    145.8  164.1  245.4  90.1  90.0  90.1  -1  0  0  0  0  1  0  0  0  0 -1  0
    31        aP          0.3    145.8  164.1  245.4  89.9  90.0  89.9    1  0  0  0  0  1  0  0  0  0  1  0
    35        mP          0.9    164.1  145.8  245.4  90.0  90.1  90.1    0 -1  0  0  1  0  0  0  0  0  1  0
    34        mP          2.2    145.8  245.4  164.1  90.1  90.1  90.0    1  0  0  0  0  0  1  0  0 -1  0  0
    33        mP          2.5    145.8  164.1  245.4  90.1  90.0  90.1  -1  0  0  0  0  1  0  0  0  0 -1  0
    32        oP          2.8    145.8  164.1  245.4  90.1  90.0  90.1  -1  0  0  0  0  1  0  0  0  0 -1  0
    14        mC        135.2    219.4  219.6  245.4  90.1  90.1  83.2  -1  1  0  0  1  1  0  0  0  0 -1  0
    10        mC        135.8    219.4  219.6  245.4  89.9  90.1  96.8    1 -1  0  0  1  1  0  0  0  0  1  0
    13        oC        135.8    219.4  219.6  245.4  90.1  90.1  83.2  -1  1  0  0  1  1  0  0  0  0 -1  0
    11        tP        136.4    145.8  164.1  245.4  90.1  90.0  90.1  -1  0  0  0  0  1  0  0  0  0 -1  0
    39        mC        249.7    359.0  145.8  245.4  90.0  90.1  66.1    1 -2  0  0  1  0  0  0  0  0  1  0
    37        mC        250.3    511.9  145.8  164.1  90.1  90.1  73.5  -1  0 -2  0 -1  0  0  0  0  1  0  0
(read [[Space_group_determination|Space group determination]] to find out what to do with these lines)
----
----



Revision as of 17:26, 25 June 2009

Here is a one-liner for your .cshrc :

alias scalefactors "egrep ' .....   0 ...... ........   ..  .....    ....   ...  ......  ......' INTEGRATE.LP"

In sh/bash/ksh/zsh syntax this would be:

alias scalefactors='egrep " .....   0 ...... ........   ..  .....    ....   ...  ......  ......" INTEGRATE.LP'

which could go into ~/.bashrc (or should it go into .login or .profile?)


scalefactors finds those lines in INTEGRATE.LP which match a certain pattern of blanks and non-blanks. These are just the lines printed during the INTEGRATE step for each frame. It is very useful (e.g. to find shutter problems, or to "see" the crystal die from radiation damage) to run

scalefactors > frames.scales

and to plot the scale factors and mosaicity and beam divergence of each frame in gnuplot.

This can be done by

> gnuplot
plot "frames.scales" using 1:3

or

> gnuplot
plot "frames.scales" using 1:9

or

> gnuplot
plot "frames.scales" using 1:10

It is useful to run gnuplot this way, because you can move the mouse over an outlier and see its coordinates (x=frame number) in the lower left corner of the plot window.

If you do have bad outliers (e.g. shutter didn't open), and decide that you for now simply want to remove those frames, then you could rename the frames (just append ".bad" to the name), and re-run XDS from the INTEGRATE step.


If you simply want the plots and glue them into your lab book, just run (assuming "ms688_2" is the name of your dataset!):

#!/bin/csh -f
setenv DATASET ms688_2

scalefactors > $DATASET.scales
ln -s $DATASET.scales $DATASET.mosaicity
ln -s $DATASET.scales $DATASET.divergence

gnuplot<<EOF
set term png
set grid
set out 'scale.png'
plot "$DATASET.scales" using 1:3
set out 'divergence.png'
plot "$DATASET.divergence" using 1:9
set out 'mosaicity.png'
plot "$DATASET.mosaicity" using 1:10
EOF

rm -f $DATASET.{scales,mosaicity,divergence}

to get Scale.gif Divergence.gif Mosaicity.gif