Manual

The following sections briefly describe the method implemented in FFMAKER, how to run FFMAKER from the command line, the required input and the produced output files.

Introduction

The program FFMAKER is designed to facilitate the creation of the form factor file for OLIGOMER and to generate the pool-based inputs for GAJOE and NNLSJOE. Other use cases include the general combination of heterogenous data into one file that can be later used for different types of plotting/analyses, e.g. for plotting of time-resolved data sets and/or for singular value decomposition analysis.

The input files for FFMAKER are generally atomic models in .pdb or .cif format that are converted to scattering pattern by CRYSOL. Alternatively scattering data files can be provided directly, either experimental SAS data (.dat) or regularised SAS data (.out) files. In the latter case, the regularized data is used.

For each atomic model provided, FFMAKER also calculate the contrasts for each of the components. The contrast will be later used by OLIGOMER to properly normalize the volume fractions of these components. This additional adjustment of the volume fractions due to the constrasts will have an effect in range of up to 3-4% for volume fractions, mainly in heterogenous systems, i.e.. mixtures of protein-DNA or protein-RNA molecules). In homogenous systems, generally mixtures of proteins, there will be no difference whether or not the contrast information is taken into account.

Running FFMAKER

Usage:

$ ffmaker [OPTIONS] <FILE(S)>

Command-Line Arguments and Options

FFMAKER recognizes the following command-line arguments.

Argument Description
FILE Any number of files in supported formats.

Absolute as well as relative paths to data files are accepted. Instead of a file name, one of the arguments may be given as ‘-‘ to read data from stdin.

FFMAKER recognizes the following command-line options. Mandatory arguments to long options are mandatory for short options too.

Short Option Long Option Description
  --undat Angular units for experimental SAS data (.dat) files; 1 = \(\AA^{-1}\), \(s = 4\pi sin(\theta)/\lambda\); 2 = \(\mathrm{nm}^{-1}\), \(s = 4 \pi sin(\theta)/\lambda\); 3 = \(\AA^{-1}\), \(s = 2 sin(\theta)/\lambda\); 4 = \(\mathrm{nm}^{-1}\), \(s = 2 sin(\theta)/\lambda\).
  --unout Angular units for regularised SAS data (.out) files; 1 = \(\AA^{-1}\), \(s = 4\pi sin(\theta)/\lambda\); 2 = \(\mathrm{nm}^{-1}\), \(s = 4 \pi sin(\theta)/\lambda\); 3 = \(\AA^{-1}\), \(s = 2 sin(\theta)/\lambda\); 4 = \(\mathrm{nm}^{-1}\), \(s = 2 sin(\theta)/\lambda\).
  --smin <SM> Minimum scattering angle in inverse angstroms, default: 0.0\(\AA^{-1}\)
  --smax <SM> Maximum scattering angle in inverse angstroms, either for calculating the theoretical curve up to SM or for fitting to SM; default: 0.5\(\AA^{-1}\), maximum: 2.0\(\AA^{-1}\)
  --alternative-names Enable alternative (old) atom naming for all atomic structure files; default: disabled. See also:components.cif
  --explicit-hydrogens Use explicit hydrogens provided in the atomic structure file; default: use implicit hydrogen groups determined by looking up the number of hydrogens in components.cif.
  --lm <N> Maximum order of harmonics; default: 20, minimum: 1, maximum: 100. This defines the resolution of the calculated curve. The default value should be sufficient in most use cases. For large or extended particles higher orders could improve the results, at the cost of an increased run time. This value must be increased whenever the maximum scattering angle is increased (smax).
  --fb <N> Order of Fibonacci grid; default: 17, minimum: 10, maximum: 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. Only used if option shell=directional (the default).
  --ns <N> Number of calculated data points; default: 101, maximum = 10001.
  --dns <VALUE> Solvent density; default: \(0.334 \mathrm{e}/\AA^3\), the electron density of pure water. Solvents with high salt concentration may have a somewhat higher electron density.
  --dro <VALUE> Contrast of hydration shell, default: \(0.03 \mathrm{e}/\AA^3\)
  --energy <eV> X-ray energy in eV, required for energy correction in anomalous SAXS only.
  --shell <VALUE> Shell kind, one of ‘directional’ (classic CRYSOL) or ‘water’ (previously CRYSOL3)
  --implicit-hydrogen <N> Set this to a value N>=0 to override ‘unable to determine number of hydrogens’ errors.
  --sub-element <NAME> Set this to a valid element to override ‘unable to determine element’ errors.
  --sgrid the name of the file containing the ‘master’-grid of the angular axis that will be used for the form-factor calculations. This option is needed only if you have input data defined at different angular ranges.
  --constrain <confile.txt> Constraints between the volume fractions of the components (or the number fractions of the components). See ‘Running OLIGOMER with volume/fraction constraints’.
  –pool <FILE> The passed arguments represent file from a pool of model, FILE will contain additional information useful for GAJOE. In ATSAS, the following applications may generate pools: RANCH, SREFLEX and NMATOR .
-o –output Output file name, the output is written to stdout by default.
-v --version Print version information and exit.
-h --help Print a summary of arguments, options, and exit.

FFMAKER Input Files

FFMAKER requires atomic coordinates in .pdb or .cif format, alternatively experimental SAS data (.dat) or regularised SAS data (.out) files.

FFMAKER Output Files

FFMAKER writes the combined data to stdout by default. This can be redirected to a file with the output option.

In addition, a pools statistics file may be generated if the pool option was specified.

Examples

Example 1

The formfactors will be created from 1.dat and 2.dat files (using their column 2 as intensity values) with the angular axis in \(\mathrm{nm}^{-1}\), column 1 will be read from dat files and multiplied by 0.1 factor.

$> ffmaker 1.dat 2.dat --undat 2 

Example 2

All experimental data files with “pdb” extension from the working directory will be taken and CRYSOL will run for these files with the parameters –smax=0.3, –ns=201 and –lm=20. The formfactors will be taken from the corresponding intensity values.

$> ffmaker *.pdb --smax 0.3 --ns 201 --lm 20