sasa
#
- biotite.structure.sasa(array, probe_radius=1.4, atom_filter=None, ignore_ions=True, point_number=1000, point_distr='Fibonacci', vdw_radii='ProtOr')[source]#
Calculate the Solvent Accessible Surface Area (SASA) of a protein.
This function uses the Shrake-Rupley (“rolling probe”) algorithm [1]: Every atom is occupied by a evenly distributed point mesh. The points that can be reached by the “rolling probe”, are surface accessible.
- Parameters:
- arrayAtomArray
The protein model to calculate the SASA for.
- probe_radiusfloat, optional
The VdW-radius of the solvent molecules (default: 1.4).
- atom_filterndarray, dtype=bool, optional
If this parameter is given, SASA is only calculated for the filtered atoms.
- ignore_ionsbool, optional
If true, all monoatomic ions are removed before SASA calculation (default: True).
- point_numberint, optional
The number of points in the mesh occupying each atom for SASA calculation (default: 100). The SASA calculation time is proportional to the amount of sphere points.
- point_distrstr or function, optional
If a function is given, the function is used to calculate the point distribution for the mesh (the function must take float n as parameter and return a (n x 3)
ndarray
). Alternatively a string can be given to choose a built-in distribution:Fibonacci - Distribute points using a golden section spiral.
By default Fibonacci is used.
- vdw_radiistr or ndarray, dtype=float, optional
Indicates the set of VdW radii to be used. If an array-length
ndarray
is given, each atom gets the radius at the corresponding index. Radii given for atoms that are not used in SASA calculation (e.g. solvent atoms) can have arbitrary values (e.g. NaN). If instead a string is given, one of the built-in sets is used:By default ProtOr is used.
- Returns:
- sasandarray, dtype=bool, shape=(n,)
Atom-wise SASA. NaN for atoms where SASA has not been calculated (solvent atoms, hydrogen atoms (ProtOr), atoms not in filter).
References