Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::scoring::sasa::SasaCalc Class Reference

Main interface to sasa calculations outside of pose metrics. Virt atms are skipped as radii=0. More...

#include <SasaCalc.hh>

Inheritance diagram for core::scoring::sasa::SasaCalc:
Inheritance graph
[legend]

Public Member Functions

 SasaCalc ()
 
 SasaCalc (SasaMethodEnum method)
 
 ~SasaCalc () override
 
Real calculate (const pose::Pose &pose)
 Calculate Sasa. Atoms not calculated have -1 sasa in AtomID_Map. This is carried over for compatability purposes. More...
 
Real calculate (const pose::Pose &pose, id::AtomID_Map< Real > &atom_sasa)
 
Real calculate (const pose::Pose &pose, utility::vector1< Real > &rsd_sasa, utility::vector1< Real > &rsd_hsasa)
 
Real calculate (const pose::Pose &pose, id::AtomID_Map< Real > &atom_sasa, utility::vector1< Real > &rsd_sasa, utility::vector1< Real > &rsd_hsasa)
 
Real calculate (const pose::Pose &pose, id::AtomID_Map< Real > &atom_sasa, utility::vector1< Real > &rsd_sasa, utility::vector1< Real > &rsd_hsasa, utility::vector1< Real > &rsd_rel_hsasa)
 
id::AtomID_Map< Realget_atom_sasa () const
 
void fill_data (Real &total_hsasa, Real &total_rel_hsasa, id::AtomID_Map< Real > &atom_sasa, utility::vector1< Real > &rsd_sasa, utility::vector1< Real > &rsd_hsasa, utility::vector1< Real > &rel_hsasa)
 Convenience function to fill most commonly used data. More...
 
utility::vector1< Realget_residue_sasa () const
 
utility::vector1< Realget_residue_sasa_bb () const
 
utility::vector1< Realget_residue_sasa_sc () const
 
utility::vector1< Realget_residue_hsasa () const
 
utility::vector1< Realget_residue_hsasa_bb () const
 
utility::vector1< Realget_residue_hsasa_sc () const
 
utility::vector1< Realget_rel_hphobic_sasa_by_charge () const
 
Real get_total_sasa () const
 
Real get_total_sasa_sc () const
 
Real get_total_sasa_bb () const
 
Real get_total_hsasa () const
 
Real get_total_hsasa_sc () const
 
Real get_total_hsasa_bb () const
 
Real get_total_rel_hsasa () const
 
void set_defaults ()
 
void set_sasa_method_hp_mode (SasaMethodHPMode const mode_in)
 Set whether we're counting all SASA (default), polar SASA, or hydrophobic SASA. More...
 
SasaMethodHPMode sasa_method_hp_mode () const
 Get whether we're counting all SASA (default), polar SASA, or hydrophobic SASA. More...
 
void set_calculation_method (SasaMethodEnum method)
 
void set_include_hydrogens_explicitly (bool include_hydrogens)
 Include hydrogens explicitly. More...
 
void set_probe_radius (Real probe_radius)
 Probe radius of 1.4 (water) is typically used. More...
 
void set_include_probe_radius_in_atom_radii (bool include_probe_radius)
 This is typically done. Disabling it is more akin to obtaining the Surface Area than the SASA. More...
 
void set_include_carbon_sulfer_only_in_hydrophobic_calc (bool include_c_s_only)
 Typically, only carbon or sulfers are included in the calculation. If you are using ligands - this may not be good enough. More...
 
void set_exclude_polar_atoms_by_charge (bool exclude_polar_all)
 Polar carbons and other atoms should not be included in hydrophobic hSASA - though historically they were. .4 is a relative number. This makes sure that carbonyl and carboxyl carbons are marked as polar, while others (protein-based) are non-polar. More...
 
void set_polar_charge_cutoff (Real cutoff)
 
void set_implicit_hydrogen_included_radii_set (SasaRadii radii_set)
 Radii set to use when not including hydrogens (naccess/chothia, legacy) Do not use legacy unless you know what you are doing and why. More...
 
