DENSSWeb runs a front-end interface to DENSS (specifically the denss.all.py
script, currently version 1.6.3) to reconstruct 20 electron density maps from a
1D solution scattering profile (X-ray or neutron, i.e., SAXS or SANS), and
perform alignment and averaging of the reconstructions.
DENSS requires a smooth fit to the SAXS/SANS profile instead of using the raw
data. To get a smooth fit, you can use an indirect Fourier transform algorithm such as
denss.fit_data.py to calculate this fit yourself. Alternatively, DENSS can
take raw data and automatically fit a smooth profile to it, estimating the
maximum dimension (Dmax) in the process.
DENSSWeb can take multiple file types as inputs as follows:
A 3-column ASCII text ".dat" file (columns are q, intensity, error)
containing the raw data. In this case DENSS will estimate Dmax and fit a
smooth curve to the noisy data and use this fit for the reconstruction.
A 3-column ASCII text ".dat" file (columns are q, intensity, error) containing
a smooth curve that has already been fitted to the raw data. In this case DENSS
will estimate Dmax but will not fit a smooth curve to the data, instead using
the provided curve. DENSS decides if the data are raw or smoothed by checking
if the data contain intensity at q=0. If so, then DENSS will assume it is
already a smooth curve (since I(q=0) cannot be collected in a real experiment),
otherwise DENSS will assume the data are raw data and will fit the data with a
A 4-column ASCII text ".fit" file (columns are q, intensity, error, fit)
containing both the raw data and a fit to the raw data. DENSS will use the fit
to the data for the reconstructions. If the header contains a header line with
"# Dmax = <maximum dimension value>", which is the format of output .fit files
from denss.fit_data.py, then DENSS will use that Dmax value. If that header
line is not in the file, DENSS will estimate Dmax automatically.
A GNOM .out file from the ATSAS package. DENSS will use the fit to the data in
the file for the reconstructions and will use the Dmax in the file also.
Job Name and Parameter Options
Each job submitted to DENSSWeb will be given a unique ID code. However, the Job
Name field can be used for giving your job a more descriptive name. This field
can only contain letters, numbers, dashes (-) and underscores (_) (no spaces or
special characters allowed).
By default, DENSS will use either the extracted Dmax from the input file or
will estimate the Dmax automatically otherwise. Any value entered into the
"Estimated maximum dimension" field will override the extracted/estimated Dmax
value and will be used for reconstructions.
By default, DENSS assumes q values are given in inverse angstroms (Å-1), where
q = 4π*sinθ/λ (2θ is the scattering angle and λ is the wavelength of the
incident beam). The "Angular units" option can be used to change the units from
inverse angstroms to inverse nanometers.
The "Mode" option will run DENSS in either Fast, Slow, or Membrane mode. By
default, DENSS will run in Slow mode, which should be good enough for the
majority of cases to get reliable reconstructions. Slow mode will take around
25-30 minutes once it begins. Alternatively, a quick reconstruction can be run
by selecting Fast mode, which will take around 5-10 minutes. Fast mode sets the
number of samples to 32 (compared to the default for Slow mode of 64), and will
thus possibly/likely result in lower resolution, but can often give a good
enough idea of the results. If you have a particle that has significant
negative contrast (such as a membrane protein in a micelle), then selecting the
Membrane mode will remove the positivity restraint in DENSS and allow for
negative contrast. Note that while this is called "Membrane" mode, it can be
used for virtually any particle, including things such as empty micelles or
nanoparticles that may have negative contrast or even standard proteins that do
not exhibit significant negative contrast. However, by removing the positivity
restraint, sometimes the resulting reconstructions are a bit noisier, but often
not significantly so.
If the particle has symmetry, the reconstructions can be significantly
improved by enforcing N-fold symmetry about an axis, i.e., by performing
symmetry averaging (similar to non-crystallographic symmetry averaging for
those familiar with crystallography). For example, to apply 3-fold symmetry
with a trimer, enter "3" in the "Symmetry (N-fold)" field. No symmetry will be
applied if this field is left blank.
Sometimes the longest principal axis of a particle is the axis of symmetry,
while other times the shortest axis is the axis of symmetry. There is no way to
determine this directly from the scattering data and this information must be
given to DENSS. By default, DENSS will select the longest axis as the axis of
symmetry. Use the "Symmetry Axis" option to select a different axis of
The "Symmetry Steps" field will accept a space separated list of steps
indicating when to apply symmetry. Usually using symmetry at just a handful of
steps, say 3 or 4 times throughout the reconstruction, is plenty to bias the
reconstruction towards a symmetric particle. Entering too many steps, or
applying symmetry too early in the reconstruction (e.g., <1000 steps) may
result in artifacts in the density, such as streaks of density appearing caused
by the repeated interpolation required to apply symmetry averaging. The default
number of steps is given in the input field "3000 5000 7000 9000", however this
can be changed by entering a different sequence of steps as a space separated
By default, "Enantiomer Selection" is enabled, and this option should
almost always stay checked. However, this option does add a few minutes to the
reconstruction, so may be disabled if desired by unchecking the box.
Enter the reCaptcha number to ensure you're not a robot and click Submit.
After submitting, the browser window will update and show a progress
bar to indicate whether the job is running, pending, or if there was an
error. Note that while the progress bar may say "25% complete", that really
just means the job is running and is not an accurate reflection of the
actual progress of the job, which is difficult to predict, and that bar
will go from 25% to 100% as soon as the job is done.
Run times vary depending on which mode was selected and whether or not
Enantiomer Selection was enabled. Also, sometimes the reconstructions just
converge faster based on the initial random seed (there is a maximum number
of steps, ~10,000, that will stop the reconstruction even if it hasn’t
converged, though it pretty much always has converged by then anyways).
The default Slow mode will usually take ~30 minutes with Enantiomer
Selection enabled and about 20-25 minutes with it disabled.
Fast mode will take ~10 minutes with Enantiomer Selection, and ~6 minutes with it disabled.
Membrane mode will run similarly to Slow mode.
Note that these times are run times and do not include wait times,
which may occur if others have submitted jobs and the queue is busy. In
that case the progress bar will display "Pending", and when your job
begins it will display "Running DENSS All".
When complete, the browser will refresh the window showing the results.
A unique URL link to the results that can be shared with others will be displayed below the Job Name.
Below the link is a button displaying "Download Results". Clicking this
link will download the entire results directory including all files as a
ZIP file. We strongly recommend you download the ZIP file immediately.
While the results will be kept and accessible as long as possible, we do
not guarantee the storage of these results long term.
Below that is an embedded LiteMol window showing the electron
density map. This display is interactive and can be rotated, zoomed in, and
clipped by using the mouse buttons and scroll wheel.
By default, four isocontours are displayed at various sigma values
(0.05*, 0.10*, 0.25*, and 0.5*maxSigma). This display is interactive and
the isolevels can be changed by clicking the tools icon in the LiteMol
window (a little hammer/wrench symbol). Also, the LiteMol panel can be set
to fill the browser window by clicking the full screen icon.
Below the interactive density display is a plot of the Fourier Shell
Correlation as a function of resolution. The estimated resolution of the
averaged reconstruction is given by where the FSC falls below 0.5, and that
value is displayed on the plot.
Below the FSC curve is a series of three plots showing various
statistics (chi^2, Rg, Support Volume) as a function of step number. Plots
for all 20 reconstructions are shown.
All results and plots are stored in the Results ZIP file.
More Options and Information
If the options available are not sufficient to meet the needs of your
system, and you would like finer control over all the options in DENSS, you
will need to download and install DENSS from the GitHub page, where virtually all parameters are
adjustable. DENSSWeb itself is also available on GitHub for those interested
Please visit the main DENSS webpage for further explanations of all
options available in DENSS, which includes a
If you use DENSSWeb in your research, please cite the original DENSS
paper. The manuscript describing DENSSWeb is currently in preparation.
If you have any issues or suggestions or comments, please write to tdgrant at buffalo dot edu.