00001 00005 /* Copyright (C) 2002 - 2009, Bernd Speiser */ 00006 00007 /* This file is part of PhysicalQuantities. 00008 00009 PhysicalQuantities is free software; you can redistribute it and/or 00010 modify it under the terms of the GNU General Public License 00011 as published by the Free Software Foundation; either version 2 00012 of the License, or (at your option) any later version. 00013 00014 PhysicalQuantities is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 GNU General Public License for more details. 00018 00019 You should have received a copy of the GNU General Public License 00020 along with this program; if not, write to the Free Software 00021 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 00022 02111-1307, USA. 00023 */ 00024 00025 #ifndef _Energy_cc 00026 #define _Energy_cc 00027 00028 // Quantity includes 00029 #include "PhysicalQuantities/Energy.h" 00030 00031 namespace quantity { 00032 namespace energy { 00033 00034 /* definition of Energy units */ 00035 /* the Joule and prefixed Joules */ 00036 00037 template<> const std::string Joules::Basename = "joule"; 00038 template<> const std::string Joules::Basesymbol = "J"; 00039 template<> const bool Joules::SI = true; 00040 00041 /* the erg */ 00042 00043 template<> const std::string Erg::Namestring = "erg"; 00044 template<> const std::string Erg::Symbolstring = "erg"; 00045 template<> const bool Erg::SI = false; 00046 00047 /* the Hartree */ 00048 00049 template<> const std::string Hartree::Namestring = "hartree"; 00050 template<> const std::string Hartree::Symbolstring = "E_h"; 00051 template<> const bool Hartree::SI = false; 00052 00053 /* the Rydberg */ 00054 00055 template<> const std::string Rydberg::Namestring = "rydberg"; 00056 template<> const std::string Rydberg::Symbolstring = "Ry"; 00057 template<> const bool Rydberg::SI = false; 00058 00059 /* the electron volt */ 00060 00061 template<> const std::string ElectronVolts::Basename = "electronvolt"; 00062 template<> const std::string ElectronVolts::Basesymbol = "eV"; 00063 template<> const bool ElectronVolts::SI = false; 00064 00065 /* the thermochemical calory */ 00066 00067 template<> const std::string ThermochemicalCalory::Namestring 00068 = "thermochemical calory"; 00069 template<> const std::string ThermochemicalCalory::Symbolstring 00070 = "cal_th"; 00071 template<> const bool ThermochemicalCalory::SI = false; 00072 00073 /* the international calory */ 00074 00075 template<> const std::string InternationalCalory::Namestring 00076 = "international calory"; 00077 template<> const std::string InternationalCalory::Symbolstring 00078 = "cal_IT"; 00079 template<> const bool InternationalCalory::SI = false; 00080 00081 /* the 15 degree calory */ 00082 00083 template<> const std::string FifteenDegreeCalory::Namestring 00084 = "15degree calory"; 00085 template<> const std::string FifteenDegreeCalory::Symbolstring 00086 = "cal_15T"; 00087 template<> const bool FifteenDegreeCalory::SI = false; 00088 00089 /* the litre atmosphere */ 00090 00091 template<> const std::string LitreAtmosphere::Namestring 00092 = "litre atmosphere"; 00093 template<> const std::string LitreAtmosphere::Symbolstring = "l atm"; 00094 template<> const bool LitreAtmosphere::SI = false; 00095 00096 /* the british thermal unit */ 00097 00098 template<> const std::string BritishThermalUnit::Namestring 00099 = "British Thermal Unit"; 00100 template<> const std::string BritishThermalUnit::Symbolstring = "Btu"; 00101 template<> const bool BritishThermalUnit::SI = false; 00102 00103 } 00104 00105 const std::string QuantityTraits<energy::Class>::NameString = "energy"; 00106 const std::string QuantityTraits<energy::Class>::SymbolString = "E"; 00107 00108 } 00109 00110 #endif /* _Energy_cc */