Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
core
chemical
Element.hh
Go to the documentation of this file.
1
// -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2
// vi: set ts=2 noet:
3
//
4
// (c) Copyright Rosetta Commons Member Institutions.
5
// (c) This file is part of the Rosetta software suite and is made available under license.
6
// (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7
// (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8
// (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9
10
/// @file core/chemical/Element.hh
11
/// @brief Molecular mechanics atom type class
12
/// @author P. Douglas Renfrew (renfrew@unc.edu)
13
14
15
#ifndef INCLUDED_core_chemical_Element_hh
16
#define INCLUDED_core_chemical_Element_hh
17
18
// Unit headers
19
#include <
core/chemical/Element.fwd.hh
>
20
21
// Project headers
22
#include <
core/types.hh
>
23
24
// C++ headers
25
#include <string>
26
27
namespace
core {
28
namespace
chemical {
29
30
/// @brief class to describe Elements
31
///
32
/// @details class to describe elements
33
/// Borrows heavily and functions similarly to the rosetta atom type class, AtomType
34
///
35
class
Element
36
{
37
38
public
:
39
40
/// @brief Construct a new Element with its name
41
Element
(
42
Size
const
z
,
43
std::string
const
&
symbol
,
44
std::string
const
&
name
,
45
Real
const
weight
,
46
Size
const
mass
47
):
48
z_
(z),
49
symbol_
(symbol),
50
name_
( name ),
51
weight_
( weight ),
52
mass_
( mass )
53
{}
54
/// @brief Return the atomic number
55
core::Size
z
()
const
{
return
z_
; }
56
/// @brief Return the element symbol
57
std::string
const
&
symbol
()
const
{
return
symbol_
; }
58
/// @brief Return the full name of the Element
59
std::string
const
&
name
()
const
{
return
name_
; }
60
/// @brief the weight of this element (an average of all isotopes)
61
Real
weight
()
const
{
return
weight_
; }
62
/// @brief The mass of the most common
63
core::Size
mass
()
const
{
return
mass_
; }
64
65
private
:
66
/// @brief #of protons+neutrons for most common isotope
67
Size
z_
;
68
69
/// @brief symbol of the element
70
std::string
const
symbol_
;
71
72
/// @brief name of the element
73
std::string
const
name_
;
74
75
/// @brief atomic weight (average weight of all isotopes)
76
Real
weight_
;
77
/// @brief #of protons+neutrons for most common isotope
78
Size
mass_
;
79
};
80
81
82
}
// chemical
83
}
// core
84
85
86
87
#endif // INCLUDED_core_chemical_Element_HH
Generated on Sat Jun 1 2013 11:31:35 for Rosetta 3.5 by
1.8.4