void set_explicit_hydrogen_included_radii_set (SasaRadii radii_set)
 Radii set to use when including hydrogens (LJ/reduce) More...
 
void set_use_big_polar_hydrogen (bool big_polar_h)
 Not for general use. Used to calculate unsatisfied buried polars with legacy radii (which implicitly had included hydrogens.) More...
 

Private Member Functions

void init (const pose::Pose &pose)
 
void setup_sasa_method (SasaRadii radii_set)
 Creates and sets up the sasa method before calculate is called on the instance. More...
 
void calc_per_res_sasas (const pose::Pose &pose)
 

Private Attributes

SasaMethodEnum method_type_
 
SasaMethodOP method_
 
SasaMethodHPMode sasa_method_hp_mode_ = SasaMethodHPMode::ALL_SASA
 Are we counting all SASA, hydrophobic only, or hydrophilic only? More...
 
SasaRadii implicit_radii_set_
 
SasaRadii explicit_radii_set_
 
bool include_hydrogens_
 
Real probe_radius_
 
bool include_c_s_only_in_hsasa_
 
bool exclude_polar_all_in_hsasa_
 
Real polar_charge_cutoff_
 
bool include_probe_radius_
 
bool big_polar_h_
 
id::AtomID_Map< boolatom_subset_
 
id::AtomID_Map< Realatom_sasa_
 
utility::vector1< Realrsd_sasa_
 
utility::vector1< Realrsd_sasa_sc_
 
utility::vector1< Realrsd_hsasa_
 
utility::vector1< Realrsd_hsasa_sc_
 
utility::vector1< Realrel_hydrophobic_sasa_by_charge_
 
Real total_sasa_
 
Real total_sasa_sc_
 
Real total_hsasa_
 
Real total_hsasa_sc_
 
Real total_rel_hsasa_
 

Detailed Description

Main interface to sasa calculations outside of pose metrics. Virt atms are skipped as radii=0.

Constructor & Destructor Documentation

core::scoring::sasa::SasaCalc::SasaCalc ( )
core::scoring::sasa::SasaCalc::SasaCalc ( SasaMethodEnum  method)

References method_type_, and set_defaults().

core::scoring::sasa::SasaCalc::~SasaCalc ( )
overridedefault

Member Function Documentation

void core::scoring::sasa::SasaCalc::calc_per_res_sasas ( const pose::Pose pose)
private
Real core::scoring::sasa::SasaCalc::calculate ( const pose::Pose pose)
Real core::scoring::sasa::SasaCalc::calculate ( const pose::Pose pose,
id::AtomID_Map< Real > &  atom_sasa 
)

References atom_sasa_, and calculate().

Real core::scoring::sasa::SasaCalc::calculate ( const pose::Pose pose,
utility::vector1< Real > &  rsd_sasa,
utility::vector1< Real > &  rsd_hsasa 
)

References calculate(), rsd_hsasa_, and rsd_sasa_.

Real core::scoring::sasa::SasaCalc::calculate ( const pose::Pose pose,
id::AtomID_Map< Real > &  atom_sasa,
utility::vector1< Real > &  rsd_sasa,
utility::vector1< Real > &  rsd_hsasa 
)

References atom_sasa_, and calculate().

Real core::scoring::sasa::SasaCalc::calculate ( const pose::Pose pose,
id::AtomID_Map< Real > &  atom_sasa,
utility::vector1< Real > &  rsd_sasa,
utility::vector1< Real > &  rsd_hsasa,
utility::vector1< Real > &  rsd_rel_hsasa 
)
void core::scoring::sasa::SasaCalc::fill_data ( Real total_hsasa,
Real total_rel_hsasa,
id::AtomID_Map< Real > &  atom_sasa,
utility::vector1< Real > &  rsd_sasa,
utility::vector1< Real > &  rsd_hsasa,
utility::vector1< Real > &  rel_hsasa 
)

