votca 2024-dev
Loading...
Searching...
No Matches
constants.h
Go to the documentation of this file.
1/*
2 * Copyright 2009-2020 The VOTCA Development Team (http://www.votca.org)
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18#ifndef VOTCA_TOOLS_CONSTANTS_H
19#define VOTCA_TOOLS_CONSTANTS_H
20
21// Standard includes
22#include <cmath>
23
24// Third party includes
25#include <boost/math/constants/constants.hpp>
26
27// Local VOTCA includes
28#include "types.h"
29
30namespace votca {
31namespace tools {
32
33namespace conv {
34
35// mathematical constants
36const double Pi = boost::math::constants::pi<double>();
37
38// natural constants
39// Boltzmann Factor eV/K
40const double kB = 8.617332478E-5;
41// Planck's Constant eV*s
42const double hbar = 6.5821192815E-16;
43
44// length conversions
45// votca xtp-uses for any conversions the following scheme unitA2unitB
46const double bohr2nm = 0.052917721092;
47const double nm2bohr = 18.897259886;
48const double ang2bohr = 1.8897259886;
49const double bohr2ang = 1.0 / 1.8897259886;
50const double nm2ang = 10.0;
51const double ang2nm = 0.1;
52
53const double hrt2ev = 27.21138602;
54const double ev2hrt = 1.0 / 27.21138602;
55
56// 1 eV = 96.485 Kj/mol
57const double ev2kj_per_mol = 96.485;
58
59const double kcal2kj = 4.18679994;
60const double kj2kcal = 1 / kcal2kj;
61
62} // namespace conv
63
64namespace topology_constants {
65
67const std::string unassigned_element = "unassigned";
68
70const std::string unassigned_bead_type = "unassigned";
71
73const std::string unassigned_residue_type = "unassigned";
74
76const std::string unassigned_molecule_type = "unassigned";
77
80
83
84} // namespace topology_constants
85} // namespace tools
86} // namespace votca
87
88#endif // VOTCA_TOOLS_CONSTANTS_H
const double ev2hrt
Definition constants.h:54
const double hbar
Definition constants.h:42
const double kB
Definition constants.h:40
const double kcal2kj
Definition constants.h:59
const double bohr2nm
Definition constants.h:46
const double ang2bohr
Definition constants.h:48
const double ang2nm
Definition constants.h:51
const double hrt2ev
Definition constants.h:53
const double ev2kj_per_mol
Definition constants.h:57
const double kj2kcal
Definition constants.h:60
const double Pi
Definition constants.h:36
const double bohr2ang
Definition constants.h:49
const double nm2ang
Definition constants.h:50
const double nm2bohr
Definition constants.h:47
const std::string unassigned_element
Used to indicate that a valid element variable has not been assigned.
Definition constants.h:67
const Index unassigned_residue_id
Used to indicate a valid residue id has not been assigned.
Definition constants.h:79
const std::string unassigned_residue_type
Used to indicate that a valid residue type variable has not been assigned.
Definition constants.h:73
const Index unassigned_molecule_id
Used to indicate a valid molecule id has not been assigned.
Definition constants.h:82
const std::string unassigned_bead_type
Used to indicate that a valid bead type variable has not been assigned.
Definition constants.h:70
const std::string unassigned_molecule_type
Used to indicate that a valid molecule type variable has not been assigned.
Definition constants.h:76
base class for all analysis tools
Definition basebead.h:33
Eigen::Index Index
Definition types.h:26