Main Page | Class Hierarchy | Class List | File List

ElectricCharge.cc

Go to the documentation of this file.
00001 
00005 /* Copyright (C) 2002 - 2005, 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 _ElectricCharge_cc
00026 #define _ElectricCharge_cc
00027 
00028 #include "Quantity/Variable.h"
00029 
00030 #include "PhysicalQuantities/ElectricCharge.h"
00031 
00032 namespace quantity {
00033   namespace electricCharge {
00034 
00035 /* definition of ElectricCharge units */
00036 /* the Coulomb and prefixed Coulombs */
00037 
00038 template<> const std::string Coulombs::Basename = "coulomb";
00039 template<> const std::string Coulombs::Basesymbol = "C";
00040 template<> const bool Coulombs::SI = true;
00041 
00042 /* the Franklin */
00043 
00044 template<> const std::string Franklin::Namestring  = "franklin";
00045 template<> const std::string Franklin::Symbolstring = "Fr";
00046 template<> const bool Franklin::SI = false;
00047 
00048 /* the emu charge unit */
00049 
00050 template<> const std::string Emu::Namestring  = "emu";
00051 template<> const std::string Emu::Symbolstring = "";
00052 template<> const bool Emu::SI = false;
00053 
00054 /* the proton charge unit */
00055 
00056 template<> const std::string ProtonCharge::Namestring = "proton_charge";
00057 template<> const std::string ProtonCharge::Symbolstring = "e";
00058 template<> const bool ProtonCharge::SI = false;
00059 
00060 template<> const double Standard<Coulombs>::ratio = 1.0;
00061 template<> const bool Standard<Coulombs>::exact = true;
00062 
00063 template<> const double Standard<Franklin>::ratio = 3.33564e-10;
00064 template<> const bool Standard<Franklin>::exact  = false;
00065 
00066 template<> const double Standard<Emu>::ratio = 10.0;
00067 template<> const bool Standard<Emu>::exact = true;
00068 
00069 template<> const double Standard<ProtonCharge>::ratio = 1.60218e-19;
00070 template<> const bool Standard<ProtonCharge>::exact = false;
00071 
00072   }
00073 
00074 template<>
00075     const std::string Name<electricCharge::Quantity>::String = "charge";
00076 template<>
00077        const std::string Symbol<electricCharge::Quantity>::String = "Q";
00078 
00079 }
00080 
00081 #endif /* _ElectricCharge_cc */

Generated on Mon Feb 12 18:48:49 2007 for PhysicalQuantities by doxygen 1.3.6