The Units namespace contains the declaration of a number of classes for variables with dimension. More...
Typedefs | |
template<long int L, long int E, long int Q, long int DL = 1, long int DE = 1, long int DQ = 1> | |
using | Qty = ThePEG::Qty< std::ratio< L, DL >, std::ratio< E, DE >, std::ratio< Q, DQ > > |
adapter for the old style of naming quantities | |
typedef Qty< 0, 1, 0 > | Energy |
Energy. More... | |
typedef Energy | Mass |
Mass has the same unit as Energy <=> c == 1. More... | |
typedef Qty< 1, 0, 0 > | Length |
Length. More... | |
typedef Length | Time |
Time has the same unit as Length. More... | |
typedef Qty<-1, 0, 0 > | InvLength |
Inverse Length. More... | |
typedef double | Velocity |
Velocities are dimensionless fractions of c. More... | |
typedef Qty< 0, 0, 1 > | Charge |
Charge. More... | |
typedef Qty< 1, 1, 0 > | AngularMomentum |
Angular momentum. More... | |
typedef Qty<-1, 1, 0 > | Tension |
Tension. More... | |
typedef Qty< 2, 0, 0 > | Area |
Area will be assumed to be Length . More... | |
typedef Qty<-2, 0, 0 > | InvArea |
Inverse Area. More... | |
typedef Area | CrossSection |
Cross section is an area. More... | |
typedef Qty< 2, 2, 0 > | Energy2XSec |
CrossSection*Energy2. More... | |
typedef Qty< 2,-2, 0 > | DiffXSec |
CrossSection/Energy2. More... | |
typedef Qty< 2,-4, 0 > | Diff2XSec |
CrossSection/Energy4. More... | |
typedef Qty< 2,-6, 0 > | Diff3XSec |
CrossSection/Energy6. | |
typedef Energy2 | Scale |
Scale is the same as a squared energy. More... | |
typedef ThreeVector< Length > | Point |
A point in three-dimensional euclidean space. More... | |
typedef ThreeVector< Length > | Distance |
A distance in three-dimensional euclidean space. More... | |
typedef ThreeVector< double > | Axis |
A direction in three-dimensional euclidean space. More... | |
typedef ThreeVector< Energy > | Momentum3 |
A momentum in three-dimensional euclidean space. More... | |
typedef ThreeVector< double > | Boost |
A three-dimensional boost vector. More... | |
typedef LorentzVector< Length > | LorentzDistance |
A distance in four-dimensional space-time. More... | |
typedef Lorentz5Vector< Length > | Lorentz5Distance |
A distance in four-dimensional space-time with an explicit invariant time component. More... | |
typedef LorentzVector< Length > | LorentzPoint |
A point in four-dimensional space-time. More... | |
typedef LorentzVector< Energy > | LorentzMomentum |
A momentum in four-dimensional space-time. More... | |
typedef Lorentz5Vector< Energy > | Lorentz5Momentum |
A momentum in four-dimensional space-time with an explicit invariant mass component. More... | |
typedef Transverse< Energy > | TransverseMomentum |
Transverse components of a momentum. More... | |
Higher powers of energy. | |
Even higher powers can be created with similar typedefs. | |
typedef Qty< 0, 2, 0 > | Energy2 |
typedef Qty< 0, 3, 0 > | Energy3 |
typedef Qty< 0, 4, 0 > | Energy4 |
typedef Qty< 0, 5, 0 > | Energy5 |
typedef Qty< 0, 6, 0 > | Energy6 |
typedef Qty< 0, 7, 0 > | Energy7 |
typedef Qty< 0, 8, 0 > | Energy8 |
typedef Qty< 0, 9, 0 > | Energy9 |
typedef Qty< 0, 10, 0 > | Energy10 |
typedef Qty< 0, 11, 0 > | Energy11 |
typedef Qty< 0, 12, 0 > | Energy12 |
typedef Qty< 0, 1, 0, 1, 2, 1 > | SqrtEnergy |
typedef Qty< 0,-1, 0, 1, 2, 1 > | InvSqrtEnergy |
typedef Qty< 0, -1, 0 > | InvEnergy |
typedef Qty< 0, -2, 0 > | InvEnergy2 |
typedef Qty< 0, -3, 0 > | InvEnergy3 |
typedef Qty< 0, -4, 0 > | InvEnergy4 |
typedef Qty< 0, -5, 0 > | InvEnergy5 |
typedef Qty< 0, -6, 0 > | InvEnergy6 |
typedef Qty< 0, -7, 0 > | InvEnergy7 |
typedef Qty< 0, -8, 0 > | InvEnergy8 |
typedef Qty< 0, -9, 0 > | InvEnergy9 |
typedef Qty< 0,-10, 0 > | InvEnergy10 |
typedef Qty< 0,-11, 0 > | InvEnergy11 |
typedef Qty< 0,-12, 0 > | InvEnergy12 |
Variables | |
constexpr Qty< 1, 1, 0 > | hbarc = 197.326968e-15 * MeV * meter |
Planck's constant times c (PDG 2006 value 197.326968(17) MeV fm) | |
constexpr Qty< 1, 1, 0 > | hbar_Planck = hbarc / 1.0 |
Planck's constant (PDG 2006 value 197.326968(17) MeV fm) | |
Pre-defined basic units. | |
constexpr Length | meter = 1.0e+3_mm |
constexpr Length | millimeter = 1_mm |
constexpr Length | mm = 1_mm |
constexpr Length | centimeter = 10_mm |
constexpr Length | micrometer = 1.0e-3_mm |
constexpr Length | nanometer = 1.0e-6_mm |
constexpr Length | picometer = 1.0e-9_mm |
constexpr Length | femtometer = 1.0e-12_mm |
constexpr Energy | keV = 1.0e-3_MeV |
constexpr Energy | MeV = 1_MeV |
constexpr Energy | GeV = 1_GeV |
constexpr Energy | TeV = 1_TeV |
constexpr Energy2 | MeV2 = 1_MeV2 |
constexpr Energy2 | GeV2 = 1_GeV2 |
constexpr InvEnergy | InvGeV = 1/GeV |
constexpr Area | femtobarn = 1.0e-03_pb |
constexpr Area | picobarn = 1_pb |
constexpr Area | nanobarn = 1.0e+03_pb |
constexpr Area | microbarn = 1.0e+06_pb |
constexpr Area | millibarn = 1.0e+09_pb |
constexpr Area | barn = 1.0e+12_pb |
constexpr Charge | eplus = Charge::baseunit() |
constexpr Length | operator"" _mm (long double x) |
constexpr Length | operator"" _mm (unsigned long long x) |
constexpr Energy | operator"" _MeV (long double x) |
constexpr Energy | operator"" _MeV (unsigned long long x) |
constexpr Energy | operator"" _GeV (long double x) |
constexpr Energy | operator"" _GeV (unsigned long long x) |
constexpr Energy | operator"" _TeV (long double x) |
constexpr Energy | operator"" _TeV (unsigned long long x) |
constexpr Energy2 | operator"" _MeV2 (long double x) |
constexpr Energy2 | operator"" _MeV2 (unsigned long long x) |
constexpr Energy2 | operator"" _GeV2 (long double x) |
constexpr Energy2 | operator"" _GeV2 (unsigned long long x) |
constexpr Area | operator"" _pb (long double x) |
constexpr Area | operator"" _pb (unsigned long long x) |
The Units namespace contains the declaration of a number of classes for variables with dimension.
Currently they are all typedefs of double, but in the future the SIUnits package will be used.
The file Utilities/UnitIO.h defines helper-classes and helper functions to read and write variables with dimensions. As an example, to read and write an energy variable e
in units of GeV, use: os << ounit(e, GeV)
and is >> iunit(e, GeV)
typedef Qty<1,1,0> ThePEG::Units::AngularMomentum |
Angular momentum.
Definition at line 63 of file Unitsystem.h.
typedef Qty<2,0,0> ThePEG::Units::Area |
Area will be assumed to be Length .
Definition at line 69 of file Unitsystem.h.
typedef ThreeVector<double> ThePEG::Units::Axis |
A direction in three-dimensional euclidean space.
Definition at line 133 of file Unitsystem.h.
typedef ThreeVector<double> ThePEG::Units::Boost |
A three-dimensional boost vector.
Definition at line 139 of file Unitsystem.h.
typedef Qty<0,0,1> ThePEG::Units::Charge |
Charge.
Definition at line 60 of file Unitsystem.h.
typedef Area ThePEG::Units::CrossSection |
Cross section is an area.
Definition at line 75 of file Unitsystem.h.
typedef Qty<2,-4,0> ThePEG::Units::Diff2XSec |
CrossSection/Energy4.
Definition at line 118 of file Unitsystem.h.
typedef Qty<2,-2,0> ThePEG::Units::DiffXSec |
CrossSection/Energy2.
Definition at line 115 of file Unitsystem.h.
typedef ThreeVector<Length> ThePEG::Units::Distance |
A distance in three-dimensional euclidean space.
Definition at line 130 of file Unitsystem.h.
typedef Qty<0,1,0> ThePEG::Units::Energy |
Energy.
Definition at line 42 of file Unitsystem.h.
typedef Qty<2,2,0> ThePEG::Units::Energy2XSec |
CrossSection*Energy2.
Definition at line 112 of file Unitsystem.h.
typedef Qty<-2,0,0> ThePEG::Units::InvArea |
Inverse Area.
Definition at line 72 of file Unitsystem.h.
typedef Qty<-1,0,0> ThePEG::Units::InvLength |
Inverse Length.
Definition at line 54 of file Unitsystem.h.
typedef Qty<1,0,0> ThePEG::Units::Length |
Length.
Definition at line 48 of file Unitsystem.h.
A distance in four-dimensional space-time with an explicit invariant time component.
Definition at line 146 of file Unitsystem.h.
A momentum in four-dimensional space-time with an explicit invariant mass component.
Definition at line 156 of file Unitsystem.h.
A distance in four-dimensional space-time.
Definition at line 142 of file Unitsystem.h.
A momentum in four-dimensional space-time.
Definition at line 152 of file Unitsystem.h.
A point in four-dimensional space-time.
Definition at line 149 of file Unitsystem.h.
typedef Energy ThePEG::Units::Mass |
Mass has the same unit as Energy <=> c == 1.
Definition at line 45 of file Unitsystem.h.
typedef ThreeVector<Energy> ThePEG::Units::Momentum3 |
A momentum in three-dimensional euclidean space.
Definition at line 136 of file Unitsystem.h.
typedef ThreeVector<Length> ThePEG::Units::Point |
A point in three-dimensional euclidean space.
Definition at line 127 of file Unitsystem.h.
typedef Energy2 ThePEG::Units::Scale |
Scale is the same as a squared energy.
Definition at line 124 of file Unitsystem.h.
typedef Qty<-1,1,0> ThePEG::Units::Tension |
Tension.
Definition at line 66 of file Unitsystem.h.
typedef Length ThePEG::Units::Time |
Transverse components of a momentum.
Definition at line 159 of file Unitsystem.h.
typedef double ThePEG::Units::Velocity |
Velocities are dimensionless fractions of c.
Definition at line 57 of file Unitsystem.h.