Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Functions
core::chemical::gasteiger Namespace Reference

Classes

class  GasteigerAtomTypeData
 
class  GasteigerAtomTypeSet
 A set of Bcl Atom types. More...
 
class  PossibleAtomTypesForAtom
 A helper class by which AtomTypes can return all possible atom types for a given atom in a structure that is easily accessed by orbital type. More...
 

Typedefs

typedef
utility::pointer::shared_ptr
< GasteigerAtomTypeData
GasteigerAtomTypeDataOP
 
typedef
utility::pointer::shared_ptr
< GasteigerAtomTypeData const > 
GasteigerAtomTypeDataCOP
 
typedef
utility::pointer::weak_ptr
< GasteigerAtomTypeSet
GasteigerAtomTypeSetAP
 
typedef
utility::pointer::weak_ptr
< GasteigerAtomTypeSet const > 
GasteigerAtomTypeSetCAP
 
typedef
utility::pointer::shared_ptr
< GasteigerAtomTypeSet
GasteigerAtomTypeSetOP
 
typedef
utility::pointer::shared_ptr
< GasteigerAtomTypeSet const > 
GasteigerAtomTypeSetCOP
 

Functions

std::ostream & operator<< (std::ostream &out, GasteigerAtomTypeData const &obj)
 
static basic::Tracer TR ("core.chemical.gasteiger.GasteigerAtomTyper")
 
void assign_gasteiger_atom_types (core::chemical::MutableResidueType &restype, bool keep_existing=true, bool allow_unknown=false)
 Version which gets typeset from ResidueType, or just uses default More...
 
void assign_gasteiger_atom_types (core::chemical::MutableResidueType &restype, GasteigerAtomTypeSetCOP gasteiger_atom_type_set, bool keep_existing, bool allow_unknown)
 Assign gasteiger atom types to the atoms in restype. If "keep_existing" is true keep any already-assigned types Otherwise assign all new types. More...
 
PossibleAtomTypesForAtom GetPossibleTypesForAtom (const core::chemical::RealResidueGraph &graph, VD const &atomVD, GasteigerAtomTypeSetCOP gasteiger_atom_type_set, core::Size connections)
 get all atom types matching a given atom considering its bonds More...
 
PossibleAtomTypesForAtom GetPossibleTypesForAtom (core::chemical::RealResidueGraph const &graph, RealResidueVD const &atomVD, GasteigerAtomTypeSetCOP gasteiger_atom_type_set, core::Size connections)
 
static basic::Tracer tr ("core.chemical.gasteiger.GasteigerAtomTypeSet")
 
void safe_write (std::ostream &out, core::Size const &val, bool sep=true)
 
void safe_write (std::ostream &out, core::Real const &val, bool sep=true)
 
void safe_read (std::istream &in, core::Size &val)
 
void safe_read (std::istream &in, core::Real &val)
 
template<typename T >
std::set< T > parse_enum_set (std::string in)
 
template<typename T >
std::string compact_enum_set (std::set< T > in, std::string prefix="xx")
 

Typedef Documentation

typedef utility::pointer::shared_ptr< GasteigerAtomTypeData const > core::chemical::gasteiger::GasteigerAtomTypeDataCOP
typedef utility::pointer::weak_ptr< GasteigerAtomTypeSet const > core::chemical::gasteiger::GasteigerAtomTypeSetCAP
typedef utility::pointer::shared_ptr< GasteigerAtomTypeSet const > core::chemical::gasteiger::GasteigerAtomTypeSetCOP

Function Documentation

void core::chemical::gasteiger::assign_gasteiger_atom_types ( core::chemical::MutableResidueType restype,
bool  keep_existing,
bool  allow_unknown 
)
void core::chemical::gasteiger::assign_gasteiger_atom_types ( core::chemical::MutableResidueType restype,
GasteigerAtomTypeSetCOP  gasteiger_atom_type_set,
bool  keep_existing,
bool  allow_unknown 
)

