SASA_HASEL
This is part of the sasa module
It is only available if you configure PLUMED with ./configure –enable-modules=sasa . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list.

Calculates the solvent accessible surface area (SASA) of a protein molecule, or other properties related to it.

The atoms for which the SASA is desired should be indicated with the keyword ATOMS, and a pdb file of the protein must be provided in input with the MOLINFO keyword. The algorithm described in [65] is used for the calculation. The radius of the solvent is assumed to be 0.14 nm, which is the radius of water molecules. Using the keyword NL_STRIDE it is also possible to specify the frequency with which the neighbor list for the calculation of SASA is updated (the default is every 10 steps).

Different properties can be calculated and selected using the TYPE keyword:

1) the total SASA (TOTAL);

2) the free energy of transfer for the protein according to the transfer model (TRANSFER). This keyword can be used, for instance, to compute the transfer of a protein to different temperatures, as detailed in [6], or to different pressures, as detailed in [5], or to different osmolyte solutions, as detailed in [7].

When the TRANSFER keyword is used, a file with the free energy of transfer values for the sidechains and backbone atoms should be provided (using the keyword DELTAGFILE). Such file should have the following format:

----------------Sample DeltaG.dat file---------------------
ALA     0.711019999999962
ARG     -2.24832799999996
ASN     -2.74838799999999
ASP     -2.5626376
CYS     3.89864000000006
GLN     -1.76192
GLU     -2.38664400000002
GLY     0
HIS     -3.58152799999999
ILE     2.42634399999986
LEU     1.77233599999988
LYS     -1.92576400000002
MET     -0.262827999999956
PHE     1.62028800000007
PRO     -2.15598800000001
SER     -1.60934800000004
THR     -0.591559999999987
TRP     1.22936000000027
TYR     0.775547999999958
VAL     2.12779200000011
BACKBONE        1.00066920000002
-----------------------------------------------------------

where the second column is the free energy of transfer for each sidechain/backbone, in kJ/mol.

A Python script for the computation of free energy of transfer values to describe the effect of osmolyte concentration, temperature and pressure (according to [7], [6] and [5]) is freely available at https://github.com/andrea-arsiccio/DeltaG-calculation. The script automatically outputs a DeltaG.dat file compatible with this SASA module.

If the DELTAGFILE is not provided, the program computes the free energy of transfer values as if they had to take into account the effect of temperature according to approaches 2 or 3 in the paper [6]. Please read and cite this paper if using the transfer model for computing the effect of temperature in implicit solvent simulations. For this purpose, the keyword APPROACH should be added, and set to either 2 or 3.

The SASA usually makes sense when atoms used for the calculation are all part of the same molecule. When running with periodic boundary conditions, the atoms should be in the proper periodic image. This is done automatically since PLUMED 2.2, by considering the ordered list of atoms and rebuilding the broken entities using a procedure that is equivalent to that done in WHOLEMOLECULES. Notice that rebuilding is local to this action. This is different from WHOLEMOLECULES which actually modifies the coordinates stored in PLUMED.

In case you want to recover the old behavior you should use the NOPBC flag. In that case you need to take care that atoms are in the correct periodic image.

The SASA may also be computed using the SASA_LCPO collective variable, which makes use of the LCPO algorithm [143]. SASA_LCPO is more accurate then SASA_HASEL, but the computation is slower.

Examples

The following input tells plumed to print the total SASA for atoms 10 to 20 in a protein chain.

Click on the labels of the actions for more information on what each action computes
tested on v2.9
sasa: SASA_HASEL 
TYPE
compulsory keyword ( default=TOTAL ) The type of calculation you want to perform.
=TOTAL
ATOMS
the group of atoms that you are calculating the SASA for.
=10-20
NL_STRIDE
compulsory keyword The frequency with which the neighbor list for the calculation of SASA is updated.
=10 PRINT
ARG
the input for this action is the scalar output from one or more other actions.
=sasa
STRIDE
compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
=1
FILE
the name of the file on which to output these quantities
=colvar

The following input tells plumed to compute the transfer free energy for the protein chain containing atoms 10 to 20. Such transfer free energy is then used as a bias in the simulation (e.g., implicit solvent simulations). The free energy of transfer values are read from a file called DeltaG.dat.

Click on the labels of the actions for more information on what each action computes
tested on v2.9
sasa: SASA_HASEL 
TYPE
compulsory keyword ( default=TOTAL ) The type of calculation you want to perform.
=TRANSFER
ATOMS
the group of atoms that you are calculating the SASA for.
=10-20
NL_STRIDE
compulsory keyword The frequency with which the neighbor list for the calculation of SASA is updated.
=10
DELTAGFILE
a file containing the free energy of transfer values for backbone and sidechains atoms.
=DeltaG.dat bias: BIASVALUE
ARG
the input for this action is the scalar output from one or more other actions.
=sasa PRINT
ARG
the input for this action is the scalar output from one or more other actions.
=sasa,bias.*
STRIDE
compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
=1
FILE
the name of the file on which to output these quantities
=colvar

The following input tells plumed to compute the transfer free energy for the protein chain containing atoms 10 to 20. Such transfer free energy is then used as a bias in the simulation (e.g., implicit solvent simulations). The free energy of transfer values are computed according to [6], and take into account the effect of temperature using approach 2 as described in the paper.

Click on the labels of the actions for more information on what each action computes
tested on v2.9
sasa: SASA_HASEL 
TYPE
compulsory keyword ( default=TOTAL ) The type of calculation you want to perform.
=TRANSFER
ATOMS
the group of atoms that you are calculating the SASA for.
=10-20
NL_STRIDE
compulsory keyword The frequency with which the neighbor list for the calculation of SASA is updated.
=10
APPROACH
either approach 2 or 3.
=2 bias: BIASVALUE
ARG
the input for this action is the scalar output from one or more other actions.
=sasa PRINT
ARG
the input for this action is the scalar output from one or more other actions.
=sasa,bias.*
STRIDE
compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
=1
FILE
the name of the file on which to output these quantities
=colvar
Glossary of keywords and components
The atoms involved can be specified using
ATOMS the group of atoms that you are calculating the SASA for. For more information on how to specify lists of atoms see Groups and Virtual Atoms
Compulsory keywords
TYPE ( default=TOTAL ) The type of calculation you want to perform. Can be TOTAL or TRANSFER
NL_STRIDE The frequency with which the neighbor list for the calculation of SASA is updated.
Options
NUMERICAL_DERIVATIVES ( default=off ) calculate the derivatives for these quantities numerically
NOPBC

( default=off ) ignore the periodic boundary conditions when calculating distances

DELTAGFILE a file containing the free energy of transfer values for backbone and sidechains atoms. Necessary only if TYPE = TRANSFER. A Python script for the computation of free energy of transfer values to describe the effect of osmolyte concentration, temperature and pressure is freely available at https://github.com/andrea-arsiccio/DeltaG-calculation. The script automatically outputs a DeltaG.dat file compatible with this SASA module. If TYPE = TRANSFER and no DELTAGFILE is provided, the free energy values are those describing the effect of temperature, and are computed using the temperature value passed by the MD engine
APPROACH either approach 2 or 3. Necessary only if TYPE = TRANSFER and no DELTAGFILE is provided. If TYPE = TRANSFER and no DELTAGFILE is provided, the free energy values are those describing the effect of temperature, and the program must know if approach 2 or 3 (as described in Arsiccio and Shea, Protein Cold Denaturation in Implicit Solvent Simulations: A Transfer Free Energy Approach, J. Phys. Chem. B, 2021) needs to be used to compute them