votca
2024.2-dev
Loading...
Searching...
No Matches
tools
include
votca
tools
elements.h
Go to the documentation of this file.
1
/*
2
* Copyright 2009-2020 The VOTCA Development Team
3
* (http://www.votca.org)
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License")
6
*
7
* You may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
17
*
18
*/
19
20
#ifndef VOTCA_TOOLS_ELEMENTS_H
21
#define VOTCA_TOOLS_ELEMENTS_H
22
23
// Standard includes
24
#include <map>
25
#include <string>
26
27
// Local VOTCA includes
28
#include "
constants.h
"
29
30
namespace
votca
{
31
namespace
tools {
32
42
class
Elements
{
43
public
:
45
bool
isElement
(std::string name);
46
53
double
getVdWChelpG
(std::string name);
54
61
double
getVdWMK
(std::string name);
62
64
Index
getNucCrg
(std::string name);
65
68
Index
getEleNum
(std::string name);
69
71
double
getMass
(std::string name);
72
74
// All polarizabilities in nm**3
75
// Isotropic polarizability volume is evaluated from the tensor
76
// as (a_xx * a_yy * a_zz )^(1/3) for eigenvalues of the polarizability tensor
77
double
getPolarizability
(std::string name);
78
80
double
getCovRad
(std::string name, std::string unit);
81
84
std::string
getEleName
(
Index
elenum);
85
88
std::string
getEleShort
(std::string elefull);
89
91
bool
isEleShort
(std::string shortname);
92
94
bool
isEleFull
(std::string fullname);
95
96
bool
isMassAssociatedWithElement
(
double
mass,
double
tolerance);
97
101
std::string
getEleShortClosestInMass
(
double
mass,
double
tolerance);
102
105
std::string
getEleFull
(std::string eleshort);
106
107
private
:
108
// cache variables
109
bool
filled_VdWChelpG_
=
false
;
110
bool
filled_VdWMK_
=
false
;
111
bool
filled_NucCrg_
=
false
;
112
bool
filled_CovRad_
=
false
;
113
bool
filled_Mass_
=
false
;
114
bool
filled_EleNum_
=
false
;
115
bool
filled_EleName_
=
false
;
116
bool
filled_ElPolarizability_
=
false
;
117
bool
filled_EleShort_
=
false
;
118
bool
filled_EleFull_
=
false
;
119
120
std::map<std::string, double>
VdWChelpG_
;
121
std::map<std::string, double>
VdWMK_
;
122
std::map<std::string, Index>
NucCrg_
;
123
std::map<std::string, double>
CovRad_
;
124
std::map<std::string, double>
Mass_
;
125
std::map<std::string, Index>
EleNum_
;
126
std::map<Index, std::string>
EleName_
;
127
128
std::map<std::string, double>
ElPolarizability_
;
129
130
std::map<std::string, std::string>
EleShort_
;
131
std::map<std::string, std::string>
EleFull_
;
132
135
std::pair<std::string, double>
findShortNameOfElementClosestInMass
(
136
double
mass);
137
138
void
FillMass
();
139
void
FillVdWChelpG
();
140
void
FillNucCrg
();
141
void
FillCovRad
();
142
void
FillEleNum
();
143
void
FillEleName
();
144
void
FillEleShort
();
145
void
FillEleFull
();
146
void
FillVdWMK
();
147
void
FillPolarizability
();
148
};
149
}
// namespace tools
150
}
// namespace votca
151
152
#endif
// VOTCA_TOOLS_ELEMENTS_H
votca::tools::Elements
information about an element
Definition
elements.h:42
votca::tools::Elements::isEleFull
bool isEleFull(std::string fullname)
Is elefull recognized as an element name i.e. Carbon, HYDROGEN, suphur.
Definition
elements.cc:153
votca::tools::Elements::filled_VdWChelpG_
bool filled_VdWChelpG_
Definition
elements.h:109
votca::tools::Elements::filled_EleShort_
bool filled_EleShort_
Definition
elements.h:117
votca::tools::Elements::isMassAssociatedWithElement
bool isMassAssociatedWithElement(double mass, double tolerance)
Definition
elements.cc:170
votca::tools::Elements::filled_EleFull_
bool filled_EleFull_
Definition
elements.h:118
votca::tools::Elements::FillVdWMK
void FillVdWMK()
Definition
elements.cc:763
votca::tools::Elements::FillEleName
void FillEleName()
Definition
elements.cc:537
votca::tools::Elements::findShortNameOfElementClosestInMass
std::pair< std::string, double > findShortNameOfElementClosestInMass(double mass)
Definition
elements.cc:192
votca::tools::Elements::EleNum_
std::map< std::string, Index > EleNum_
Definition
elements.h:125
votca::tools::Elements::getPolarizability
double getPolarizability(std::string name)
Returns the atomic polarisability of atom.
Definition
elements.cc:97
votca::tools::Elements::filled_NucCrg_
bool filled_NucCrg_
Definition
elements.h:111
votca::tools::Elements::getEleShortClosestInMass
std::string getEleShortClosestInMass(double mass, double tolerance)
Definition
elements.cc:178
votca::tools::Elements::filled_ElPolarizability_
bool filled_ElPolarizability_
Definition
elements.h:116
votca::tools::Elements::getEleName
std::string getEleName(Index elenum)
Definition
elements.cc:129
votca::tools::Elements::getNucCrg
Index getNucCrg(std::string name)
Return the Nuclear charges of each atom. H - 1, He - 2, Na - 3 etc...
Definition
elements.cc:36
votca::tools::Elements::getVdWChelpG
double getVdWChelpG(std::string name)
Definition
elements.cc:75
votca::tools::Elements::FillEleFull
void FillEleFull()
Definition
elements.cc:688
votca::tools::Elements::FillEleNum
void FillEleNum()
Definition
elements.cc:462
votca::tools::Elements::EleShort_
std::map< std::string, std::string > EleShort_
Definition
elements.h:130
votca::tools::Elements::EleName_
std::map< Index, std::string > EleName_
Definition
elements.h:126
votca::tools::Elements::ElPolarizability_
std::map< std::string, double > ElPolarizability_
Definition
elements.h:128
votca::tools::Elements::FillMass
void FillMass()
Definition
elements.cc:209
votca::tools::Elements::getEleShort
std::string getEleShort(std::string elefull)
Definition
elements.cc:145
votca::tools::Elements::VdWMK_
std::map< std::string, double > VdWMK_
Definition
elements.h:121
votca::tools::Elements::getVdWMK
double getVdWMK(std::string name)
Definition
elements.cc:86
votca::tools::Elements::FillEleShort
void FillEleShort()
Definition
elements.cc:613
votca::tools::Elements::getEleFull
std::string getEleFull(std::string eleshort)
Definition
elements.cc:137
votca::tools::Elements::FillPolarizability
void FillPolarizability()
Definition
elements.cc:785
votca::tools::Elements::filled_CovRad_
bool filled_CovRad_
Definition
elements.h:112
votca::tools::Elements::Mass_
std::map< std::string, double > Mass_
Definition
elements.h:124
votca::tools::Elements::filled_VdWMK_
bool filled_VdWMK_
Definition
elements.h:110
votca::tools::Elements::VdWChelpG_
std::map< std::string, double > VdWChelpG_
Definition
elements.h:120
votca::tools::Elements::isEleShort
bool isEleShort(std::string shortname)
Is eleshort recognized an element symbol i.e. H, C, He, Ne etc.
Definition
elements.cc:162
votca::tools::Elements::getCovRad
double getCovRad(std::string name, std::string unit)
Returns the covalent Radii of the atom.
Definition
elements.cc:109
votca::tools::Elements::filled_EleName_
bool filled_EleName_
Definition
elements.h:115
votca::tools::Elements::CovRad_
std::map< std::string, double > CovRad_
Definition
elements.h:123
votca::tools::Elements::filled_Mass_
bool filled_Mass_
Definition
elements.h:113
votca::tools::Elements::FillVdWChelpG
void FillVdWChelpG()
Definition
elements.cc:284
votca::tools::Elements::getEleNum
Index getEleNum(std::string name)
Definition
elements.cc:49
votca::tools::Elements::getMass
double getMass(std::string name)
Returns the mass of each atom in a.u.
Definition
elements.cc:62
votca::tools::Elements::FillNucCrg
void FillNucCrg()
Definition
elements.cc:308
votca::tools::Elements::FillCovRad
void FillCovRad()
Definition
elements.cc:384
votca::tools::Elements::isElement
bool isElement(std::string name)
Determine if the name is a recognized element symbol or name.
Definition
elements.cc:32
votca::tools::Elements::EleFull_
std::map< std::string, std::string > EleFull_
Definition
elements.h:131
votca::tools::Elements::NucCrg_
std::map< std::string, Index > NucCrg_
Definition
elements.h:122
votca::tools::Elements::filled_EleNum_
bool filled_EleNum_
Definition
elements.h:114
constants.h
votca
base class for all analysis tools
Definition
basebead.h:33
votca::Index
Eigen::Index Index
Definition
types.h:26
Generated by
1.12.0