Assign gasteiger atom types to the atoms in restype. If "keep_existing" is true keep any already-assigned types Otherwise assign all new types.

Remaining issues:

  • Input with explicitly mentioned aromatic bonds is not necessarily handled correctly. ** (I haven't extensively tested these yet.)
  • Oxygen typing in aromatic rings is still an issue. ** While most work, N-O-N bridges like in PDB ligands G98 and 3C3 are missed. ** Conversely, methylated/oxidized dibenzofurans like in KRC and FCM are mistyped as trigonal when they're not.
  • Rosetta needs to have formal charges notated. (Cannot calculate them from the number of hydrogens present.

Differences from gasteiger types which aren't necessarily errors:

  • Phosphooxime oxygens like SEH & CGT are typed trig versus gasteiger tet.
  • Carbamoyl oxime oxygens like GHR and VPU are typed trig versus gasteiger tet.
  • 5 member ring oxygens where there's an exocyclic double bond like PHX and FUR are typed trig versus gasteiger tet.
  • 5 member carbamoyl oxygens like CLW and A91 are typed trig versus gasteiger tet.
  • The nitroperoxide oxygens of 16X are typed tet versus gasteiger trig
  • The bridge nitrogens of fused ring structures like PO5, C7M and AZQ are typed trig versus gasteiger tet.

References core::chemical::MutableResidueType::atom(), core::chemical::MutableResidueType::atom_iterators(), core::chemical::MutableResidueType::atom_name(), core::chemical::Atom::gasteiger_atom_type(), core::chemical::gasteiger::PossibleAtomTypesForAtom::GetMostStableType(), GetPossibleTypesForAtom(), core::chemical::MutableResidueType::graph(), core::chemical::Atom::is_fake(), core::chemical::ResidueTypeBase::is_polymer(), core::chemical::MutableResidueType::lower_connect(), core::chemical::MutableResidueType::lower_connect_id(), core::chemical::MutableResidueType::n_residue_connections_for_atom(), core::chemical::MutableResidueType::null_vertex, core::chemical::sdf::output_residue(), core::chemical::regenerate_graph_vertex_index(), TR(), and core::chemical::MutableResidueConnection::vertex().

template<typename T >
std::string core::chemical::gasteiger::compact_enum_set ( std::set< T >  in,
std::string  prefix = "xx" 
)
PossibleAtomTypesForAtom core::chemical::gasteiger::GetPossibleTypesForAtom ( core::chemical::RealResidueGraph const &  graph,
RealResidueVD const &  atomVD,
GasteigerAtomTypeSetCOP  gasteiger_atom_type_set,
core::Size  connections 
)
PossibleAtomTypesForAtom core::chemical::gasteiger::GetPossibleTypesForAtom ( const core::chemical::RealResidueGraph graph,
VD const &  atomVD,
GasteigerAtomTypeSetCOP  gasteiger_atom_type_set,
core::Size  connections 
)
std::ostream& core::chemical::gasteiger::operator<< ( std::ostream &  out,
GasteigerAtomTypeData const &  obj 
)
inline
template<typename T >
std::set< T > core::chemical::gasteiger::parse_enum_set ( std::string  in)
void core::chemical::gasteiger::safe_read ( std::istream &  in,
core::Size val 
)
inline
void core::chemical::gasteiger::safe_read ( std::istream &  in,
core::Real val 
)
inline
void core::chemical::gasteiger::safe_write ( std::ostream &  out,
core::Size const &  val,
bool  sep = true 
)
inline
void core::chemical::gasteiger::safe_write ( std::ostream &  out,
core::Real const &  val,
bool  sep = true 
)
inline
static basic::Tracer core::chemical::gasteiger::tr ( "core.chemical.gasteiger.GasteigerAtomTypeSet"  )
static
static basic::Tracer core::chemical::gasteiger::TR ( "core.chemical.gasteiger.GasteigerAtomTyper"  )
static