Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
core::chemical::Element Class Reference

stores element properties More...

#include <Element.hh>

Inheritance diagram for core::chemical::Element:
Inheritance graph
[legend]

Public Types

enum  Properties { Mass, CovalentRadius, VDWaalsRadius, NumberOfProperties }
 enum properties for element types More...
 

Public Member Functions

 Element ()
 construct undefined element More...
 
 Element (const core::Size ATOMIC_NUMBER, const core::Size PERIOD, const core::Size MAIN_GROUP, std::string const &CHEMICAL_SYMBOL, std::string const &CHEMICAL_NAME, const core::Real MASS, const core::Real COVALENT_RADIUS, const core::Real VDW_RADIUS, ElectronConfiguration const &ELECTRON_CONFIGURATION)
 construct element from all its data More...
 
ElementOP Clone () const
 virtual copy constructor More...
 
void set_index (core::Size setting)
 
core::Size get_index () const
 Get the index of this element in the parent Element set Will be zero if it's not a member. More...
 
core::chemical::element::Elements element () const
 The element enumeration. More...
 
core::Size get_atomic_number () const
 atomic number More...
 
core::Size get_period () const
 
core::Size get_main_group () const
 
const std::string & get_chemical_symbol () const
 GetChemicalSymbol. More...
 
const std::string & get_chemical_name () const
 GetChemicalName. More...
 
core::Real get_property (const Element::Properties &PROPERTY) const
 element type property as core::Real More...
 
const ElectronConfigurationget_electron_configuration () const
 electron configuration More...
 
bool is_conjugatable () const
 tell whether this element type can participate in a conjugated system More...
 
Real weight () const
 Return the full name of the Element. More...
 
bool is_fake () const
 Return true unless the element actually exists in the periodic table. More...
 
std::istream & read (std::istream &ISTREAM)
 read from std::istream More...
 
std::ostream & write (std::ostream &OSTREAM) const
 write to std::ostream More...
 

Static Public Member Functions

static const std::string & get_property_name (const Properties &PROPERTY)
 element type property as string More...
 

Private Attributes

core::Size index_
 The index of this Element in the parent typeset. More...
 
core::chemical::element::Elements element_
 Element enum. More...
 
core::Size atomic_number_
 atomic number More...
 
core::Size period_
 Period. More...
 
core::Size main_group_
 Group # in the main group (1-8) such as transistion metals. More...
 
std::string chemical_symbol_
 ChemicalSymbol. More...
 
std::string chemical_name_
 ChemicalName. More...
 
ElectronConfiguration electron_configuration_
 electron configuration More...
 
utility::vector0< core::Realproperties_
 real-valued properties More...
 

Detailed Description

stores element properties

This is a low level helper class to store element properties

See also
example_chemistry_element_type_data.cpp
Author
meilerj, woetzen, mendenjl
Date
08/31/2005

Member Enumeration Documentation

enum properties for element types

Enumerator
Mass 

Mass.

CovalentRadius 

CovalentRadius.

VDWaalsRadius 

VdWaalsRadius.

NumberOfProperties 

Number of properties.

Constructor & Destructor Documentation

core::chemical::Element::Element ( )

construct undefined element

core::chemical::Element::Element ( const core::Size  ATOMIC_NUMBER,
const core::Size  PERIOD,
const core::Size  MAIN_GROUP,
std::string const &  CHEMICAL_SYMBOL,
std::string const &  CHEMICAL_NAME,
const core::Real  MASS,
const core::Real  COVALENT_RADIUS,
const core::Real  VDW_RADIUS,
ElectronConfiguration const &  ELECTRON_CONFIGURATION 
)

construct element from all its data

Parameters
ATOMIC_NUMBER- number in the PSE
PERIOD- in which period is the element
MAIN_GROUP- in which of the main groups does the element belong (0 for transition metals)
CHEMICAL_SYMBOL- one or two letters as in international PSE, first letter capital
CHEMICAL_NAME- full international name (first letter capital)
MASS- the atomic mass as a weighted avergage of all isotopes
COVALENT_RADIUS- radius of atom with electrons
VDW_RADIUS- vdw radius
ELECTRON_CONFIGURATION- the electron configuration

References core::chemical::element::elements_from_name().

Member Function Documentation

