Action: SANS
| Module | isdb |
|---|---|
| Description | Usage |
| Calculates SANS intensity. |
Details and examples
Calculates SANS intensity.
SANS intensities are calculated for a set of scattering vectors using QVALUE keywords numbered from 1. Form factors are automatically assigned to atoms using the ATOMISTIC flag by reading a PDB file, by reading the scattering lengths with the PARAMETERS keyword from input or with the PARAMETERSFILE keyword or, alternatively, a ONEBEAD coarse-grained implementation is available.
Both for ATOMISTIC and ONEBEAD the user must provide an all-atom PDB file via MOLINFO before the SANS instruction.
ONEBEAD scheme consists in a single-bead per amino acid residue or three-bead for nucleic acid residue (one for the phosphate group, one for the pentose sugar, one for the nucleobase). PLUMED creates a virtual bead on which the SANS calculations are performed, centred on the COM of all atoms belonging to the bead. It is possible to account for the contribution of the solvation layer to the SANS intensity by adding a correction term for the solvent accessible beads only: the form factors of the amino acids / phosphate groups / pentose sugars / nucleobases with a SASA (computed via LCPO algorithm) greater than a threshold are corrected according to an electron density term. Both the surface cut-off threshold and the electron density term can be set by the user with the SASA_CUTOFF and SOLVATION_CORRECTION keywords. Moreover, SASA stride calculation can be modified using SOLVATION_STRIDE, which is set to 10 steps by default. The deuteration of the solvent-exposed residues is chosen with a probability equal to the deuterium concentration in the buffer. The deuterated residues are updated with a stride equal to SOLVATION_STRIDE. The fraction of deuterated water can be set with DEUTER_CONC, the default value is 0. ONEBEAD requires an additional PDB file to perform mapping conversion, which must be provided via TEMPLATE keyword. This PDB file should only include the atoms for which the SANS intensity will be computed. The AMBER OL3 (RNA) and OL15 (DNA) naming is required for nucleic acids. Two additional bead types are available for DNA and RNA besides phosphate group, pentose sugar, and nucleobase: - 5'-end pentose sugar capped with an hydroxyl moiety at C5' (the residue name in the PDB must be followed by "5", e.g., DC5 or C5 for cytosine in DNA and RNA, respectively); - 5'-phosphorylated end with an additional hydroxyl moiety at P (the residue name in the PDB must be followed by "T", e.g., DCT or CT for cytosine in DNA and RNA, respectively); - 3'-end pentose sugar capped with an hydroxyl moiety at C3' (the residue name in the PDB must be followed by "3", e.g., DC3 or C3 for cytosine in DNA and RNA, respectively). An additional bead type is available for proteins: - Cysteine residue involved in disulfide bridge (the residue in the PDB must be named CYX).
PLEASE NOTE: at the moment, we DO NOT explicitly take into account deuterated residues in the ATOMISTIC representation, but we correct the solvent contribution via the DEUTER_CONC keyword.
Experimental reference intensities can be added using the EXPINT keywords. All these values must be normalised to the SANS intensity at q = 0. To facilitate this operation, the SCALE_EXPINT keyword can be used to provide the intensity at q = 0. Each EXPINT is divided by SCALE_EXPINT. The maximum QVALUE for ONEBEAD is set to 0.3 inverse angstroms. The solvent density, that by default is set to 0.334 electrons per cubic angstrom (bulk water), can be modified using the SOLVDENS keyword.
The ABSOLUTE flag can be used in order to calculate intensities in the absolute scale. It is only available for the ATOMISTIC scheme and cannot be used with SCALE_EXPINT.
By default SANS is calculated using Debye on CPU, by adding the GPU flag it is possible to solve the equation on a GPU if the ARRAYFIRE libraries are installed and correctly linked. METAINFERENCE can be activated using DOSCORE and the other relevant keywords.
Examples
in the following example the SANS intensities are calculated at atomistic resolution. The form factors are assigned according to the PDB file specified in the MOLINFO. Each experimental intensity is divided by 1.4002, which is the corresponding theoretical intensity value at q = 0. The deuterated water fraction is set to 48%.
MOLINFOThis command is used to provide information on the molecules that are present in your system. More details STRUCTUREa file in pdb format containing a reference structure=template_AA.pdb SANSCalculates SANS intensity. More details ... LABELa label for the action so that its output can be referenced in the input to other actions=SANS ATOMSThe atoms to be included in the calculation, e=1-355 ATOMISTIC Calculate SAXS for an atomistic model SCALE_EXPINT Scaling value for experimental data normalization=1.4002 DEUTER_CONC Fraction of deuterated solvent=0.48 QVALUE1Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.03 EXPINT1Add an experimental value for each q value=1.0902 QVALUE2Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.06 EXPINT2Add an experimental value for each q value=0.790632 QVALUE3Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.09 EXPINT3Add an experimental value for each q value=0.453808 QVALUE4Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.12 EXPINT4Add an experimental value for each q value=0.254737 QVALUE5Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.15 EXPINT5Add an experimental value for each q value=0.154928 QVALUE6Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.18 EXPINT6Add an experimental value for each q value=0.0921503 QVALUE7Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.21 EXPINT7Add an experimental value for each q value=0.052633 QVALUE8Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.24 EXPINT8Add an experimental value for each q value=0.0276557 QVALUE9Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.27 EXPINT9Add an experimental value for each q value=0.0122775 QVALUE10Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, =0.30 EXPINT10Add an experimental value for each q value=0.00880634 ... SANS
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=(SANS\.q-.*),(SANS\.exp-.*) FILEthe name of the file on which to output these quantities=sansdata STRIDE the frequency with which the quantities of interest should be output=1
Input
The arguments and atoms that serve as the input for this action are specified using one or more of the keywords in the following table.
| Keyword | Type | Description |
|---|---|---|
| ARG | scalar | the labels of the values from which the function is calculated |
| ATOMS | atoms | The atoms to be included in the calculation, e |
Output components
This action can calculate the values in the following table when the associated keyword is included in the input for the action. These values can be referenced elsewhere in the input by using this Action's label followed by a dot and the name of the value required from the list below.
| Name | Type | Keyword | Description |
|---|---|---|---|
| score | scalar | default | the Metainference score |
| sigma | scalar | default | uncertainty parameter |
| sigmaMean | scalar | default | uncertainty in the mean estimate |
| neff | scalar | default | effective number of replicas |
| acceptSigma | scalar | default | MC acceptance for sigma values |
| acceptScale | scalar | SCALEDATA | MC acceptance for scale value |
| acceptFT | scalar | GENERIC | MC acceptance for general metainference f tilde value |
| weight | scalar | REWEIGHT | weights of the weighted average |
| biasDer | scalar | REWEIGHT | derivatives with respect to the bias |
| scale | scalar | SCALEDATA | scale parameter |
| offset | scalar | ADDOFFSET | offset parameter |
| ftilde | scalar | GENERIC | ensemble average estimator |
| q | scalar | default | The # SAXS of q |
| exp | scalar | EXPINT | The # experimental intensity |
Full list of keywords
The following table describes the keywords and options that can be used with this action
| Keyword | Type | Default | Description |
|---|---|---|---|
| ARGThis keyword do not have examples | input | none | the labels of the values from which the function is calculated |
| ATOMS | input | none | The atoms to be included in the calculation, e |
| NOISETYPEThis keyword do not have examples | compulsory | MGAUSS | functional form of the noise (GAUSS,MGAUSS,OUTLIERS,MOUTLIERS,GENERIC) |
| LIKELIHOODThis keyword do not have examples | compulsory | GAUSS | the likelihood for the GENERIC metainference model, GAUSS or LOGN |
| DFTILDEThis keyword do not have examples | compulsory | 0.1 | fraction of sigma_mean used to evolve ftilde |
| SCALE0This keyword do not have examples | compulsory | 1.0 | initial value of the scaling factor |
| SCALE_PRIORThis keyword do not have examples | compulsory | FLAT | either FLAT or GAUSSIAN |
| OFFSET0This keyword do not have examples | compulsory | 0.0 | initial value of the offset |
| OFFSET_PRIORThis keyword do not have examples | compulsory | FLAT | either FLAT or GAUSSIAN |
| SIGMA0This keyword do not have examples | compulsory | 1.0 | initial value of the uncertainty parameter |
| SIGMA_MINThis keyword do not have examples | compulsory | 0.0 | minimum value of the uncertainty parameter |
| SIGMA_MAXThis keyword do not have examples | compulsory | 10. | maximum value of the uncertainty parameter |
| OPTSIGMAMEANThis keyword do not have examples | compulsory | NONE | Set to NONE/SEM to manually set sigma mean, or to estimate it on the fly |
| WRITE_STRIDEThis keyword do not have examples | compulsory | 10000 | write the status to a file every N steps, this can be used for restart/continuation |
| DEVICEIDThis keyword do not have examples | compulsory | -1 | Identifier of the GPU to be used |
| TEMPLATEThis keyword do not have examples | compulsory | template.pdb | A PDB file is required for ONEBEAD mapping |
| DEUTER_CONC | compulsory | 0. | Fraction of deuterated solvent |
| SOLVDENSThis keyword do not have examples | compulsory | 0.334 | Density of the solvent to be used for the correction of atomistic form factors |
| SOLVATION_CORRECTIONThis keyword do not have examples | compulsory | 0.0 | Solvation layer electron density correction (ONEBEAD only) |
| SASA_CUTOFFThis keyword do not have examples | compulsory | 1.0 | SASA value to consider a residue as exposed to the solvent (ONEBEAD only) |
| NThis keyword do not have examples | compulsory | 10 | Number of points in the resolution function integral |
| SOLVATION_STRIDEThis keyword do not have examples | compulsory | 10 | Number of steps between every new residues solvation estimation via LCPO (ONEBEAD only) |
| SCALE_EXPINT | compulsory | 1.0 | Scaling value for experimental data normalization |
| NUMERICAL_DERIVATIVESThis keyword do not have examples | optional | false | calculate the derivatives for these quantities numerically |
| DOSCOREThis keyword do not have examples | optional | false | activate metainference |
| NOENSEMBLEThis keyword do not have examples | optional | false | don't perform any replica-averaging |
| REWEIGHTThis keyword do not have examples | optional | false | simple REWEIGHT using the ARG as energy |
| AVERAGINGThis keyword do not have examples | optional | not used | Stride for calculation of averaged weights and sigma_mean |
| SCALEDATAThis keyword do not have examples | optional | false | Set to TRUE if you want to sample a scaling factor common to all values and replicas |
| SCALE_MINThis keyword do not have examples | optional | not used | minimum value of the scaling factor |
| SCALE_MAXThis keyword do not have examples | optional | not used | maximum value of the scaling factor |
| DSCALEThis keyword do not have examples | optional | not used | maximum MC move of the scaling factor |
| ADDOFFSETThis keyword do not have examples | optional | false | Set to TRUE if you want to sample an offset common to all values and replicas |
| OFFSET_MINThis keyword do not have examples | optional | not used | minimum value of the offset |
| OFFSET_MAXThis keyword do not have examples | optional | not used | maximum value of the offset |
| DOFFSETThis keyword do not have examples | optional | not used | maximum MC move of the offset |
| REGRES_ZEROThis keyword do not have examples | optional | not used | stride for regression with zero offset |
| DSIGMAThis keyword do not have examples | optional | not used | maximum MC move of the uncertainty parameter |
| SIGMA_MEAN0This keyword do not have examples | optional | not used | starting value for the uncertainty in the mean estimate |
| SIGMA_MAX_STEPSThis keyword do not have examples | optional | not used | Number of steps used to optimise SIGMA_MAX, before that the SIGMA_MAX value is used |
| TEMPThis keyword do not have examples | optional | not used | the system temperature - this is only needed if code doesn't pass the temperature to plumed |
| MC_STEPSThis keyword do not have examples | optional | not used | number of MC steps |
| MC_CHUNKSIZEThis keyword do not have examples | optional | not used | MC chunksize |
| STATUS_FILEThis keyword do not have examples | optional | not used | write a file with all the data useful for restart/continuation of Metainference |
| FMTThis keyword do not have examples | optional | not used | specify format for HILLS files (useful for decrease the number of digits in regtests) |
| SELECTORThis keyword do not have examples | optional | not used | name of selector |
| NSELECTThis keyword do not have examples | optional | not used | range of values for selector [0, N-1] |
| RESTARTThis keyword do not have examples | optional | not used | allows per-action setting of restart (YES/NO/AUTO) |
| NOPBCThis keyword do not have examples | optional | false | Ignore the periodic boundary conditions when calculating distances |
| SERIALThis keyword do not have examples | optional | false | Perform the calculation in serial - for debug purpose |
| GPUThis keyword do not have examples | optional | false | Calculate SAXS using ARRAYFIRE on an accelerator device |
| ABSOLUTEThis keyword do not have examples | optional | false | Absolute intensity: the intensities for each q-value are not normalised for the intensity at q=0 |
| ATOMISTIC | optional | false | Calculate SAXS for an atomistic model |
| MARTINIThis keyword do not have examples | optional | false | Calculate SAXS for a Martini model |
| ONEBEADThis keyword do not have examples | optional | false | calculate SAXS for a single bead model |
| QVALUE | optional | not used | Selected scattering lengths in inverse angstroms are given as QVALUE1, QVALUE2, |
| PARAMETERSThis keyword do not have examples | optional | not used | Used parameter Keywords like PARAMETERS1, PARAMETERS2 |
| PARAMETERSFILEThis keyword do not have examples | optional | not used | Read the PARAMETERS from a file |
| EXPINT | optional | not used | Add an experimental value for each q value |
| SIGMARESThis keyword do not have examples | optional | not used | Variance of Gaussian distribution describing the deviation in the scattering angle for each q value |