Convenience function to fill most commonly used data.

References atom_sasa_, rel_hydrophobic_sasa_by_charge_, rsd_hsasa_, rsd_sasa_, total_hsasa_, and total_rel_hsasa_.

id::AtomID_Map< Real > core::scoring::sasa::SasaCalc::get_atom_sasa ( ) const
inline

Data Access

References atom_sasa_.

utility::vector1<Real > core::scoring::sasa::SasaCalc::get_rel_hphobic_sasa_by_charge ( ) const
inline
utility::vector1< Real > core::scoring::sasa::SasaCalc::get_residue_hsasa ( ) const
inline

References rsd_hsasa_.

vector1< Real > core::scoring::sasa::SasaCalc::get_residue_hsasa_bb ( ) const

References rsd_hsasa_, and rsd_hsasa_sc_.

utility::vector1< Real > core::scoring::sasa::SasaCalc::get_residue_hsasa_sc ( ) const
inline

References rsd_hsasa_sc_.

utility::vector1<Real> core::scoring::sasa::SasaCalc::get_residue_sasa ( ) const
inline
vector1< Real > core::scoring::sasa::SasaCalc::get_residue_sasa_bb ( ) const

References rsd_sasa_, and rsd_sasa_sc_.

utility::vector1< Real > core::scoring::sasa::SasaCalc::get_residue_sasa_sc ( ) const
inline
Real core::scoring::sasa::SasaCalc::get_total_hsasa ( ) const
inline

References total_hsasa_.

Real core::scoring::sasa::SasaCalc::get_total_hsasa_bb ( ) const
inline

References total_hsasa_, and total_hsasa_sc_.

Real core::scoring::sasa::SasaCalc::get_total_hsasa_sc ( ) const
inline

References total_hsasa_sc_.

Real core::scoring::sasa::SasaCalc::get_total_rel_hsasa ( ) const
inline

References total_rel_hsasa_.

Real core::scoring::sasa::SasaCalc::get_total_sasa ( ) const
inline

References total_sasa_.

Real core::scoring::sasa::SasaCalc::get_total_sasa_bb ( ) const
inline

References total_sasa_, and total_sasa_sc_.

Real core::scoring::sasa::SasaCalc::get_total_sasa_sc ( ) const
inline

References total_sasa_sc_.

void core::scoring::sasa::SasaCalc::init ( const pose::Pose pose)
private
SasaMethodHPMode core::scoring::sasa::SasaCalc::sasa_method_hp_mode ( ) const
inline

Get whether we're counting all SASA (default), polar SASA, or hydrophobic SASA.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References sasa_method_hp_mode_.

void core::scoring::sasa::SasaCalc::set_calculation_method ( SasaMethodEnum  method)

References method_type_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_defaults ( )
void core::scoring::sasa::SasaCalc::set_exclude_polar_atoms_by_charge ( bool  exclude_polar_all)

Polar carbons and other atoms should not be included in hydrophobic hSASA - though historically they were. .4 is a relative number. This makes sure that carbonyl and carboxyl carbons are marked as polar, while others (protein-based) are non-polar.

References exclude_polar_all_in_hsasa_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_explicit_hydrogen_included_radii_set ( SasaRadii  radii_set)

Radii set to use when including hydrogens (LJ/reduce)

References explicit_radii_set_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_implicit_hydrogen_included_radii_set ( SasaRadii  radii_set)

Radii set to use when not including hydrogens (naccess/chothia, legacy) Do not use legacy unless you know what you are doing and why.

References implicit_radii_set_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_include_carbon_sulfer_only_in_hydrophobic_calc ( bool  include_c_s_only)

Typically, only carbon or sulfers are included in the calculation. If you are using ligands - this may not be good enough.

References include_c_s_only_in_hsasa_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_include_hydrogens_explicitly ( bool  include_hydrogens)

Include hydrogens explicitly.

