Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/defs.hpp

    r11e206 r88b400  
    88#define DEFS_HPP_
    99
    10 #define MYEPSILON 1e-13   //!< machine epsilon precision
    11 #define NDIM  3   //!< number of spatial dimensions
    12 #define MAX_ELEMENTS 128  //!< maximum number of elements for certain lookup tables
    13 #define AtomicLengthToAngstroem  0.52917721 //!< conversion factor from atomic length/bohrradius to angstroem
    14 #define AtomicEnergyToKelvin 315774.67  //!< conversion factor from atomic energy to kelvin via boltzmann factor
    15 #define KelvinToAtomicTemperature 3.1668152e-06    //!< conversion factor for Kelvin to atomic temperature (Hartree over k_B)
    16 #define KelvinToeV 8.6173422e-05                   //!< conversion factor for Kelvin to Ht (k_B * T = energy), thus Boltzmann constant in eV/K
    17 #define AtomicMassUnitsToeV 931494088.        //!< conversion factor for atomic weight in units to mass in eV
    18 #define AtomicMassUnitsToHt 34480864.        //!< conversion factor for atomic weight in units to mass in Ht (protonmass/electronmass * electron_mass_in_Ht
    19 #define ElectronMass_Ht 18778.865            //!< electron mass in Ht
    20 #define ElectronMass_eV 510998.903           //!< electron mass in eV
    21 #define Units2Electronmass (AtomicMassUnitsToeV/ElectronMass_eV) //!< atomic mass unit in eV/ electron mass in eV = 1 822.88863
    22 #define Atomictime2Femtoseconds 0.024188843     //!< Atomictime in fs
     10enum { NDIM = 3 };   //!< number of spatial dimensions
     11enum { MAX_ELEMENTS = 128}; //!< maximum number of elements for certain lookup tables
    2312
    24 #define VERSIONSTRING "v1.0"
     13extern "C" const double MYEPSILON;  //!< machine epsilon precision
     14extern "C" const double AtomicLengthToAngstroem; //!< conversion factor from atomic length/bohrradius to angstroem
     15extern "C" const double AtomicEnergyToKelvin;  //!< conversion factor from atomic energy to kelvin via boltzmann factor
     16extern "C" const double KelvinToAtomicTemperature;    //!< conversion factor for Kelvin to atomic temperature (Hartree over k_B)
     17extern "C" const double KelvinToeV;                   //!< conversion factor for Kelvin to Ht (k_B * T = energy), thus Boltzmann constant in eV/K
     18extern "C" const double AtomicMassUnitsToeV;        //!< conversion factor for atomic weight in units to mass in eV
     19extern "C" const double AtomicMassUnitsToHt;        //!< conversion factor for atomic weight in units to mass in Ht (protonmass/electronmass * electron_mass_in_Ht
     20extern "C" const double ElectronMass_Ht;            //!< electron mass in Ht
     21extern "C" const double ElectronMass_eV;           //!< electron mass in eV
     22extern "C" const double Units2Electronmass; //!< atomic mass unit in eV/ electron mass in eV = 1 822.88863
     23extern "C" const double Atomictime2Femtoseconds;     //!< Atomictime in fs
    2524
    26 #define LocalPath "./"
     25extern "C" const char* VERSIONSTRING;
     26
     27extern "C" const char* LocalPath;
    2728
    2829//enum BondOrderScheme { NoScheme, BottomUp, TopDown, ANOVA, Combined }; //!< Fragmentation scheme used in BOSS
     
    4849
    4950// maximum length of any char array
    50 #define MAXSTRINGSIZE 255
     51enum { MAXSTRINGSIZE = 255 };
    5152
    5253// various standard filenames
    53 #define DEFAULTCONFIG "main_pcp_linux"    //!< default filename of config file
    54 #define CONVEXENVELOPE "ConvexEnvelope.dat"    //!< default filename of convex envelope tecplot data file
    55 #define KEYSETFILE "KeySets.dat"    //!< default filename of BOSSANOVA key sets file
    56 #define ADJACENCYFILE "Adjacency.dat"    //!< default filename of BOSSANOVA adjacancy file
    57 #define TEFACTORSFILE "TE-Factors.dat"    //!< default filename of BOSSANOVA total energy factors file
    58 #define FORCESFILE "Forces-Factors.dat"    //!< default filename of BOSSANOVA force factors file
    59 #define HCORRECTIONSUFFIX "Hcorrection.dat"    //!< default filename of BOSSANOVA H correction file (unwanted saturation interaction)
    60 #define FITCONSTANTSUFFIX "FitConstant.dat"   //!< suffix of default filename of BOSSANOVA fit constants file (unwanted saturation interaction)
    61 #define SHIELDINGSUFFIX "sigma_all.csv"                //!< default filename of BOSSANOVA shieldings file
    62 #define SHIELDINGPASSUFFIX "sigma_all_PAS.csv"                 //!< default filename of BOSSANOVA shieldings PAS file
    63 #define ORDERATSITEFILE "OrderAtSite.dat"    //!< default filename of BOSSANOVA Bond Order at each atom file
    64 #define ENERGYPERFRAGMENT "EnergyPerFragment"    //!< default filename of BOSSANOVA Energy contribution Per Fragment file
    65 #define FRAGMENTPREFIX "BondFragment"    //!< default filename prefix of BOSSANOVA fragment config and directories
    66 #define STANDARDCONFIG "unknown.conf"    //!< default filename of standard config file
    67 #define STANDARDELEMENTSDB "elements.db"    //!< default filename of elements data base with masses, Z, VanDerWaals radii, ...
    68 #define STANDARDVALENCEDB "valence.db"    //!< default filename of valence number per element database
    69 #define STANDARDORBITALDB "orbitals.db"    //!< default filename of orbitals per element database
    70 #define STANDARDHBONDDISTANCEDB "Hbonddistance.db"    //!< default filename of typial bond distance to hydrogen database
    71 #define STANDARDHBONDANGLEDB "Hbondangle.db"    //!< default filename of typial bond angle to hydrogen database
     54extern "C" const char *DEFAULTCONFIG;    //!< default filename of config file
     55extern "C" const char *CONVEXENVELOPE;    //!< default filename of convex envelope tecplot data file
     56extern "C" const char *KEYSETFILE;    //!< default filename of BOSSANOVA key sets file
     57extern "C" const char *ADJACENCYFILE;    //!< default filename of BOSSANOVA adjacancy file
     58extern "C" const char *TEFACTORSFILE;    //!< default filename of BOSSANOVA total energy factors file
     59extern "C" const char *FORCESFILE;    //!< default filename of BOSSANOVA force factors file
     60extern "C" const char *HCORRECTIONSUFFIX;    //!< default filename of BOSSANOVA H correction file (unwanted saturation interaction)
     61extern "C" const char *FITCONSTANTSUFFIX;   //!< suffix of default filename of BOSSANOVA fit constants file (unwanted saturation interaction)
     62extern "C" const char *SHIELDINGSUFFIX;                //!< default filename of BOSSANOVA shieldings file
     63extern "C" const char *SHIELDINGPASSUFFIX;                 //!< default filename of BOSSANOVA shieldings PAS file
     64extern "C" const char *ORDERATSITEFILE;    //!< default filename of BOSSANOVA Bond Order at each atom file
     65extern "C" const char *ENERGYPERFRAGMENT;    //!< default filename of BOSSANOVA Energy contribution Per Fragment file
     66extern "C" const char *FRAGMENTPREFIX;    //!< default filename prefix of BOSSANOVA fragment config and directories
     67extern "C" const char *STANDARDCONFIG;    //!< default filename of standard config file
     68extern "C" const char *STANDARDELEMENTSDB;    //!< default filename of elements data base with masses, Z, VanDerWaals radii, ...
     69extern "C" const char *STANDARDVALENCEDB;    //!< default filename of valence number per element database
     70extern "C" const char *STANDARDORBITALDB;    //!< default filename of orbitals per element database
     71extern "C" const char *STANDARDHBONDDISTANCEDB;    //!< default filename of typial bond distance to hydrogen database
     72extern "C" const char *STANDARDHBONDANGLEDB;    //!< default filename of typial bond angle to hydrogen database
    7273
    7374// some values
    74 #define SOLVENTDENSITY_A 0.6022142
    75 #define SOLVENTDENSITY_a0 0.089238936
     75extern "C" const double SOLVENTDENSITY_A;
     76extern "C" const double SOLVENTDENSITY_a0;
    7677
    7778
    78 #define UPDATECOUNT 10  //!< update ten sites per BOSSANOVA interval
     79extern "C" const int UPDATECOUNT;  //!< update ten sites per BOSSANOVA interval
    7980
    80 #define STD_MENU_LENGTH 60
    81 #define STD_MENU_TITLE_SPACER '='
    82 #define STD_SEPERATOR_SPACER '-'
     81extern "C" const int STD_MENU_LENGTH;
     82extern "C" const char STD_MENU_TITLE_SPACER;
     83extern "C" const char STD_SEPERATOR_SPACER;
    8384
    84 #define MOLECUILDER_NAME "Molecuilder"
     85extern "C" const char *MOLECUILDER_NAME;
    8586
    8687const extern unsigned int MAX_POOL_FRAGMENTATION;
Note: See TracChangeset for help on using the changeset viewer.