Written by D. Svergun, C. Barberato, M. Malfios, V. Volkov, P. Konarev, M. Petoukhov, and A. Shkumatov.
Post all your questions about CRYSOL to the ATSAS Forum.
CRYSOL is a program for evaluating the solution scattering from
macromolecules with known atomic structure and fitting it to experimental
scattering curves from Small-Angle X-ray Scattering (SAXS). As an input one
can use a PDB file with an X-ray or NMR structure of a protein or a protein-DNA(RNA)
complex.
The program uses multipole expansion of the scattering amplitudes to
calculate the spherically averaged scattering pattern and takes into account
the hydration shell. Given SAXS experimental data, CRYSOL can fit the theoretical
scattering curve by minimizing the discrepancy (chi-square value).
Fitting is done by varying three parameters:
(i) average displaced solvent volume per atomic group
(ii) contrast of the hydration shell
(iii) relative background
It is possible to provide one or multiple arguments to CRYSOL.
Regular expressions, e.g. *.pdb or exp*.dat are supported
and should be surrounded by double quotes (e.g. "m*.pdb" or "a??.dat").
Experimental data. The first line is always treated as a title. The
following lines should contain momentum transfer, non-zero intensity and
standard deviation in a free format (separated by blanks or commas). If
standard deviations are not present, the errors are estimated automatically
with the help of a polynomial smoothing procedure.
CRYSOL saves all the relevant information including scattering
amplitudes into the '.sav' file, which saves the time in the successive
calculations with the same PDB file.
Maximum order of harmonics (min = 1, max = 50). Defines the resolution of
the calculated curve. Default value should be sufficient in most of the cases.
For large particles high orders could improve the results, but more CPU time is
required. Fractional values are not allowed.
Order of Fibonacci grid (min = 10, max = 18). The order of Fibonacci
grid defines the number of points describing the surface of the macromolecule.
Higher grid orders give a more accurate surface representation, but more CPU
expensive. Default value is sufficient for most of the cases.
Solvent density (e/Å3). Default value is the electron density of
pure water. Solvents with high salt concentration may have a somewhat higher
electron density. User can adjust the value accordingly.
Constant subtraction. This operation accounts for possible
systematic errors due to mismatched buffers in the experimental
data. Constant is a sum of intensities over high-angle part
of the experimental data divided by number of experimental points in
this part. By default, lower and upper limit for constant subtraction is
-0.5 and 0.5 respectively. Limit is a multiplier for the constant subtraction.
Limits can be manually adjusted when minimization with new limits
is selected. Constant subtraction may improve the fit. No value is required
Compute theoretical scattering only for certain chain identifier(s). By default, all chains are processed. If there is "_" before chain identifier,
all chains except for specified will be processed
If the optional arguments are omitted, settings available through
command-line arguments and options may also be configured interactively as
shown in the table below.
CRYSOL offers several options. They can be subdivided into two groups: with
and without fitting. The table below shows a list of questions for fitting
mode.
The default option (0) evaluates the scattering curve from a PDB file,
optionally fits the experimental data and saves the results. Option (1)
evaluates only the envelope function of the macromolecule and saves it into the
.flm file. Option (2) retrieves the information previously saved in the file
with extension ".sav". This option can be used, e.g. to compare the same atomic
structure against several sets of experimental data.
The hydrogen atoms are automatically taken into account as a part of
atomic group. It means that any ATOM/HETATM line in the input
PDB file,
which has a string 'H' in the 13 or 14th column will be discarded. If hydrogens
generated by third party program are explicitly taken into account, they must conform with
PDB conventions or simply have "H" in the 14th column, whereas 13th, 15th and 16th column
should be empty
On runtime, the following lines of output will be generated for each
PDB file:
------------------------------------------------
Following file names will be used:
6lyz00.log -- CRYSOL log-file (ASCII)
6lyz00.sav -- save CRYSOL information (binary)
6lyz00.flm -- multipole coefficients (ASCII)
6lyz00.int -- scattering intensities (ASCII)
6lyz00.fit -- fit to experimental data (ASCII)
6lyz00.alm -- net partial amplitudes (binary)
------------------------------------------------
Successive runs for the same PDB file will generate output files with
increasing number, e.g. 6lyz01.log, 6lyz01.sav, etc. The size of the output
file names is limited to 12 characters. If the PDB file name (without
extension) is longer than 5 characters the output file names will be truncated,
e.g.: output file names for the PDB file atw2rsta.pdb will be atw2rs00.log,
atw2rs00.sav, etc. The program also truncates the string "pdb" at the beginning
of the PDB files.
Number of atoms read .................................. : 1001
Number of points after regriding ...................... : 204
Experimental curve is divided into bins. Number of bins depends on the
number of experimental points. For each bin (point) scattering intensity and error
is calculated. This allows to speed up fitting step.
Number of experimental points used .................... : 204
The first line is a title. Five columns contain: (1) experimental scattering vector in reverse angstroms, (2) theoretical intensity in solution, (3) in vacuo, (4) the solvent scattering and (5) the border layer scattering.
Use CRYSOL to calculate the scattering intensities from PDB files: 6lyz1.pdb, 6lyz2.pdb, 6lyz3, etc and fit to
all experimental data, use constant subtraction to improve fit.
$ crysol *.pdb lyzexp.dat -sm 0.25
Use CRYSOL to process all PDB files in current directory, calculate scattering
intensity till 0.25 and fit to experimental data
$ crysol 1f6g.pdb exp_file.dat -nmr 5 -cid _A
Use CRYSOL to process all chains except A of conformer #5 from NMR ensemble (1f6g.pdb) and fit to experimental data