source: src/Helpers/defs.cpp@ e9f307

Candidate_v1.7.0 stable
Last change on this file since e9f307 was 4b2207, checked in by Frederik Heber <frederik.heber@…>, 4 years ago

FIX: SaveEnergiesAction did not use correct units.

  • temperature was off by about 1e-4 due to that.
  • kinetic energy lacked factor of 0.5.
  • Property mode set to 100644
File size: 5.5 KB
Line 
1/*
2 * Project: MoleCuilder
3 * Description: creates and alters molecular systems
4 * Copyright (C) 2010-2012 University of Bonn. All rights reserved.
5 *
6 *
7 * This file is part of MoleCuilder.
8 *
9 * MoleCuilder is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation, either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * MoleCuilder is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with MoleCuilder. If not, see <http://www.gnu.org/licenses/>.
21 */
22
23/*
24 * defs.cpp
25 *
26 * Created on: Aug 7, 2010
27 * Author: heber
28 */
29
30// include config.h
31#ifdef HAVE_CONFIG_H
32#include <config.h>
33#endif
34
35//#include "CodePatterns/MemDebug.hpp"
36
37#include "Helpers/defs.hpp"
38
39const double MYEPSILON=1e-13; //!< machine epsilon precision
40const double AtomicLengthToAngstroem = 0.529177249; //!< conversion factor from atomic length/bohrradius to angstroem
41const double AtomicEnergyToKelvin = 315774.67; //!< conversion factor from atomic energy to kelvin via boltzmann factor
42const double KelvinToAtomicTemperature = 3.1668152e-06; //!< conversion factor for Kelvin to atomic temperature (Hartree over k_B)
43const double KelvinToeV = 8.6173422e-05; //!< conversion factor for Kelvin to Ht (k_B * T = energy), thus Boltzmann constant in eV/K
44const double AtomicMassUnitsToeV = 931494088.; //!< conversion factor for atomic weight in units to mass in eV
45const double AtomicMassUnitsToHt = 34480864.; //!< conversion factor for atomic weight in units to mass in Ht (protonmass/electronmass * electron_mass_in_Ht
46const double ElectronMass_Ht = 18778.865; //!< electron mass in Ht
47const double ElectronMass_eV = 510998.903; //!< electron mass in eV
48const double Units2Electronmass = (AtomicMassUnitsToeV/ElectronMass_eV); //!< atomic mass unit in eV/ electron mass in eV = 1 822.88863
49const double Atomictime2Femtoseconds = 0.024188843; //!< Atomictime in fs
50const double AtomicMassUnitsAngstroemOverAtomictimeSquaredToHt = 0.00015361802; //!< atomicmassunit*(angstrom/atomictime)**2 in hartree
51const double AtomicMassUnitsAngstroemOverAtomictimeToAtomicMomentum = 0.012394274; //!< sqrt(atomicenergy/atomicmassunit*atomictime**2/angstrom**2)
52
53const char* VERSIONSTRING = "v1.0";
54
55const char* LocalPath="./";
56
57// various standard filenames
58const char *DEFAULTCONFIG = "main_pcp_linux"; //!< default filename of config file
59const char *CONVEXENVELOPE = "ConvexEnvelope.dat"; //!< default filename of convex envelope tecplot data file
60const char *KEYSETFILE = "KeySets.dat"; //!< default filename of BOSSANOVA key sets file
61const char *CYCLEKEYSETFILE = "Cycles.dat"; //!< default filename of BOSSANOVA adjacancy file
62const char *ADJACENCYFILE = "Adjacency.dat"; //!< default filename of BOSSANOVA adjacancy file
63const char *TEFACTORSFILE = "TE-Factors.dat"; //!< default filename of BOSSANOVA total energy factors file
64const char *FORCESFILE = "Forces-Factors.dat"; //!< default filename of BOSSANOVA force factors file
65const char *HCORRECTIONSUFFIX = "Hcorrection.dat"; //!< default filename of BOSSANOVA H correction file (unwanted saturation interaction)
66const char *FITCONSTANTSUFFIX = "FitConstant.dat"; //!< suffix of default filename of BOSSANOVA fit constants file (unwanted saturation interaction)
67const char *SHIELDINGSUFFIX = "sigma_all.csv"; //!< default filename of BOSSANOVA shieldings file
68const char *SHIELDINGPASSUFFIX = "sigma_all_PAS.csv"; //!< default filename of BOSSANOVA shieldings PAS file
69const char *ORDERATSITEFILE = "OrderAtSite.dat"; //!< default filename of BOSSANOVA Bond Order at each atom file
70const char *ENERGYPERFRAGMENT = "EnergyPerFragment"; //!< default filename of BOSSANOVA Energy contribution Per Fragment file
71const char *FRAGMENTPREFIX = "BondFragment"; //!< default filename prefix of BOSSANOVA fragment config and directories
72const char *STANDARDCONFIG = "unknown.conf"; //!< default filename of standard config file
73const char *STANDARDELEMENTSDB = "elements.db"; //!< default filename of elements data base with masses, Z, VanDerWaals radii, ...
74const char *STANDARDELECTRONEGATIVITYDB = "electronegativity.db"; //!< default filename of electronegativity per element number data base
75const char *STANDARDVALENCEDB = "valence.db"; //!< default filename of valence number per element database
76const char *STANDARDORBITALDB = "orbitals.db"; //!< default filename of orbitals per element database
77const char *STANDARDHBONDDISTANCEDB = "Hbonddistance.db"; //!< default filename of typial bond distance to hydrogen database
78const char *STANDARDHBONDANGLEDB = "Hbondangle.db"; //!< default filename of typial bond angle to hydrogen database
79const char *STANDARDCOLORDB = "color.db"; //!< default filename of typial bond angle to hydrogen database
80
81// some values
82const double SOLVENTDENSITY_A = 0.6022142;
83const double SOLVENTDENSITY_a0 = 0.089238936;
84
85
86const int UPDATECOUNT = 10; //!< update ten sites per BOSSANOVA interval
87
88const int STD_MENU_LENGTH = 60;
89const char STD_MENU_TITLE_SPACER = '=';
90const char STD_SEPERATOR_SPACER = '-';
91
92const char *MOLECUILDER_NAME = "Molecuilder";
Note: See TracBrowser for help on using the repository browser.