References include_hydrogens_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_include_probe_radius_in_atom_radii ( bool  include_probe_radius)

This is typically done. Disabling it is more akin to obtaining the Surface Area than the SASA.

References include_probe_radius_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_polar_charge_cutoff ( core::Real  cutoff)

References polar_charge_cutoff_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_probe_radius ( core::Real  probe_radius)

Probe radius of 1.4 (water) is typically used.

References probe_radius_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::set_sasa_method_hp_mode ( SasaMethodHPMode const  mode_in)

Set whether we're counting all SASA (default), polar SASA, or hydrophobic SASA.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References core::scoring::sasa::END_OF_LIST, method_, and sasa_method_hp_mode_.

Referenced by core::simple_metrics::per_residue_metrics::PerResidueSasaMetric::calculate(), and set_defaults().

void core::scoring::sasa::SasaCalc::set_use_big_polar_hydrogen ( bool  big_polar_h)

Not for general use. Used to calculate unsatisfied buried polars with legacy radii (which implicitly had included hydrogens.)

Legacy Options

References big_polar_h_.

Referenced by set_defaults().

void core::scoring::sasa::SasaCalc::setup_sasa_method ( SasaRadii  radii_set)
private

Creates and sets up the sasa method before calculate is called on the instance.

References big_polar_h_, core::scoring::sasa::create_sasa_method(), include_probe_radius_, method_, method_type_, probe_radius_, and sasa_method_hp_mode_.

Referenced by calculate().

Member Data Documentation

id::AtomID_Map< Real > core::scoring::sasa::SasaCalc::atom_sasa_
private
id::AtomID_Map< bool > core::scoring::sasa::SasaCalc::atom_subset_
private

Referenced by calc_per_res_sasas(), calculate(), and init().

bool core::scoring::sasa::SasaCalc::big_polar_h_
private
bool core::scoring::sasa::SasaCalc::exclude_polar_all_in_hsasa_
private
SasaRadii core::scoring::sasa::SasaCalc::explicit_radii_set_
private
SasaRadii core::scoring::sasa::SasaCalc::implicit_radii_set_
private
bool core::scoring::sasa::SasaCalc::include_c_s_only_in_hsasa_
private
bool core::scoring::sasa::SasaCalc::include_hydrogens_
private
bool core::scoring::sasa::SasaCalc::include_probe_radius_
private
SasaMethodOP core::scoring::sasa::SasaCalc::method_
private
SasaMethodEnum core::scoring::sasa::SasaCalc::method_type_
private
Real core::scoring::sasa::SasaCalc::polar_charge_cutoff_
private
Real core::scoring::sasa::SasaCalc::probe_radius_
private
utility::vector1< Real > core::scoring::sasa::SasaCalc::rel_hydrophobic_sasa_by_charge_
private
utility::vector1< Real > core::scoring::sasa::SasaCalc::rsd_hsasa_
private
utility::vector1< Real > core::scoring::sasa::SasaCalc::rsd_hsasa_sc_
private
utility::vector1< Real > core::scoring::sasa::SasaCalc::rsd_sasa_
private
utility::vector1< Real> core::scoring::sasa::SasaCalc::rsd_sasa_sc_
private
SasaMethodHPMode core::scoring::sasa::SasaCalc::sasa_method_hp_mode_ = SasaMethodHPMode::ALL_SASA
private

Are we counting all SASA, hydrophobic only, or hydrophilic only?

Defaults to all.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tue..nosp@m.org).

Referenced by sasa_method_hp_mode(), set_sasa_method_hp_mode(), and setup_sasa_method().

Real core::scoring::sasa::SasaCalc::total_hsasa_
private
Real core::scoring::sasa::SasaCalc::total_hsasa_sc_
private
Real core::scoring::sasa::SasaCalc::total_rel_hsasa_
private
Real core::scoring::sasa::SasaCalc::total_sasa_
private
Real core::scoring::sasa::SasaCalc::total_sasa_sc_
private

The documentation for this class was generated from the following files: