Functions | |
double | ToCelcius (double temperature) |
Convert from Munits temperature to Celcius. | |
double | ToKelvin (double temperature) |
Convert from Munits temperature to Kelvin. | |
double | ToFahrenheit (double temperature) |
Convert from Munits temperature to Fahrenheit. | |
double | FromCelcius (double degrees_celcius) |
Convert from Celcius temperature to Munits. | |
double | FromKelvin (double degrees_kelvin) |
Convert from Kelvin temperature to Munits. | |
double | FromFahrenheit (double degrees_fahrenheit) |
Convert from Fahrenheit temperature to Munits. | |
Variables | |
const Char_t *const | base_length_name = "meter" |
const Double_t | meter = 1. |
const Double_t | meter2 = meter*meter |
const Double_t | meter3 = meter*meter*meter |
const Double_t | millimeter = 0.001*meter |
const Double_t | millimeter2 = millimeter*millimeter |
const Double_t | millimeter3 = millimeter*millimeter*millimeter |
const Double_t | centimeter = 10.*millimeter |
const Double_t | centimeter2 = centimeter*centimeter |
const Double_t | centimeter3 = centimeter*centimeter*centimeter |
const Double_t | kilometer = 1000.*meter |
const Double_t | kilometer2 = kilometer*kilometer |
const Double_t | kilometer3 = kilometer*kilometer*kilometer |
const Double_t | micrometer = 1.e-6 *meter |
const Double_t | nanometer = 1.e-9 *meter |
const Double_t | angstrom = 1.e-10*meter |
const Double_t | fermi = 1.e-15*meter |
const Double_t | inch = 2.54*centimeter |
const Double_t | mil = 0.001*inch |
const Double_t | foot = 12*inch |
const Double_t | barn = 1.e-28*meter2 |
const Double_t | millibarn = 1.e-3 *barn |
const Double_t | microbarn = 1.e-6 *barn |
const Double_t | nanobarn = 1.e-9 *barn |
const Double_t | picobarn = 1.e-12*barn |
const Double_t | nm = nanometer |
const Double_t | micron = micrometer |
const Double_t | mm = millimeter |
const Double_t | mm2 = millimeter2 |
const Double_t | mm3 = millimeter3 |
const Double_t | cm = centimeter |
const Double_t | cm2 = centimeter2 |
const Double_t | cm3 = centimeter3 |
const Double_t | m = meter |
const Double_t | m2 = meter2 |
const Double_t | m3 = meter3 |
const Double_t | km = kilometer |
const Double_t | km2 = kilometer2 |
const Double_t | km3 = kilometer3 |
const Double_t | radian = 1. |
const Double_t | milliradian = 1.e-3*radian |
const Double_t | degree = (3.14159265358979323846/180.0)*radian |
const Double_t | steradian = 1. |
const Double_t | rad = radian |
const Double_t | mrad = milliradian |
const Double_t | sr = steradian |
const Double_t | deg = degree |
const Char_t *const | base_time_name = "second" |
const Double_t | second = 1. |
const Double_t | nanosecond = 1.e-9 *second |
const Double_t | millisecond = 1.e-3 *second |
const Double_t | microsecond = 1.e-6 *second |
const Double_t | picosecond = 1.e-12*second |
const Double_t | hertz = 1./second |
const Double_t | kilohertz = 1.e+3*hertz |
const Double_t | megahertz = 1.e+6*hertz |
const Double_t | minute = 60*second |
const Double_t | hour = 60*minute |
const Double_t | day = 24*hour |
const Double_t | year = 365.2422*day |
const Double_t | snowmass_year = 1.0E7*second |
const Double_t | ns = nanosecond |
const Double_t | s = second |
const Double_t | ms = millisecond |
const Char_t *const | base_mass_name = "kilogram" |
const Double_t | kilogram = 1. |
const Double_t | gram = 1.e-3*kilogram |
const Double_t | milligram = 1.e-3*gram |
const Double_t | tonne = 1000.*kilogram |
const Double_t | kilotonne = 1000.*tonne |
const Double_t | pound = 0.45359237*kilogram |
const Double_t | kg = kilogram |
const Double_t | g = gram |
const Double_t | mg = milligram |
const Double_t | kt = kilotonne |
const Char_t *const | base_current_name = "Ampere" |
const Double_t | ampere = 1. |
const Double_t | milliampere = 1.e-3*ampere |
const Double_t | microampere = 1.e-6*ampere |
const Double_t | nanoampere = 1.e-9*ampere |
const Char_t *const | base_charge_name = "Coulomb" |
const Double_t | coulomb = ampere*second |
const Double_t | e_SI = 1.602176462e-19 |
const Double_t | eplus = e_SI*coulomb |
const Double_t | femptocoloumb = coulomb*1e-15 |
const Double_t | picocoloumb = coulomb*1e-12 |
const Double_t | fC = femptocoloumb |
const Double_t | pC = picocoloumb |
const Double_t | c_light = 2.99792458e+8 * m/s |
const Double_t | c_squared = c_light * c_light |
const Double_t | c_2 = c_squared |
const Double_t | c_4 = c_2 * c_2 |
const Char_t *const | base_energy_name = "GeV" |
const Double_t | electronvolt = 1.e-9 |
const Double_t | kiloelectronvolt = 1.e-6 |
const Double_t | megaelectronvolt = 1.e-3 |
const Double_t | gigaelectronvolt = 1 |
const Double_t | teraelectronvolt = 1.e+3 |
const Double_t | petaelectronvolt = 1.e+6 |
const Double_t | joule = kg*m*m/(s*s) |
const Double_t | hep2baseEnergy = e_SI*1.e+9 |
const Double_t | hep2baseMomentum = hep2baseEnergy / c_light |
const Double_t | hep2baseMass = hep2baseEnergy / c_squared |
const Double_t | eV = electronvolt |
const Double_t | keV = kiloelectronvolt |
const Double_t | MeV = megaelectronvolt |
const Double_t | GeV = gigaelectronvolt |
const Double_t | TeV = teraelectronvolt |
const Double_t | PeV = petaelectronvolt |
const Double_t | watt = joule/second |
const Double_t | newton = joule/meter |
const Double_t | hep_pascal = newton/m2 |
const Double_t | bar = 100000*hep_pascal |
const Double_t | atmosphere = 101325*hep_pascal |
const Char_t *const | base_epotential_name = "volt" |
const Double_t | volt = kg*m*m/(ampere*s*s*s) |
const Double_t | kilovolt = 1.e+3*volt |
const Double_t | megavolt = 1.e+6*volt |
const Double_t | millivolt = 1.e-3*volt |
const Double_t | microvolt = 1.e-6*volt |
const Double_t | ohm = volt/ampere |
const Double_t | farad = coulomb/volt |
const Double_t | millifarad = 1.e-3*farad |
const Double_t | microfarad = 1.e-6*farad |
const Double_t | nanofarad = 1.e-9*farad |
const Double_t | picofarad = 1.e-12*farad |
const Double_t | weber = volt*second |
const Char_t *const | base_bfield_name = "Tesla" |
const Double_t | tesla = volt*second/meter2 |
const Double_t | gauss = 1.e-4*tesla |
const Double_t | kilogauss = 1.e-1*tesla |
const Double_t | henry = weber/ampere |
const Double_t | kelvin = 1. |
const Double_t | standard_temperature = 273.15 |
Triple point. | |
const Double_t | mole = 1. |
const Double_t | becquerel = 1./second |
const Double_t | curie = 3.7e+10 * becquerel |
const Double_t | gray = joule/kilogram |
const Double_t | candela = 1. |
const Double_t | lumen = candela*steradian |
const Double_t | lux = lumen/meter2 |
const Double_t | perCent = 0.01 |
const Double_t | perThousand = 0.001 |
const Double_t | perMillion = 0.000001 |
This system of units is a modified version of GEANT4's G4UnitsTest (which is itself a modified version of SystemOfUnits.h)
The basic units are those of the International System:
meter second kilogram ampere degree kelvin the amount of substance (mole) luminous intensity (candela) radian steradian
The SI numerical value of the positron charge is defined here, as it is needed for conversion factor : positron charge = e_SI (coulomb)
But, you shouldn't care what the basic MINOS units are. Instead learn these rules to deal with values that have units:
0) All variables are assumed hold values with Munits already applied. NEVER multiply a variable by an Munit.
1) To store or pass a literal value, ALWAYS multiply by an Munit:
double energy = 1.0*Munits::GeV; obj.SetTimeCut(10.0*Munits:ns); root [1] .x mymacro.C(731*Munits:km)
2) To express a value with a given unit, divide by an Munit. NEVER store the result.
void print_energy(double energy) { cout << "The energy is " << energy/Munits::GeV << " GeV\n"; } //... print_energy(1200*Munits::MeV);
|
Convert from Celcius temperature to Munits.
Definition at line 19 of file Munits.cxx. Referenced by FromFahrenheit().
00020 {
00021 return degrees_celcius + standard_temperature;
00022 }
|
|
Convert from Fahrenheit temperature to Munits.
Definition at line 29 of file Munits.cxx. References FromCelcius().
00030 { 00031 return FromCelcius(5.0/9.0*(degrees_fahrenheit-32)); 00032 } |
|
Convert from Kelvin temperature to Munits.
Definition at line 24 of file Munits.cxx.
00025 {
00026 return degrees_kelvin;
00027 }
|
|
Convert from Munits temperature to Celcius.
Definition at line 9 of file Munits.cxx. Referenced by BDSwicCalibrator::CalibrateOne(), LossModule::Fill(), and ToFahrenheit().
00010 {
00011 return temperature - standard_temperature;
00012 }
|
|
Convert from Munits temperature to Fahrenheit.
Definition at line 14 of file Munits.cxx. References ToCelcius().
00015 { 00016 return Munits::ToCelcius(temperature)*9.0/5.0 + 32.0; 00017 } |
|
Convert from Munits temperature to Kelvin.
Definition at line 4 of file Munits.cxx.
00005 {
00006 return temperature;
00007 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Triple point.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|