Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

units.h

Go to the documentation of this file.
00001 // SuperMix version 1.0  C++ source file
00002 //
00003 // Copyright (c) 1999 California Institute of Technology.
00004 // All rights reserved.
00005 //
00006 // Redistribution and use in source and binary forms for noncommercial
00007 // purposes are permitted provided that the above copyright notice and
00008 // this paragraph are duplicated in all such forms and that any
00009 // documentation and other materials related to such distribution and
00010 // use acknowledge that the software was developed by California
00011 // Institute of Technology. Redistribution and/or use in source or
00012 // binary forms is not permitted for any commercial purpose. Use of
00013 // this software does not include a permitted use of the Institute's
00014 // name or trademark for any purpose.
00015 //
00016 // DISCLAIMER:
00017 // THIS SOFTWARE AND/OR RELATED MATERIALS ARE PROVIDED "AS-IS" WITHOUT
00018 // WARRANTY OF ANY KIND INCLUDING ANY WARRANTIES OF PERFORMANCE OR
00019 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE OR PURPOSE (AS SET
00020 // FORTH IN UCC 23212-2313) OR FOR ANY PURPOSE WHATSOEVER, FOR THE
00021 // LICENSED PRODUCT, HOWEVER USED.  IN NO EVENT SHALL CALTECH/JPL BE
00022 // LIABLE FOR ANY DAMAGES AND/OR COSTS, INCLUDING BUT NOT LIMITED TO
00023 // INCIDENTAL OR CONSEQUENTIAL DAMAGES OF ANY KIND, INCLUDING ECONOMIC
00024 // DAMAGE OR INJURY TO PROPERTY AND LOST PROFITS, REGARDLESS OF
00025 // WHETHER CALTECH/JPL SHALL BE ADVISED, HAVE REASON TO KNOW, OR IN
00026 // FACT SHALL KNOW OF THE POSSIBILITY.  THE USER BEARS ALL RISK
00027 // RELATING TO QUALITY AND PERFORMANCE OF THE SOFTWARE AND/OR RELATED
00028 // MATERIALS.
00029 //
00030 // ********************************************************************
00031 //
00032 // 5/14/01:  Converted comments to javadoc format.
00033 // 3/12/01:  Fixed name for conductance to "Siemens".
00034 // 8/19/98:  Added units for conductance.
00035 // 10/20/97: Added powers of 10, Meter; rewrote some definitions.
00036 // 9/19/97:  Added "electromagnetic properties" of the Vacuum 
00037 // 9/17/97:  Added eCharge
00038 // 9/7/97:   Added Joule, hPlanck, updated values of constants
00039 // 8/12/97:  Fixed definitions that used "Sec" vice "Second"
00040 // 8/7/97:   Added Capacitance and Inductance
00041 // 8/1/97:   Added Temperature, Boltzmann's Constant
00042 // 8/1/97:   Fully tested. Now includes global.h
00043 // 7/31/97:  First version. Compiles o.k., otherwise not tested.
00044 //
00045 // ********************************************************************
00046 
00249 #ifndef UNITS_H
00250 #define UNITS_H 1
00251 
00252 #include "global.h"
00253 
00254 const double  Kilo   = 1000;
00255 const double  Mega   = Kilo * Kilo;
00256 const double  Giga   = Kilo * Mega;
00257 const double  Tera   = Kilo * Giga;
00258 const double  Centi  = 0.01;
00259 const double  Milli  = 0.001;
00260 const double  Micro  = Milli * Milli;
00261 const double  Nano   = Milli * Micro;
00262 const double  Pico   = Milli * Nano;
00263 const double  Femto  = Milli * Pico;
00264 
00265 const double  Volt   = Kilo * mVolt;
00266 
00267 const double  mAmp   = mVolt / Ohm;
00268 const double  Amp    = Kilo * mAmp;
00269 
00270 const double  Mho    = 1 / Ohm;
00271 const double  Siemens  = Mho;
00272 const double  mSiemens = Milli * Siemens;
00273 
00274 const double  uWatt  = mAmp * mVolt;
00275 const double  Watt   = Mega * uWatt;
00276 
00277 const double  Hertz  = Nano * GHz;
00278 const double  MHz    = Milli * GHz;
00279 
00280 const double  nSec   = 1/GHz;  // so 1 nS is stored internally as (1/GHz)
00281 const double  Second = 1/Hertz; 
00282 
00283 const double  Joule  = Watt * Second;
00284 
00285 const double  Meter  = Mega * Micron;
00286 const double  Angstrom = (1.0e-10) * Meter;
00287 
00288 const double  Farad  = Second / Ohm;
00289 const double  fFarad = Femto * Farad;
00290 const double  pFarad = Pico * Farad;
00291 const double  Henry  = Second * Ohm;
00292 const double  nHenry = Nano * Henry;
00293 
00294 
00295 // Physical Constants, in terms of the Master Units:
00296 
00303 const double cLight = 299792.458 * Kilo*Meter / Second;
00304 
00305 const double muVacuum = 4 * Pi * (1.0e-7) * Ohm /(Meter/Second);
00306 
00307 const double epsVacuum = 1/(muVacuum * cLight * cLight);
00308 
00309 const double ZVacuum = muVacuum * cLight;
00310 
00317 const double VoltToFreq = 241.798836 * GHz / mVolt;
00318 
00332 const double BoltzK = (1.380658e-23) * Watt / (Hertz * Kelvin);
00333 
00335 const double hPlanck = (6.6260755e-34) * Joule * Second;
00336 
00338 const double eCharge = (1.60217733e-19) * Amp * Second;
00339 
00340 #endif /* UNITS_H */

Please direct comments and corrections to supermix@submm.caltech.edu
Go to the supermix home page
Generated by doxygen1.2.7