Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members

FahrenheitTemperature.cc

Go to the documentation of this file.
00001 
00005 /* Copyright (C) 2004, 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 _FahrenheitTemperature_cc
00026 #define _FahrenheitTemperature_cc
00027 
00028 #include "Quantity/Variable.h"
00029 
00030 #include "PhysicalQuantities/FahrenheitTemperature.h"
00031 #include "PhysicalQuantities/ThermodynamicTemperature.h"
00032 #include "PhysicalQuantities/CelsiusTemperature.h"
00033 
00034 namespace Quantities {
00035   namespace FahrenheitTemperatureUnits {
00036 
00037 /* definition of FahrenheitTemperature units */
00038 /* the degree Fahrenheit */
00039 
00040 template<> const double DegreeFahrenheit::StandardRatio = 1.;
00041 template<> const std::string DegreeFahrenheit::Namestring 
00042                                                    = "degreefahrenheit";
00043 template<> const std::string DegreeFahrenheit::Symbolstring = "oF";
00044 template<> const bool DegreeFahrenheit::SI = false;
00045 template<> const bool DegreeFahrenheit::Exact = true;
00046 
00047   }
00048 
00049 template<> const std::string 
00050        Name<FahrenheitTemperatureQuantities>::String = "temperature";
00051 template<> const std::string 
00052          Symbol<FahrenheitTemperatureQuantities>::String = "Theta_F";
00053 
00055 
00057 template<>
00058   FahrenheitTemperature::Variable (const ThermodynamicTemperature &temp)
00059     : variable_value (Unit::Reverse 
00060                              ((9./5. * temp.value ()) - 459.67))
00061                                          {namestring = temp.name ();}
00062 
00064 
00066 template<>
00067   FahrenheitTemperature::Variable (const CelsiusTemperature &celsius)
00068     : variable_value (Unit::Reverse ((9./5. * celsius.value ()) + 32.))
00069                                          {namestring = celsius.name ();}
00070 
00071 }
00072 
00073 #endif /* _FahrenheitTemperature_cc */

Generated on Sun Jan 15 13:58:03 2006 for PhysicalQuantities by doxygen 1.3.6