ElementOP core::chemical::Element::Clone ( ) const

virtual copy constructor

core::chemical::element::Elements core::chemical::Element::element ( ) const
inline

The element enumeration.

References element_.

core::Size core::chemical::Element::get_atomic_number ( ) const
inline

atomic number

Returns
atomic number

References atomic_number_.

const std::string& core::chemical::Element::get_chemical_name ( ) const
inline

GetChemicalName.

Returns
full chemical name

References chemical_name_.

Referenced by core::chemical::gasteiger::PossibleAtomTypesForAtom::FindPossibleAtomTypesForAtom().

const std::string& core::chemical::Element::get_chemical_symbol ( ) const
inline

GetChemicalSymbol.

Returns
chemical symbol one or two letters as AtomName

References chemical_symbol_.

Referenced by core::chemical::gasteiger::PossibleAtomTypesForAtom::FindPossibleAtomTypesForAtom().

const ElectronConfiguration& core::chemical::Element::get_electron_configuration ( ) const
inline

electron configuration

Returns
the ElectronConfiguration

References electron_configuration_.

core::Size core::chemical::Element::get_index ( ) const
inline

Get the index of this element in the parent Element set Will be zero if it's not a member.

References index_.

core::Size core::chemical::Element::get_main_group ( ) const
inline
Returns
main Group #

References main_group_.

core::Size core::chemical::Element::get_period ( ) const
inline
Returns
Period

References period_.

core::Real core::chemical::Element::get_property ( const Element::Properties PROPERTY) const
inline

element type property as core::Real

Parameters
PROPERTYthe property desired
Returns
the property as core::Real

References properties_.

const std::string & core::chemical::Element::get_property_name ( const Properties PROPERTY)
static

element type property as string

Parameters
PROPERTYthe property desired
Returns
the property as string
bool core::chemical::Element::is_conjugatable ( ) const
inline

tell whether this element type can participate in a conjugated system

Returns
true if this element can participate in a common conjugated system Specifically tests if the element has 1-4 valence electrons in P orbitals

References electron_configuration_, and core::chemical::ElectronConfiguration::valence_electrons_p().

bool core::chemical::Element::is_fake ( ) const
inline

Return true unless the element actually exists in the periodic table.

References atomic_number_.

std::istream & core::chemical::Element::read ( std::istream &  ISTREAM)
void core::chemical::Element::set_index ( core::Size  setting)
inline

References index_.

Real core::chemical::Element::weight ( ) const
inline

Return the full name of the Element.

This is legacy code from old element set

References Mass, and properties_.

std::ostream & core::chemical::Element::write ( std::ostream &  OSTREAM) const

write to std::ostream

Parameters
OSTREAMoutput stream
Returns
ostream which was written to
Parameters
OSTREAMoutput stream
INDENTnumber of indentations
Returns
ostream which was written to

References core::pose::motif::a(), atomic_number_, chemical_name_, chemical_symbol_, electron_configuration_, main_group_, NumberOfProperties, period_, properties_, and core::chemical::gasteiger::safe_write().

Referenced by core::chemical::operator<<().

Member Data Documentation

core::Size core::chemical::Element::atomic_number_
private

atomic number

Referenced by get_atomic_number(), is_fake(), read(), and write().

std::string core::chemical::Element::chemical_name_
private

ChemicalName.

Referenced by get_chemical_name(), read(), and write().

std::string core::chemical::Element::chemical_symbol_
private

ChemicalSymbol.

Referenced by get_chemical_symbol(), read(), and write().

ElectronConfiguration core::chemical::Element::electron_configuration_
private

electron configuration

Referenced by get_electron_configuration(), is_conjugatable(), read(), and write().

core::chemical::element::Elements core::chemical::Element::element_
private

Element enum.

Referenced by element(), and read().

core::Size core::chemical::Element::index_
private

The index of this Element in the parent typeset.

Referenced by get_index(), and set_index().

core::Size core::chemical::Element::main_group_
private

Group # in the main group (1-8) such as transistion metals.

Referenced by get_main_group(), read(), and write().

core::Size core::chemical::Element::period_
private

Period.

Referenced by get_period(), read(), and write().

utility::vector0< core::Real > core::chemical::Element::properties_
private

real-valued properties

Referenced by get_property(), read(), weight(), and write().


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