EGXPhys
EGXPhys Namespace Reference

Functions

template<typename T >
AbsoluteMagnitude (const T apparentMagnitude, const T distanceInparsecs)
 Calculates the absolute magnitude, \(M\), of a star from its apparent magnitude, \(m\), and the distance, \(d_{pc}\), in parsecs it is away.

\[M= m - 5 \left ( log_{10}(d_{pc}) - 1 \right )\]

. More...

 
template<typename T >
AbsoluteMagnitudeFromParsecs (const T apparentMagnitude, const T distanceInparsecs)
 Calculates the absolute magnitude, \(M\), of a star from its apparent magnitude, \(m\), and the distance, \(d_{pc}\), in parsecs it is away.

\[M= m - 5 \left ( log_{10}(d_{pc}) - 1 \right )\]

. More...

 
template<typename T >
AbsoluteMagnitudeFromParallax (const T apparentMagnitude, const T parallaxInArcSec)
 Calculates the absolute magnitude, \(M\), of a star from its apparent magnitude, \(m\), and the parallax, \(p\), in arc seconds.

\[M= m - 5 \left ( log_{10} \left ( \dfrac{1}{p} \right ) - 1 \right )\]

. More...

 
template<typename T >
AbsoluteMagnitudeFromAU (const T apparentMagnitude, const T distanceInAstronomicalUnits)
 Calculates the absolute magnitude, \(M\), of a star from its apparent magnitude, \(m\), and the distance, \(d_{AU}\), in astronomical units it is away.

\[M= m - 5 \left ( log_{10} \left ( \dfrac{\pi}{648000}d_{AU} \right ) - 1 \right )\]

. More...

 
template<typename T >
Apoapsis (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis of an orbiting body. More...
 
template<typename T >
Apocenter (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis of an orbiting body. More...
 
template<typename T >
Apofocus (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis of an orbiting body. More...
 
template<typename T >
Apogalacticon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around a galaxy. More...
 
template<typename T >
Apobothron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around a black hole. More...
 
template<typename T >
Aponigricon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around a black hole. More...
 
template<typename T >
Apastron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around a star. More...
 
template<typename T >
Aphelion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around the Sun. More...
 
template<typename T >
Apohermion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Mercury. More...
 
template<typename T >
Apocytherion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Venus. More...
 
template<typename T >
Apogee (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Earth. More...
 
template<typename T >
Apolune (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Moon. More...
 
template<typename T >
Apocynthion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Moon. More...
 
template<typename T >
Aposelene (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Moon. More...
 
template<typename T >
Apoareion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Mars. More...
 
template<typename T >
Apozene (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Jupiter. More...
 
template<typename T >
Apojove (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Jupiter. More...
 
template<typename T >
Apochron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Saturn. More...
 
template<typename T >
Apokrone (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Saturn. More...
 
template<typename T >
Aposaturnium (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Saturn. More...
 
template<typename T >
Apouranion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Uranus. More...
 
template<typename T >
Apoposeidon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Neptune. More...
 
template<typename T >
Apohadion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates apoapsis around Pluto. More...
 
template<typename T >
BVColorToTempreture (const T BV)
 Calculates the tempreture, \(T_{star}\), of a star in Kelvin from the B-V color index using Ballesteros' formula. This approximation assumes that stars are black bodies.

\[T_{star}=4600 \left ( \frac{1}{0.92 (B-V)+ 1.7} + \frac{1}{0.92 (B-V) + 0.62} \right )\]

. More...

 
template<typename T >
BVColorToTempretureBallesteros (const T BV)
 Calculates the tempreture, \(T_{star}\), of a star in Kelvin from the B-V color index using Ballesteros' formula. This approximation assumes that stars are black bodies.

\[T_{star}=4600 \left ( \frac{1}{0.92 (B-V)+ 1.7} + \frac{1}{0.92 (B-V) + 0.62} \right )\]

. More...

 
template<typename T >
BolometricCorrectionVisual (const T starEffectiveSurfaceTemperatureInK)
 Calculates the visual band bolometric correction, \(BC_{V}\), of a star using emperical data. The bolometric conversion is used to convert the absolute visual magnitude to the absolute bolometric magnitude.

\[ BC_{V}=a + b ( \log T_{eff}) + c ( \log T_{eff})^2 + ...\]

. More...

 
template<typename T >
CircumstellarHabitableZoneLimit (const T starLuminosityInW, const T stellarFluxEffective)
 Calculates the Circumstellar Habitable Zone Limits, \(d_{CHZL}\) of a star. Also known as Habitable Zone Limits. More...
 
template<typename T >
StellarFluxEffectiveSelsis (const T starEffectiveSurfaceTemperatureInK, const T sunEffectiveStellarFlux, const T aModelParameter, const T bModelParameter)
 Calculates the effective stellar flux, \((S_{eff})\) of a star using Selsis estimation. More...
 
template<typename T >
StellarFluxEffectiveUnderwood (const T starEffectiveSurfaceTemperatureInK, const T sunEffectiveStellarFlux, const T aModelParameter, const T bModelParameter)
 Calculates the effective stellar flux \((S_{eff})\) using Underwood estimation. More...
 
template<typename T >
CircumstellarHabitableZoneInnerBoundary (const T starEffectiveSurfaceTemperatureInK, const T starLuminosityInW)
 Calculates the inner boundary of the Habitable Zone of a solar system. More...
 
template<typename T >
CircumstellarHabitableZoneOuterBoundary (const T starEffectiveSurfaceTemperatureInK, const T starLuminosityInW)
 Calculates Circumstellar Habitable Zone Outer Boundary \((r_o)\) of a star. More...
 
template<typename T >
CircumstellarHabitableZoneDistance (const T distanceFromStar, const T CHZInnerBoundary, const T CHZOuterBoundary)
 Calculates Circumstellar Habitable Zone Distance \((CHZD)\) of a planet. Also known as Habitable Zone Distance. More...
 
template<typename T1 , typename T2 >
void ColorTemperatureToRGB (const T1 temperatureInK, T2 &R, T2 &G, T2 &B)
 Calculates the color RGB values from the color tempreture, \(T_{black}\), assuming the color was emitted via black body radiation. More...
 
template<typename T >
glm::vec3 ColorTemperatureToRGB (const T temperatureInK)
 Calculates the color RGB values from the color tempreture, \(T_{black}\), assuming the color was emitted via black body radiation. More...
 
template<typename T >
DeclinationToDegree (const T integerDegree, const T arcminute, const T arcsecond)
 Converts declination \((\alpha_{DE})\) from degrees \((DE_{deg})\), arcminutes \((DE_{arcmin})\) and arcseconds \((DE_{arcsec})\) to (decimal) degrees.

\[\alpha_{deg}=DE_{deg} + \frac{DE_{arcmin}}{60} + \frac{DE_{arcsec}}{3600} \]

See https://en.wikipedia.org/wiki/Declination, https://en.wikipedia.org/wiki/Geographic_coordinate_conversion and https://en.wikipedia.org/wiki/Minute_and_second_of_arc. More...

 
template<typename T >
void DegreeToDeclination (const T decimalDegree, T &integerDegree, T &arcminute, T &arcsecond)
 Converts an angle in (decimal) degree to declination in degrees \((DE_{deg})\), arcminutes \((DE_{arcmin})\) and arcseconds \((DE_{arcsec})\) (DMS). \({DD}^{\circ}{MM}'{SS.SS}''\) format.

\[DE_{deg}=trun(\alpha_{deg})\]

\[DE_{arcmin}=trun(60 * |\alpha_{deg} - degree|)\]

\[DE_{arcsec}=60 * ((60 * |\alpha_{deg} - degree|)-arcminute)\]

. More...

 
template<typename T >
DeclinationToRadian (const T integerDegree, const T arcminute, const T arcsecond)
 Converts declination \((\alpha_{DE})\) from degrees \((DE_{deg})\), arcminutes \((DE_{arcmin})\) and arcseconds \((DE_{arcsec})\) to radians.

\[\alpha_{rad}=\frac{\pi}{180}(DE_{deg} + \frac{DE_{arcmin}}{60} + \frac{DE_{arcsec}}{3600})\]

See https://en.wikipedia.org/wiki/Declination, https://en.wikipedia.org/wiki/Geographic_coordinate_conversion and https://en.wikipedia.org/wiki/Minute_and_second_of_arc. More...

 
template<typename T >
void RadianToDeclination (const T radian, T &integerDegree, T &arcminute, T &arcsecond)
 Converts an angle in radian to declination in degrees \((DE_{deg})\), arcminutes \((DE_{arcmin})\) and arcseconds \((DE_{arcsec})\) (DMS). \({DD}^{\circ}{MM}'{SS.SS}''\) format.

\[DE_{deg}=trun(\frac{180}{\pi}\alpha_{rad})\]

\[DE_{arcmin}=trun(60 * |\frac{180}{\pi}\alpha_{rad} - degree|)\]

\[DE_{arcsec}=60 * ((60 * |\frac{180}{\pi}\alpha_{rad} - degree|)-arcminute)\]

. More...

 
template<typename T >
EscapeVelocity (const T distanceFromCenterOfMassInm, const T massOfBodyInkg)
 Calculates the escape velocity, \(v_{e}\), the minimum speed needed for an object to escape from the gravitational influence of a massive body.

\[v_{e}=\sqrt{\frac{2 G M}{r}}\]

. More...

 
template<typename T >
HabitableZoneAtmosphere (const T planetMassInkg, const T planetMeanRadiusInm, const T planetEquilibriumTemperatureInK)
 Calculates the Habitable Zone Atmosphere metric, \(HZA\), of a planet. The Habitable Zone Atmosphere is a measure of the potential of an exoplanet to hold a habitable atmosphere.

\[ HZA= \dfrac{ 2\sqrt{ \dfrac{m_p}{m_{\oplus}} / \dfrac{r_p}{r_{\oplus}} } -v_{eH} - v_{eN} }{v_{eH} - v_{eN}} \]

\[ v_{eH}=\sqrt{ \dfrac{z T_{eq}}{ M_wN } } \]

\[ T_{eq}=\sqrt{ \dfrac{z T_{eq}}{ M_wH } } \]

. More...

 
template<typename T >
HabitableZoneComposition (const T planetMassInkg, const T planetMeanRadiusInm)
 Calculates the Habitable Zone Composition metric, \(HZC\), of a planet. The Habitable Zone Composition(HZC) measures how compatible for life is the bulk composition of an exoplanet within the habitable zone. It estimates both the iron and water content of the planet.

\[ HZC= \dfrac{ 2\dfrac{m_p}{m_{\oplus}} - r_w - r_i } { r_w - r_i } \]

\[ r_w= 4.43\ 10^{ -0.209396 + \dfrac{1}{3}\log \left ( \dfrac{m_p}{5.52 m_\oplus} \right ) - 0.0807 \left ( \dfrac{m_p}{5.52 m_\oplus} \right )^{0.375}} \]

\[ r_i= 2.52\ 10^{ -0.209490 + \dfrac{1}{3}\log \left ( \dfrac{m_p}{5.80 m_\oplus} \right ) - 0.0804 \left ( \dfrac{m_p}{5.80 m_\oplus} \right )^{0.394}} \]

. More...

 
template<typename T >
blackbodyLuminosity (const T &area, const T &tempreture)
 Calculates the luminosity in watts of a black body. More...
 
template<typename T >
radioLuminosity (const T &fluxDensity, const T &luminosityDistance, const T &redshift, const T &spectralIndex)
 Calculates the radio luminosity in W/Hz of a radio source. More...
 
template<typename T >
OrbitalPeriod (const T siderealDayIns, const T synodicDayIns)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the length of the celestial object's sidereal day, \(T_{Sidereal}\), and synodic day, \(T_{Synodic}\). The orbital period is the time needed for a celestial object to complete one orbit around another object.

\[ T_{Orbit}=\dfrac{T_{Synodic} * T_{Sidereal}}{T_{Synodic} + T_{Sidereal}}\]

. More...

 
template<typename T >
OrbitalPeriodSmallBody (const T semiMajorAxisInm, const T centralBodyMassInKg)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), and the central object's mass that the celestial object is orbiting around, \(M\). It is assumed that the central object's mass is much larger then the celestial objects mass. The orbital period is the time needed for a celestial object to complete one orbit around the central object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{GM}}\]

. More...

 
template<typename T >
OrbitalPeriodSmallBodyFromMass (const T semiMajorAxisInm, const T centralBodyMassInKg)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), and the central object's mass that the celestial object is orbiting around, \(M\). It is assumed that the central object's mass is much larger then the celestial objects mass. The orbital period is the time needed for a celestial object to complete one orbit around the central object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{GM}}\]

. More...

 
template<typename T >
OrbitalPeriodSmallBodyFromSGP (const T semiMajorAxisInm, const T centralBodyStandardGravitationalParameter)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), and the central object's standard gravitational parameter, \(\mu\). It is assumed that the central object's mass is much larger then the celestial objects mass. The orbital period is the time needed for a celestial object to complete one orbit around the central object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{\mu}}\]

. More...

 
template<typename T >
OrbitalPeriodTwoBody (const T semiMajorAxisInm, const T firstBodyMassInKg, const T secondBodyMassInKg)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), its mass, \(M_1\), and the mass of the second celestial object, \(M_2\). The orbital period is the time needed for a celestial object to complete one orbit around the second celestial object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{G(M_1 + M_2)}}\]

. More...

 
template<typename T >
OrbitalPeriodTwoBodyFromMass (const T semiMajorAxisInm, const T firstBodyMassInKg, const T secondBodyMassInKg)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), its mass, \(M_1\), and the mass of the second celestial object, \(M_2\). The orbital period is the time needed for a celestial object to complete one orbit around the second celestial object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{G(M_1 + M_2)}}\]

. More...

 
template<typename T >
OrbitalPeriodTwoBodyFromSGP (const T semiMajorAxisInm, const T firstBodyStandardGravitationalParameter, const T secondBodyStandardGravitationalParameter)
 Calculates the orbital period, \(T_{Orbit}\), of a celestial object in seconds from the semi-major axis of its orbit, \(a\), its standard gravitational parameter, \(\mu_1\), and the standard gravitational parameter of the second celestial object, \(\mu_2\). The orbital period is the time needed for a celestial object to complete one orbit around the second celestial object.

\[ T_{Orbit}=2\pi\sqrt{\dfrac{a^3}{\mu_1 + \mu_2}}\]

. More...

 
template<typename T >
ParallaxToParsec (const T parallaxInArcseconds)
 Calculates the distance, \(D\), of an object in parsecs from its observed parallax, \(p\), in arcseconds.

\[ D=\dfrac{1}{p}\]

. More...

 
template<typename T >
ParallaxToAstronomicalUnit (const T parallaxInArcseconds)
 Calculates the distance, \(D\), of an object in astronomical units from its observed parallax, \(p\), in arcseconds.

\[ D=\dfrac{648000}{\pi}\dfrac{1}{p}\]

. More...

 
template<typename T >
ParallaxToLightYear (const T parallaxInArcseconds)
 Calculates the distance, \(D\), of an object in light years from its observed parallax, \(p\), in arcseconds.

\[ D=\dfrac{149597870700 * 648000}{9460730472580800 \pi} \dfrac{1}{p}\]

. More...

 
template<typename T >
ParallaxToMeter (const T parallaxInArcseconds)
 Calculates the distance, \(D\), of an object in meters from its observed parallax, \(p\), in arcseconds.

\[ D=\dfrac{149597870700 * 648000}{\pi}\dfrac{1}{p}\]

. More...

 
template<typename T >
ParallaxToAU (const T parallaxInArcseconds)
 
template<typename T >
Periapsis (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis of an orbiting body. More...
 
template<typename T >
Pericenter (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis of an orbiting body. More...
 
template<typename T >
Perifocus (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis of an orbiting body. More...
 
template<typename T >
Perigalacticon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around a galaxy. More...
 
template<typename T >
Peribothron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around a black hole. More...
 
template<typename T >
Perinigricon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around a black hole. More...
 
template<typename T >
Periastron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around a star. More...
 
template<typename T >
Perihelion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around the Sun. More...
 
template<typename T >
Perihermion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Mercury. More...
 
template<typename T >
Pericytherion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Venus. More...
 
template<typename T >
Perigee (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Earth. More...
 
template<typename T >
Perilune (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Moon. More...
 
template<typename T >
Pericynthion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Moon. More...
 
template<typename T >
Periselene (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Moon. More...
 
template<typename T >
Periareion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Mars. More...
 
template<typename T >
Perizene (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Jupiter. More...
 
template<typename T >
Perijove (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Jupiter. More...
 
template<typename T >
Perichron (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Saturn. More...
 
template<typename T >
Perikrone (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Saturn. More...
 
template<typename T >
Perisaturnium (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Saturn. More...
 
template<typename T >
Periuranion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Uranus. More...
 
template<typename T >
Periposeidon (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Neptune. More...
 
template<typename T >
Perihadion (const T &orbitalEccentricity, const T &semiMajorAxisInm)
 Calculates periapsis around Pluto. More...
 
template<typename T >
PlanetaryEquilibriumTempreture (const T planetBondAlbedo, const T planetDistanceFromStarInm, const T starLuminosityInW, const T planetEmissivity=(T) 1.0)
 Calculates the planetary equilibrium tempreture, \(T_{eq}\) of a planet in kelvin. The planetary equilibrium tempreture is the theoretical temperature of a planet assuming it is a black body being heated only by its parent star.

\[ T_{eq}=\left ( \dfrac{L (1-A)}{16 \epsilon \sigma \pi D^2} \right )^{\dfrac{1}{4}} \]

. More...

 
template<typename T >
PlanetaryEquilibriumTempreture (const T planetBondAlbedo, const T planetDistanceFromStarInm, const T starEffectiveSurfaceTemperatureInK, const T starRadiusInm, const T planetEmissivity=(T) 1.0)
 Calculates the planetary equilibrium tempreture, \(T_{eq}\) of a planet in kelvin. The planetary equilibrium tempreture is the theoretical temperature of a planet assuming it is a black body being heated only by its parent star.

\[ T_{eq}=T_{eff} \left ( \dfrac{(1-A)}{\epsilon} \right )^{\dfrac{1}{4}} \sqrt{\dfrac{R}{2 D}} \]

. More...

 
template<typename T >
PlanetaryMass (const T &planetMass, const T &referenceMass)
 Calculates the planetary mass \((M)\) of a planet when comparing it to the mass of a reference planet \((m_{ref})\).

\[M=\frac{m_{planet}}{m_{ref}}\]

See https://en.wikipedia.org/wiki/Planetary_mass. More...

 
template<typename T >
PlanetaryEarthMass (const T &planetMass)
 Calculates the planetary mass \((M)\) of a planet when comparing it to the mass of Earth \((M_\oplus)\). Also known as Earth Mass.

\[M=\frac{m_{planet}}{M_\oplus}\]

See https://en.wikipedia.org/wiki/Earth_mass. More...

 
template<typename T >
PlanetaryLunarMass (const T &planetMass)
 Calculates the planetary mass \((M)\) of a planet when comparing it to the mass of the Moon \((M_L)\). Also known as Lunar Mass.

\[M=\frac{m_{planet}}{M_L}\]

See https://en.wikipedia.org/wiki/Planetary_mass. More...

 
template<typename T >
PlanetaryJupiterMass (const T &planetMass)
 Calculates the planetary mass \((M)\) of a planet when comparing it to the mass of Jupiter \((M_J)\). Also known as Jupiter Mass.

\[M=\frac{m_{planet}}{M_J}\]

See https://en.wikipedia.org/wiki/Jupiter_mass. More...

 
template<typename T >
PlanetaryJovianMass (const T &planetMass)
 Calculates the planetary mass \((M)\) of a planet when comparing it to the mass of Jupiter \((M_J)\). Also known as Jovian Mass.

\[M=\frac{m_{planet}}{M_J}\]

See https://en.wikipedia.org/wiki/Jupiter_mass. More...

 
template<typename T >
PlanetSimilarityIndex (const T &planetMeanRadius, const T &referenceMeanRadius, const T &planetBulkDensity, const T &referenceBulkDensity, const T &planetEscapeVelocity, const T &referenceEscapeVelocity, const T &planetSurfaceTemperature, const T &referenceSurfaceTemperature)
 Calculates Planet Similarity Index \((PSI)\) of a planet when comparing it to a reference planet. More...
 
template<typename T >
EarthSimilarityIndex (const T &planetMeanRadius, const T &planetBulkDensity, const T &planetEscapeVelocity, const T &planetSurfaceTemperature)
 Calculates Earth Similarity Index \((ESI)\) of a planet. More...
 
template<typename T >
PlanetSimilarityIndexInterior (const T &planetMeanRadius, const T &referenceMeanRadius, const T &planetBulkDensity, const T &referenceBulkDensity)
 Calculates Interior Planet Similarity Index \((PSI_I)\) of a planet when comparing it to a reference planet. More...
 
template<typename T >
EarthSimilarityIndexInterior (const T &planetMeanRadius, const T &planetBulkDensity)
 Calculates Interior Earth Similarity Index \((ESI_I)\) of a planet. More...
 
template<typename T >
PlanetSimilarityIndexSurface (const T &planetEscapeVelocity, const T &referenceEscapeVelocity, const T &planetSurfaceTemperature, const T &referenceSurfaceTemperature)
 Calculates Surface Planet Similarity Index \((PSI_S)\) of a planet when comparing it to a reference planet. More...
 
template<typename T >
EarthSimilarityIndexSurface (const T &planetEscapeVelocity, const T &planetSurfaceTemperature)
 Calculates Surface Earth Similarity Index \((ESI_S)\) of a planet. More...
 
template<typename T >
RightAscensionToDegree (const T hour, const T minute, const T second)
 Converts right ascensions \((\alpha_{RA})\) from hours \((RA_h)\), minutes \((RA_m)\) and seconds \((RA_s)\) to degrees.

\[\alpha_{deg}=(15 RA_h + \frac{RA_m}{4} + \frac{RA_s}{240})\]

. More...

 
template<typename T >
RightAscensionToRadian (const T hour, const T minute, const T second)
 Converts right ascensions \((\alpha_{RA})\) from hours \((RA_h)\), minutes \((RA_m)\) and seconds \((RA_s)\) to radians.

\[\alpha_{rad}=\frac{\pi}{180.0}(15 RA_h + \frac{RA_m}{4} + \frac{RA_s}{240})\]

See http://en.wikipedia.org/wiki/Right_ascension, http://en.wikipedia.org/wiki/Sidereal_hour_angle. More...

 
template<typename T >
void DegreeToRightAscension (const T decimalDegree, T &hour, T &minute, T &second)
 Converts an angle in (decimal) degree to hours minutes seconds (HMS). \({HH}^{h}{MM}^{m}{SS.SS}^{s}\) format.

\[hour=trun(\frac{\alpha_{deg}}{15})\]

\[minute=trun(60 * |\frac{\alpha_{deg}}{15} - hour|)\]

\[second=60 * ((60 * |\frac{\alpha_{deg}}{15} - hour|)-minute)\]

. More...

 
template<typename T >
void RadianToRightAscension (const T radian, T &hour, T &minute, T &second)
 Converts an angle in radian to hours minutes seconds (HMS). \({HH}^h{MM}^m{SS.SS}^s\) format. More...
 
template<typename T >
RotationalAngularVelocity (const T siderealDayIns)
 Finds the rotational angular velocity, \(\omega\), in radians per second of a celestial object from its sidereal rotation period \(T_{Sidereal}\):

\[ \omega = \dfrac{2\pi}{T} \]

. More...

 
template<typename T >
RotationalFlattening (const T eccentricity)
 Finds the flattening (oblateness), \(f\), of a planet with eccentricity \(e\):

\[ f = 1 - \sqrt{1-e^2} \]

. More...

 
template<typename T >
RotationalFlattening (const T equatorialRadius, const T polarRadius)
 Finds the flattening (oblateness), \(f\), of a planet with equatorial radius \(a\) and polar radius, \(c\):

\[ f =\begin{cases} \frac{a-c}{a}{} & oblate \\ \frac{c-a}{a} & prolate \end{cases} \]

. More...

 
template<typename T >
RotationalFlattening (const T massInkg, const T meanRadiusInm, const T angularVelocityInmPersSquared)
 Finds the flattening (oblateness), \(f\), of a planet with mass, \(M\), mean radius, \(a\), and angular velocity of rotation, \(\Omega\). Note that this is a 1st order approximation for a planet that is rotating relatively slowly (small flattening).

\[ f = \frac{5}{4} \frac{\Omega^2 a^3}{GM} \]

. More...

 
template<typename T >
RotationalOblateness (const T eccentricity)
 Finds the oblateness (flattening), \(f\), of a planet with eccentricity \(e\):

\[ f = 1 - \sqrt{1-e^2} \]

. More...

 
template<typename T >
RotationalOblateness (const T equatorialRadius, const T polarRadius)
 Finds the oblateness (flattening), \(f\), of a planet with equatorial radius \(a\) and polar radius, \(c\):

\[ f =\begin{cases} \frac{a-c}{a}{} & oblate \\ \frac{c-a}{a} & prolate \end{cases} \]

. More...

 
template<typename T >
RotationalOblateness (const T massInkg, const T meanRadiusInm, const T angularVelocityInmPersSquared)
 Finds the oblateness (flattening), \(f\), of a planet with mass, \(M\), mean radius, \(a\), and angular velocity of rotation, \(\Omega\). Note that this is a 1st order approximation for a planet that is rotating relatively slowly (small flattening).

\[ f = \frac{5}{4} \frac{\Omega^2 a^3}{GM} \]

. More...

 
template<typename T >
SiderealDay (const T orbitalPeriodIns, const T synodicDayIns)
 Calculates the sidereal day, \(T_{Sidereal}\), of a celestial object in seconds from the length of the celestial object's orbital period, \(T_{Orbit}\), and synodic day (solar day), \(T_{Solar}\). A sidereal day is the time it takes for a full 360 degree rotation resulting in a distant star appears in the same position in the sky overhead.

\[ T_{Sidereal}=\dfrac{T_{Orbit} * T_{Synodic}}{T_{Orbit} + T_{Synodic}}\]

. More...

 
template<typename T >
SolarDay (const T orbitalPeriodIns, const T siderealDayIns)
 Calculates the solar day, \(T_{Solar}\), of a celestial object in seconds from the length of the celestial object's orbital period, \(T_{Orbit}\), and sidereal day, \(T_{Sidereal}\). A solar day is the time it takes for the celestial object to rotate so the body (sun) it is orbiting appears in the same position in the sky overhead.

\[ T_{Solar}=\dfrac{T_{Orbit} * T_{Sidereal}}{T_{Orbit} - T_{Sidereal}}\]

. More...

 
template<typename T >
SolarLuminosityRatio (const T starLuminosityInW)
 Calculates the solar luminosity (all wavelengths) ratio \(\dfrac{L}{L_{\odot}}\) of a star from the stars luminosity, \(L\), in watts. It is the ratio of a star's luminosity to that of the sun.

\[\dfrac{L}{L_{\odot}=\dfrac{L}{L_{\odot}}\]

See https://en.wikipedia.org/wiki/Solar_luminosity and https://en.wikipedia.org/wiki/Mass–luminosity_relation. More...

 
template<typename T >
StandardGravitationalParameter (const T massInkg)
 Calculates the standard gravitational parameter, \(\mu\), of a celestial body in meter cubed per second squared. The standard gravitational parameter is a product of the gravitational constant, \(G\), and the mass, \(M\), of the celestial body:

\[\mu = GM\]

. More...

 
template<typename T >
StellarLuminosity (const T starAbsoluteBolometricMagnitude)
 Calculates the stellar luminosity, \(L\), in watts of a star from a stars absolute bolometric magnitude, \(M_{bol}\).

\[ L=L_{0}10^{-0.4 M_{bol}}\]

See https://en.wikipedia.org/wiki/Solar_luminosity and https://en.wikipedia.org/wiki/Mass–luminosity_relation. More...

 
template<typename T >
StellarMass (const T starMass, const T referenceMass)
 Calculates the stellar mass \((M)\) of a star when comparing it to the mass of a reference star \((m_{ref})\).

\[M=\frac{m_{star}}{m_{ref}}\]

See https://en.wikipedia.org/wiki/Stellar_mass. More...

 
template<typename T >
SolarMass (const T starMass)
 Calculates the solar mass \((M)\) of a star when comparing it to the mass of the sun \((m_\odot)\).

\[M=\frac{m_{star}}{m_\odot}\]

See https://en.wikipedia.org/wiki/Solar_mass. More...

 
template<typename T >
StellarMassApproximation (const T starLuminosityInW)
 Calculates the stellar mass \((M)\) of a star when comparing it to the mass of a reference star \((m_{ref})\).

\[M=??\]

See https://en.wikipedia.org/wiki/Stellar_mass. More...

 
template<typename T >
StellarMassApproximationInkg (const T starLuminosityInW)
 Calculates the stellar mass \((M)\) of a star when comparing it to the mass of a reference star \((m_{ref})\).

\[M=??\]

See https://en.wikipedia.org/wiki/Stellar_mass. More...

 
template<typename T >
StellarMassApproximationInSolarMass (const T starLuminosityInSolarLuminosity)
 Calculates the stellar mass \((M)\) of a star when comparing it to the mass of a reference star \((m_{ref})\).

\[M=??\]

See https://en.wikipedia.org/wiki/Stellar_mass. More...

 
template<typename T >
StellarRadius (const T starEffectiveSurfaceTemperatureInK, const T starLuminosityInW)
 Calculates the radius, \(R\), of a star in meters using its luminosity, \(L\), and its surface tempreture \(T\).

\[R=\sqrt{\dfrac{L}{4\pi \sigma T_{eff}^4}}\]

. More...

 
template<typename T >
StellarRadiusFromLuminosityInWatts (const T starEffectiveSurfaceTemperatureInK, const T starLuminosityInW)
 Calculates the radius, \(R\), of a star in meters using its luminosity, \(L\), and its surface tempreture \(T\).

\[R=\sqrt{\dfrac{L}{4\pi \sigma T_{eff}^4}}\]

. More...

 
template<typename T >
StellarRadiusFromLuminosityInSolarLuminosity (const T starEffectiveSurfaceTemperatureInK, const T starLuminosityInSolarLuminosity)
 Calculates the radius, \(R\), of a star in meters using its luminosity, \(L\), and its surface tempreture \(T\).

\[R=\sqrt{\dfrac{L}{4\pi \sigma T_{eff}^4}}\]

. More...

 
template<typename T >
SurfaceGravityInmPersSquared (const T massInkg, const T meanRadiusInm)
 Calculates the surface gravity, \(g\), of a celestial body in meters per second squared. The surface gravity is a product of the gravitational constant, \(G\), as well as the mass, \(M\), and mean radius, \(r\), of the celestial body:

\[g = \frac{GM}{r^2}\]

. More...

 
template<typename T >
SurfaceGravityIng (const T massInkg, const T meanRadiusInm)
 Calculates the surface gravity, \(g\), of a celestial body in gs (Earth's gravity). The surface gravity is a product of the gravitational constant, \(G\), as well as the mass, \(M\), and mean radius, \(r\), of the celestial body:

\[g = \frac{GM}{g_{Earth}r^2}\]

. More...

 
template<typename T >
SynodicDay (const T orbitalPeriodIns, const T siderealDayIns)
 Calculates the synodic day, \(T_{Synodic}\), of a celestial object in seconds from the length of the celestial object's orbital period, \(T_{Orbit}\), and sidereal day, \(T_{Sidereal}\). A synodic day is the time it takes for the celestial object to rotate so the body it is orbiting appears in the same position in the sky overhead.

\[ T_{Synodic}=\dfrac{T_{Orbit} * T_{Sidereal}}{T_{Orbit} - T_{Sidereal}}\]

. More...

 
template<typename T >
DecayConstant (const T &countInitial, const T &countFinal, const T &time)
 Calculates the decay constant, \(\lambda\), of a radioactive substance via the uncertainty in energy, \(\Delta E\). More...
 
template<typename T >
DecayConstantViaHalfLife (const T &halfLife)
 Calculates the decay constant, \(\lambda\), of a radioactive substance via the half life, \(t_{\frac{1}{2}}\). More...
 
template<typename T >
DecayConstantViaMeanLifetime (const T &meanLifetime)
 Calculates the decay constant, \(\lambda\), of a radioactive substance via the mean lifetime, \(\tau\). More...
 
template<typename T >
DecayConstantViaDecayWidth (const T &decayWidth)
 Calculates the decay constant, \(\lambda\), of a radioactive substance via the decay width, \(\Gamma\). More...
 
template<typename T >
DecayWidth (const T &energyUncertainty)
 Calculates the decay width, \(\Gamma\), of a radioactive substance via the uncertainty in energy, \(\Delta E\). The decay width is also known as line width, natural line width and decay FWHM. More...
 
template<typename T >
DecayWidthViaDecayConstant (const T &decayConstant)
 Calculates the decay width, \(\Gamma\), of a radioactive substance via the decay constant, \(\lambda\). The decay width is also known as line width, natural line width and decay FWHM. More...
 
template<typename T >
DecayWidthViaHalfLife (const T &halfLife)
 Calculates the Decay Width, \(\Gamma\), of a radioactive substance via the half life, \(t_{\frac{1}{2}}\). The decay width is also known as line width, natural line width and decay FWHM. More...
 
template<typename T >
DecayWidthViaMeanLifetime (const T &meanLifetime)
 Calculates the Decay Width, \(\Gamma\), of a radioactive substance via the mean lifetime, \(\tau\). The decay width is also known as line width, natural line width and decay FWHM. More...
 
template<typename T >
HalfLife (const T &decayConstant)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the decay constant, \(\lambda\) . More...
 
template<typename T >
HalfLifeViaMeanLifetime (const T &meanLifetime)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the mean lifetime, \(\tau\). More...
 
template<typename T >
HalfLifeViaDecayWidth (const T &decayWidth)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the decay width, \(\Gamma\) . More...
 
template<typename T , typename T2 >
T2 MassDefect (const T &atomicNumber, const T &massNumber, const T2 &massAtomInu)
 Calculates the mass defect, \(\Delta m\), of an atom in unified atomic mass units. More...
 
template<typename T , typename T2 >
T2 MassDefectInu (const T &atomicNumber, const T &massNumber, const T2 &massAtomInu)
 Calculates the mass defect, \(\Delta m\), of an atom in unified atomic mass units. More...
 
template<typename T , typename T2 >
T2 MassDefectInMeVPercSquared (const T &atomicNumber, const T &massNumber, const T2 &massAtomInMeVPercSquared)
 Calculates the mass defect, \(\Delta m\), of an atom in megaelectron volts per c squared. More...
 
template<typename T , typename T2 >
T2 MassDefectInkg (const T &atomicNumber, const T &massNumber, const T2 &massAtomInkg)
 Calculates the mass defect, \(\Delta m\), of an atom in megaelectron volts per c squared. More...
 
template<typename T , typename T2 >
T2 MassDefectInJPercSquared (const T &atomicNumber, const T &massNumber, const T2 &massAtomInJPercSquared)
 Calculates the mass defect, \(\Delta m\), of an atom in megaelectron volts per c squared. More...
 
template<typename T , typename T2 >
T2 MassExcessInu (const T &massNumber, const T2 &massAtomInu)
 Calculates the mass excess, \(\text{Mass excess}\), of an atom in unified atomic mass units. More...
 
template<typename T , typename T2 >
T2 MassExcessInMeVPercSquared (const T &massNumber, const T2 &massAtomInu)
 Calculates the mass excess, \(\text{Mass excess}\), of an atom in megaelectron volts per speed of light squared. More...
 
template<typename T , typename T2 >
T2 MassExcessInkg (const T &massNumber, const T2 &massAtomInu)
 Calculates the mass excess, \(\text{Mass excess}\), of an atom in kilograms. More...
 
template<typename T , typename T2 >
T2 MassExcessInJPercSquared (const T &massNumber, const T2 &massAtomInu)
 Calculates the mass excess, \(\text{Mass excess}\), of an atom in joules per speed of light squared. More...
 
template<typename T >
MeanLifetime (const T &decayConstant)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the decay constant, \(\lambda\) . More...
 
template<typename T >
MeanLifetimeViaHalfLife (const T &halfLife)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the mean lifetime, \(\tau\). More...
 
template<typename T >
MeanLifetimeViaDecayWidth (const T &decayWidth)
 Calculates the Half Life, \(t_{\frac{1}{2}}\), of a radioactive substance via the decay width, \(\Gamma\) . More...
 
template<typename T , typename T2 >
T2 NuclearBindingEnergy (const T &atomicNumber, const T &massNumber, const T2 &massAtomInu)
 Calculates the nuclear binding energy, \(BE\), of an atom in megaelectron volts. More...
 
template<typename T , typename T2 >
T2 NuclearBindingEnergyInucSquared (const T &atomicNumber, const T &massNumber, const T2 &massAtomInu)
 Calculates the nuclear binding energy, \(BE\), of an atom in unified atomic mass units times c squared. More...
 
template<typename T , typename T2 >
T2 NuclearBindingEnergyInMeV (const T &atomicNumber, const T &massNumber, const T2 &massAtomInMeVPercSquared)
 Calculates the nuclear binding energy, \(BE\), of an atom in megaelectron volts. More...
 
template<typename T , typename T2 >
T2 NuclearBindingEnergyInkgcSquared (const T &atomicNumber, const T &massNumber, const T2 &massAtomInkg)
 Calculates the nuclear binding energy, \(BE\), of an atom in kilograms times c squared. More...
 
template<typename T , typename T2 >
T2 NuclearBindingEnergyInJ (const T &atomicNumber, const T &massNumber, const T2 &massAtomInJPercSquared)
 Calculates the nuclear binding energy, \(BE\), of an atom in joules. More...
 
template<typename T >
NeutronSeparationEnergyInMeV (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the neutron separation energy, \(S_{1n}\). The energy in megaelectron volts needed to remove a neutron from the nucleus of an atom. More...
 
template<typename T >
NeutronSeparationEnergyInJ (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the neutron separation energy, \(S_{1n}\). The energy in joules needed to remove a neutron from the nucleus of an atom. More...
 
template<typename T >
NeutronTwoSeparationEnergyInMeV (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the two neutrons separation energy, \(S_{2n}\). The energy in megaelectron volts needed to remove two neutron from the nucleus of an atom. More...
 
template<typename T >
NeutronTwoSeparationEnergyInJ (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the two neutrons separation energy, \(S_{2n}\). The energy in joules needed to remove two neutron from the nucleus of an atom. More...
 
template<typename T >
ProtonSeparationEnergyInMeV (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the proton separation energy, \(S_{1p}\). The energy in megaelectron volts needed to remove a proton from the nucleus of an atom. More...
 
template<typename T >
ProtonSeparationEnergyInJ (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the proton separation energy, \(S_{1p}\). The energy in joules needed to remove a proton from the nucleus of an atom. More...
 
template<typename T >
ProtonTwoSeparationEnergyInMeV (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the two protons separation energy, \(S_{2p}\). The energy in megaelectron volts needed to remove two protons from the nucleus of an atom. More...
 
template<typename T >
ProtonTwoSeparationEnergyInJ (const T &massAtomInu, const T &massProducedAtomInu)
 Calculates the two protons separation energy, \(S_{2p}\). The energy in joules needed to remove two protons from the nucleus of an atom. More...
 
template<typename T >
QValueInMeV (const T massProjectileInu, const T massTargetInu, const T massProduct1Inu, const T massProduct2Inu)
 Calculates the Q-value, \(Q\), of a nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueInJ (const T massProjectileInu, const T massTargetInu, const T massProduct1Inu, const T massProduct2Inu)
 Calculates the Q-value, \(Q\), of a nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueAlphaDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\) of an alpha decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueAlphaDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\) of an alpha decay nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleAlphaDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double alpha decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleAlphaDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double alpha decay nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueBetaMinusDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a beta minus, \(\beta^-\), decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueBetaMinusDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a beta minus, \(\beta^-\), decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleBetaMinusDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double beta minus, \(\beta^-\), decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleBetaMinusDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double beta minus, \(\beta^-\), decay nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueBetaPlusDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a beta plus, \(\beta^+\), decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueBetaPlusDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a beta plus, \(\beta^+\), decay nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleBetaPlusDecayInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double beta plus, \(\beta^+\), decay nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleBetaPlusDecayInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double beta plus, \(\beta^+\), decay nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueElectronCaptureInMeV (const T massParentInu, const T massDaughterInu, const T neutronBindingEnergyInMeV=(T)(0.0))
 Calculates the Q-value, \(Q\) of an electron capture(k-capture) nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueElectronCaptureInJ (const T massParentInu, const T massDaughterInu, const T neutronBindingEnergyInJ=(T)(0.0))
 Calculates the Q-value, \(Q\) of an electron capture(k-capture) nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleElectronCaptureInMeV (const T massParentInu, const T massDaughterInu, const T neutronBindingEnergyInMeV=(T)(0.0))
 Calculates the Q-value, \(Q\), of a double electron capture(k-capture) nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleElectronCaptureInJ (const T massParentInu, const T massDaughterInu, const T neutronBindingEnergyInJ=(T)(0.0))
 Calculates the Q-value, \(Q\), of a double electron capture(k-capture) nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueNeutronEmissionInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a neutron emission nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueNeutronEmissionInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a neutron emission nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleNeutronEmissionInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double neutron emission nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleNeutronEmissionInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double neutron emission nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueProtonEmissionInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a proton emission nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueProtonEmissionInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a proton emission nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleProtonEmissionInMeV (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double proton emission nuclear reaction in megaelectron volts. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
QValueDoubleProtonEmissionInJ (const T massParentInu, const T massDaughterInu)
 Calculates the Q-value, \(Q\), of a double proton emission nuclear reaction in joules. The Q-value allows you to determine if a nuclear reaction is endothermic or exothermic. More...
 
template<typename T >
double SemiEmpericalBindingEnergyKrane (const T &atomicNumber, const T &massNumber)
 Calculates the binding energy, \(BE_{SEMF}\), used in the semi-emperical mass formula for determining the mass of a nucleus using Krane's method. More...
 
template<typename T >
double SemiEmpericalMassFormula (const T &atomicNumber, const T &massNumber)
 
template<typename T >
PlancksLaw (const T wavelengthInm, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{\lambda}\), in watts per steradian meter cubed of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific wavelength, \(\lambda\), for a unit surface area of the black body.

\[ B_{\lambda} = \dfrac{2 h c^2}{\lambda^5} \dfrac{1}{e^{\frac{hc}{\lambda k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromFrequency (const T frequencyInHz, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{\nu}\), in watts per steradian meter squared hertz of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific frequency, \(\nu\), for a unit surface area of the black body.

\[ B_{\nu} = \dfrac{2 h \nu^3}{c^2} \dfrac{1}{e^{\frac{h\nu}{k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromWavelength (const T wavelengthInm, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{\lambda}\), in watts per steradian meter cubed of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific wavelength, \(\lambda\), for a unit surface area of the black body.

\[ B_{\lambda} = \dfrac{2 h c^2}{\lambda^5} \dfrac{1}{e^{\frac{hc}{\lambda k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromWavenumber (const T wavenumberInInversem, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{\tilde {\nu }}\), in watts per steradian meter cubed of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific wavenumber, \(\tilde {\nu }\), for a unit surface area of the black body.

\[ B_{\tilde {\nu }} = 2 h c^2 \tilde {\nu }^3 \dfrac{1}{e^{\frac{hc \tilde {\nu }}{k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromAngularFrequency (const T angularFrequencyInRadiansPers, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{\omega}\), in watt radians per steradian meter squared hertz of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific angular frequency, \(\omega\), for a unit surface area of the black body.

\[ B_{\omega} = \dfrac{\hbar \omega^3}{4\pi^3c^2} \dfrac{1}{e^{\frac{\hbar\omega}{k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromAngularWavelength (const T angularWavelengthInm, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{y}\), in watts per steradian meter cubed of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific angular wavelength, /f$y/f$, for a unit surface area of the black body.

\[ B_{y} = \dfrac{\hbar c^2}{4\pi^3y^5} \dfrac{1}{e^{\frac{\hbar c}{y k_B T}} - 1} \]

. More...

 
template<typename T >
PlancksLawFromAngularWavenumber (const T angularWavenumberInRadianPerm, const T surfaceTempretureInK)
 Calculates the spectral radiance, \(B_{k}\), in watts per steradian meter of a black body from the surface tempreture, \(T\) of the black body using Plank's Law. The spectral radience is the amount of power emmited per steradian at a specific angular wavenumber, \(k\), for a unit surface area of the black body.

\[ B_{k} = \dfrac{\hbar c^2 k^3}{4\pi^3} \dfrac{1}{e^{\frac{\hbar c k}{k_B T}} - 1} \]

. More...

 
template<typename T >
StefanBoltzmannLaw (const T surfaceTempretureInK)
 Calculates the radiant emittance, \(j^*\), of a black body in watts per meter squared using Stefan-Boltzmann Law from the surface tempreture, \(T\) of the black body.

\[j^*=\sigma T^4\]

. More...

 
template<typename T >
WiensDisplacementLaw (const T surfaceTempInK)
 Calculates the peak wavelength, \(\lambda_{max}\), in meters emmited by a black body using Wien's displacement law from the surface tempreture, \(T\) of the black body. \(b\) is a measured constant called Wien's displacement constant.

\[\lambda_{max} = \dfrac{b_\lambda}{T} \]

. More...

 
template<typename T >
WiensDisplacementLawInm (const T surfaceTempInK)
 Calculates the peak wavelength, \(\lambda_{max}\), in meters emmited by a black body using Wien's displacement law from the surface tempreture, \(T\) of the black body. \(b\) is a measured constant called Wien's displacement constant.

\[\lambda_{max} = \dfrac{b_\lambda}{T} \]

. More...

 
template<typename T >
WiensDisplacementLawInHz (const T surfaceTempInK)
 Calculates the peak frequency, \(\nu_{max}\), in Hz emmited by a black body using Wien's displacement law from the surface tempreture, \(T\) of the black body. \(b\) is a measured constant called Wien's displacement constant.

\[\nu_{max} = b_\nu\ T \]

. More...

 
void AngularAcceleration (const glm::vec3 &torqueInNm, const glm::mat3 &inertiaTensorInkgmsquared, glm::vec3 &angularAccelerationInradPersSquared)
 Calculates the angular acceleration, \(\alpha\), in radians per second squared. Angular acceleration of an object is calculated from the torque, \(\tau\), applied to an object and the object's inertia tensor, \(I\):

\[\alpha=I^{-1} \tau \]

. More...

 
void Torque (const glm::vec3 &positionFromFulcrumInm, const glm::vec3 &forceInN, glm::vec3 &torqueInNm)
 Calculates the torque, \(\tau\), in Newton meters. Torque on an object is calculated from the force, \(F\), applied to an object at a position, \(r\), away from the fulcrum (pivot point):

\[\tau=r \times F \]

. More...

 
template<typename T >
redshiftByWavelength (const T &wavelengthObserved, const T &wavelengthEmitted)
 Calculates the redshift, \(z\), of light based on wavelenght. Redshifts occur when \(z > 0\), blueshifts when \(z < 0\). See https://en.wikipedia.org/wiki/Redshift.

\[z=\frac{\lambda_{observed}-\lambda_{emitted}}{\lambda_{emitted}}\]

. More...

 
template<typename T >
redshiftByFrequency (const T &frequencyObserved, const T &frequencyEmitted)
 Calculates the redshift, \(z\), of light based on frequency. Redshifts occur when \(z > 0\), blueshifts when \(z < 0\). See https://en.wikipedia.org/wiki/Redshift.

\[z=\frac{f_{emitted}-f_{observed}}{f_{observed}}\]

. More...

 
template<typename T >
LorentzFactor (const T &velocity)
 Calculates the Lorentz factor, \(\gamma\). The factor by which time, length, and relativistic mass changes due to movement of an object. More...
 
template<typename T >
LorentzFactorViaMomentum (const T &momentum, const T &restMass)
 Calculates the Lorentz factor, \(\gamma\). The factor by which time, length, and relativistic mass changes due to movement of an object. More...
 
template<typename T >
LorentzFactorViaEnergy (const T &energyTotal, const T &energyRest)
 Calculates the Lorentz factor, \(\gamma\). The factor by which time, length, and relativistic mass changes due to movement of an object. More...
 
template<typename T >
LorentzFactorViaRapidity (const T &rapidity)
 Calculates the Lorentz factor, \(\gamma\). The factor by which time, length, and relativistic mass changes due to movement of an object. More...
 

Variables

EGXPHYS_CONSTANT zeroPointLuminosity = 3.0128e28
 
EGXPHYS_CONSTANT sunMass = 1.98855e30
 
EGXPHYS_CONSTANT solarMass = 1.98855e30
 
EGXPHYS_CONSTANT sunDensity = 1411.1
 
EGXPHYS_CONSTANT solarDensity = 1411.1
 
EGXPHYS_CONSTANT sunPhotosphericRadius = 695700e3
 
EGXPHYS_CONSTANT solarRadius = sunPhotosphericRadius
 
EGXPHYS_CONSTANT sunNominalSolarRadius = sunPhotosphericRadius
 
EGXPHYS_CONSTANT sunFlattening = 8e-6
 
EGXPHYS_CONSTANT sunStandardGravitationalParameter = 1.3271244e20
 
EGXPHYS_CONSTANT solarStandardGravitationalParameter = sunStandardGravitationalParameter
 
EGXPHYS_CONSTANT sunNominalSolarMassParameter = sunStandardGravitationalParameter
 
EGXPHYS_CONSTANT sunSurfaceGravityEquator = 274.0
 
EGXPHYS_CONSTANT sunSurfaceGravityPolar = 274.0
 
EGXPHYS_CONSTANT sunMomentOfInertia = 0.062
 
EGXPHYS_CONSTANT sunSurfaceEffectiveTemperature = 5772.0
 
EGXPHYS_CONSTANT sunNominalSolarEffectiveTemperature = 5772.0
 
EGXPHYS_CONSTANT solarEffectiveTemperature = 5772.0
 
EGXPHYS_CONSTANT sunIrradianceAt1Au = 1361.0
 
EGXPHYS_CONSTANT solarIrradianceAt1Au = sunIrradianceAt1Au
 
EGXPHYS_CONSTANT sunLuminosity = 3.828e26
 
EGXPHYS_CONSTANT solarLuminosity = sunLuminosity
 
EGXPHYS_CONSTANT sunXRayLuminosity = 2.24e20
 
EGXPHYS_CONSTANT solarXRayLuminosity = 2.24e20
 
EGXPHYS_CONSTANT sunAgeInYears = 4567.30e6
 
EGXPHYS_CONSTANT solarAgeInYears = sunAgeInYears
 
EGXPHYS_CONSTANT sunSiderealRotationPeriod = 24.47 * secondsInDay
 
EGXPHYS_CONSTANT sunApparentVMagnitude = -26.71
 
EGXPHYS_CONSTANT sunAbsoluteVMagnitude = 4.862
 
EGXPHYS_CONSTANT sunAbsoluteBMagnitude = 5.515
 
EGXPHYS_CONSTANT sunVBandBolometricCorrection = -0.107
 
EGXPHYS_CONSTANT sunApparentBolometricMagnitude = -26.832
 
EGXPHYS_CONSTANT sunAbsoluteBolometricMagnitude = 4.74
 
EGXPHYS_CONSTANT sunBVColor = 0.653
 
EGXPHYS_CONSTANT sunUBColor = 0.158
 
EGXPHYS_CONSTANT sunVRcColor = 0.356
 
EGXPHYS_CONSTANT sunVIcColor = 0.701
 
EGXPHYS_CONSTANT sunVJColor = 1.198
 
EGXPHYS_CONSTANT sunVHColor = 1.484
 
EGXPHYS_CONSTANT sunVKsColor = 1.560
 
EGXPHYS_CONSTANT sunJHColor = 0.286
 
EGXPHYS_CONSTANT sunJKsColor = 0.362
 
EGXPHYS_CONSTANT sunHKsColor = 0.076
 
EGXPHYS_CONSTANT sunVW1Color = 1.608
 
EGXPHYS_CONSTANT sunVW2Color = 1.563
 
EGXPHYS_CONSTANT sunVW3Color = 1.552
 
EGXPHYS_CONSTANT sunVW4Color = 1.604
 
EGXPHYS_CONSTANT sunbyColor = 0.4105
 
EGXPHYS_CONSTANT sunm1Color = 0.2122
 
EGXPHYS_CONSTANT sunc1Color = 0.3319
 
EGXPHYS_CONSTANT sunBetaColor = 2.5915
 
EGXPHYS_CONSTANT mercuryMass = 0.33011e24
 
EGXPHYS_CONSTANT mercuryDensity = 5427
 
EGXPHYS_CONSTANT mercuryRadiusEquatorial = 2439.7e3
 
EGXPHYS_CONSTANT mercuryRadiusPolar = 2439.7e3
 
EGXPHYS_CONSTANT mercuryVolumetricMeanRadius = 2439.7e3
 
EGXPHYS_CONSTANT mercuryFlattening = 0.0
 
EGXPHYS_CONSTANT mercuryStandardGravitationalParameter = 0.022032e15
 
EGXPHYS_CONSTANT mercurySurfaceGravityEquator = 3.701
 
EGXPHYS_CONSTANT mercurySurfaceGravityPolar = 3.701
 
EGXPHYS_CONSTANT mercuryGeometricAlbedo = 0.142
 
EGXPHYS_CONSTANT mercuryBondAlbedo = 0.068
 
EGXPHYS_CONSTANT mercuryVBandMagnitude = -0.69
 
EGXPHYS_CONSTANT mercurySolarIrradiance = 9082.7
 
EGXPHYS_CONSTANT mercuryMomentOfInertia = 0.35
 
EGXPHYS_CONSTANT mercuryJ2 = 50.3
 
EGXPHYS_CONSTANT mercurySemimajorAxis = 57.91e9
 
EGXPHYS_CONSTANT mercurySiderealOrbitPeriod = 87.969 * secondsInDay
 
EGXPHYS_CONSTANT mercuryTropicalOrbitPeriod = 87.968 * secondsInDay
 
EGXPHYS_CONSTANT mercurySynodicOrbitPeriod = 115.88 * secondsInDay
 
EGXPHYS_CONSTANT mercuryPerihelion = 46.00e9
 
EGXPHYS_CONSTANT mercuryAphelion = 69.82e9
 
EGXPHYS_CONSTANT mercuryOrbitInclination = 7.00
 
EGXPHYS_CONSTANT mercuryOrbitEccentricity = 0.2056
 
EGXPHYS_CONSTANT mercurySiderealRotationPeriod = 1407.6 * secondsInHour
 
EGXPHYS_CONSTANT mercuryDayLength = 4222.6 * secondsInHour
 
EGXPHYS_CONSTANT mercuryObliquityToOrbit = 0.034
 
EGXPHYS_CONSTANT mercuryInclinationOfEquator = 0.034
 
EGXPHYS_CONSTANT venusMass = 4.8675e24
 
EGXPHYS_CONSTANT venusDensity = 5243.0
 
EGXPHYS_CONSTANT venusRadiusEquatorial = 6051.8e3
 
EGXPHYS_CONSTANT venusRadiusPolar = 6051.8e3
 
EGXPHYS_CONSTANT venusVolumetricMeanRadius = 6051.8e3
 
EGXPHYS_CONSTANT venusFlattening = 0.0
 
EGXPHYS_CONSTANT venusStandardGravitationalParameter = 0.32486e15
 
EGXPHYS_CONSTANT venusSurfaceGravityEquator = 8.870
 
EGXPHYS_CONSTANT venusSurfaceGravityPolar = 8.870
 
EGXPHYS_CONSTANT venusGeometricAlbedo = 0.689
 
EGXPHYS_CONSTANT venusBondAlbedo = 0.77
 
EGXPHYS_CONSTANT venusVBandMagnitude = -4.38
 
EGXPHYS_CONSTANT venusSolarIrradiance = 2601.3
 
EGXPHYS_CONSTANT venusMomentOfInertia = 0.33
 
EGXPHYS_CONSTANT venusJ2 = 4.458e-6
 
EGXPHYS_CONSTANT venusSemimajorAxis = 108.21e9
 
EGXPHYS_CONSTANT venusSiderealOrbitPeriod = 224.701 * secondsInDay
 
EGXPHYS_CONSTANT venusTropicalOrbitPeriod = 224.695 * secondsInDay
 
EGXPHYS_CONSTANT venusSynodicOrbitPeriod = 583.92 * secondsInDay
 
EGXPHYS_CONSTANT venusPerihelion = 107.48e9
 
EGXPHYS_CONSTANT venusAphelion = 108.94e9
 
EGXPHYS_CONSTANT venusOrbitInclination = 3.39
 
EGXPHYS_CONSTANT venusOrbitEccentricity = 0.0067
 
EGXPHYS_CONSTANT venusSiderealRotationPeriod = -5832.6 * secondsInHour
 
EGXPHYS_CONSTANT venusDayLength = 2802.0 * secondsInHour
 
EGXPHYS_CONSTANT venusObliquityToOrbit = 177.36
 
EGXPHYS_CONSTANT venusInclinationOfEquator = 2.64
 
EGXPHYS_CONSTANT earthMass = 5.9723e24
 
EGXPHYS_CONSTANT earthDensity = 5514.0
 
EGXPHYS_CONSTANT earthRadiusEquatorial = 6378.137e3
 
EGXPHYS_CONSTANT earthRadiusPolar = 6356.752e3
 
EGXPHYS_CONSTANT earthVolumetricMeanRadius = 6371.000e3
 
EGXPHYS_CONSTANT earthFlattening = 0.003353
 
EGXPHYS_CONSTANT earthStandardGravitationalParameter = 0.39860e15
 
EGXPHYS_CONSTANT earthSurfaceGravityEquator = 9.7803267715
 
EGXPHYS_CONSTANT earthSurfaceGravityPolar = 9.8321863685
 
EGXPHYS_CONSTANT earthGeometricAlbedo = 0.434
 
EGXPHYS_CONSTANT earthBondAlbedo = 0.306
 
EGXPHYS_CONSTANT earthVBandMagnitude = -3.99
 
EGXPHYS_CONSTANT earthSolarIrradiance = 1361.0
 
EGXPHYS_CONSTANT earthMomentOfInertia = 0.3308
 
EGXPHYS_CONSTANT earthJ2 = 1082.63e-6
 
EGXPHYS_CONSTANT earthEscapeVelocity = 11186.0
 
EGXPHYS_CONSTANT earthAverageSurfaceTempreture = 287.0
 
EGXPHYS_CONSTANT earthSemimajorAxis = 149.60e9
 
EGXPHYS_CONSTANT earthSiderealOrbitPeriod = 365.256 * secondsInDay
 
EGXPHYS_CONSTANT earthTropicalOrbitPeriod = 365.242 * secondsInDay
 
EGXPHYS_CONSTANT earthPerihelion = 147.09e9
 
EGXPHYS_CONSTANT earthAphelion = 152.10e9
 
EGXPHYS_CONSTANT earthOrbitInclination = 0.0
 
EGXPHYS_CONSTANT earthOrbitEccentricity = 0.0167
 
EGXPHYS_CONSTANT earthSiderealRotationPeriod = 23.9345 * secondsInHour
 
EGXPHYS_CONSTANT earthDayLength = 24.0000 * secondsInHour
 
EGXPHYS_CONSTANT earthObliquityToOrbit = 23.44
 
EGXPHYS_CONSTANT earthInclinationOfEquator = 23.44
 
EGXPHYS_CONSTANT moonMass = 0.07346e24
 
EGXPHYS_CONSTANT moonDensity = 3344.0
 
EGXPHYS_CONSTANT moonRadiusEquatorial = 1738.1e3
 
EGXPHYS_CONSTANT moonRadiusPolar = 1736.0e3
 
EGXPHYS_CONSTANT moonVolumetricMeanRadius = 1737.4e3
 
EGXPHYS_CONSTANT moonFlattening = 0.0012
 
EGXPHYS_CONSTANT moonStandardGravitationalParameter = 0.00490e15
 
EGXPHYS_CONSTANT moonSurfaceGravityEquator = 1.62
 
EGXPHYS_CONSTANT moonSurfaceGravityPolar = 1.62
 
EGXPHYS_CONSTANT moonGeometricAlbedo = 0.12
 
EGXPHYS_CONSTANT moonBondAlbedo = 0.11
 
EGXPHYS_CONSTANT moonVBandMagnitude = -0.08
 
EGXPHYS_CONSTANT moonSolarIrradiance = 1361.0
 
EGXPHYS_CONSTANT moonMomentOfInertia = 0.394
 
EGXPHYS_CONSTANT moonJ2 = 202.7e-6
 
EGXPHYS_CONSTANT moonSemimajorAxis = 0.3844e6
 
EGXPHYS_CONSTANT moonSynodicOrbitPeriod = 29.53 * secondsInDay
 
EGXPHYS_CONSTANT moonPerigee = 0.3633e6
 
EGXPHYS_CONSTANT moonApogee = 0.4055e6
 
EGXPHYS_CONSTANT moonOrbitInclination = 5.145
 
EGXPHYS_CONSTANT moonOrbitEccentricity = 0.0549
 
EGXPHYS_CONSTANT moonSiderealRotationPeriod = 655.728 * secondsInHour
 
EGXPHYS_CONSTANT moonObliquityToOrbit = 6.68
 
EGXPHYS_CONSTANT marsMass = 0.64171e24
 
EGXPHYS_CONSTANT marsDensity = 3933.0
 
EGXPHYS_CONSTANT marsRadiusEquatorial = 3396.2e3
 
EGXPHYS_CONSTANT marsRadiusPolar = 3376.2e3
 
EGXPHYS_CONSTANT marsVolumetricMeanRadius = 3389.5e3
 
EGXPHYS_CONSTANT marsFlattening = 0.00589
 
EGXPHYS_CONSTANT marsStandardGravitationalParameter = 0.042828e15
 
EGXPHYS_CONSTANT marsSurfaceGravityEquator = 3.71
 
EGXPHYS_CONSTANT marsSurfaceGravityPolar = 3.758
 
EGXPHYS_CONSTANT marsGeometricAlbedo = 0.170
 
EGXPHYS_CONSTANT marsBondAlbedo = 0.250
 
EGXPHYS_CONSTANT marsVBandMagnitude = -1.60
 
EGXPHYS_CONSTANT marsSolarIrradiance = 586.2
 
EGXPHYS_CONSTANT marsMomentOfInertia = 0.366
 
EGXPHYS_CONSTANT marsJ2 = 1960.45e-6
 
EGXPHYS_CONSTANT marsSemimajorAxis = 227.92e9
 
EGXPHYS_CONSTANT marsSiderealOrbitPeriod = 686.980*secondsInDay
 
EGXPHYS_CONSTANT marsTropicalOrbitPeriod = 686.973*secondsInDay
 
EGXPHYS_CONSTANT marsSynodicOrbitPeriod = 779.94*secondsInDay
 
EGXPHYS_CONSTANT marsPerihelion = 206.62e9
 
EGXPHYS_CONSTANT marsAphelion = 249.23e9
 
EGXPHYS_CONSTANT marsOrbitInclination = 1.850
 
EGXPHYS_CONSTANT marsOrbitEccentricity = 0.0935
 
EGXPHYS_CONSTANT marsSiderealRotationPeriod = 24.6229*secondsInHour
 
EGXPHYS_CONSTANT marsDayLength = 24.6597*secondsInHour
 
EGXPHYS_CONSTANT marsObliquityToOrbit = 25.19
 
EGXPHYS_CONSTANT marsInclinationOfEquator = 25.19
 
EGXPHYS_CONSTANT jupiterMass = 1898.13e24
 
EGXPHYS_CONSTANT jupiterDensity = 1326.0
 
EGXPHYS_CONSTANT jupiterRadiusEquatorial = 71492000
 
EGXPHYS_CONSTANT jupiterRadiusPolar = 66854000
 
EGXPHYS_CONSTANT jupiterVolumetricMeanRadius = 69911000
 
EGXPHYS_CONSTANT jupiterFlattening = 0.06487
 
EGXPHYS_CONSTANT jupiterStandardGravitationalParameter = 1.26686511e17
 
EGXPHYS_CONSTANT jupiterSurfaceGravityEquator = 24.79
 
EGXPHYS_CONSTANT jupiterSurfaceGravityPolar = 28.34
 
EGXPHYS_CONSTANT jupiterGeometricAlbedo = 0.538
 
EGXPHYS_CONSTANT jupiterBondAlbedo = 0.343
 
EGXPHYS_CONSTANT jupiterVBandMagnitude = -9.40
 
EGXPHYS_CONSTANT jupiterSolarIrradiance = 50.26
 
EGXPHYS_CONSTANT jupiterMomentOfInertia = 0.254
 
EGXPHYS_CONSTANT jupiterJ2 = 3343.43e-6
 
EGXPHYS_CONSTANT jupiterSemimajorAxis = 778.57e9
 
EGXPHYS_CONSTANT jupiterSiderealOrbitPeriod = 4332.589 * secondsInDay
 
EGXPHYS_CONSTANT jupiterTropicalOrbitPeriod = 4330.595 * secondsInDay
 
EGXPHYS_CONSTANT jupiterSynodicOrbitPeriod = 398.88 * secondsInDay
 
EGXPHYS_CONSTANT jupiterPerihelion = 740.52e9
 
EGXPHYS_CONSTANT jupiterAphelion = 816.62e9
 
EGXPHYS_CONSTANT jupiterOrbitInclination = 1.304
 
EGXPHYS_CONSTANT jupiterOrbitEccentricity = 0.0489
 
EGXPHYS_CONSTANT jupiterSiderealRotationPeriod = 35729.685
 
EGXPHYS_CONSTANT jupiterDayLength = 9.9259 * secondsInHour
 
EGXPHYS_CONSTANT jupiterObliquityToOrbit = 3.13
 
EGXPHYS_CONSTANT jupiterInclinationOfEquator = 3.13
 
EGXPHYS_CONSTANT saturnMass = 568.34e24
 
EGXPHYS_CONSTANT saturnDensity = 687.0
 
EGXPHYS_CONSTANT saturnRadiusEquatorial = 60268e3
 
EGXPHYS_CONSTANT saturnRadiusPolar = 54364e3
 
EGXPHYS_CONSTANT saturnVolumetricMeanRadius = 58232e3
 
EGXPHYS_CONSTANT saturnFlattening = 0.09796
 
EGXPHYS_CONSTANT saturnStandardGravitationalParameter = 37.931e15
 
EGXPHYS_CONSTANT saturnSurfaceGravityEquator = 10.44
 
EGXPHYS_CONSTANT saturnSurfaceGravityPolar = 12.14
 
EGXPHYS_CONSTANT saturnGeometricAlbedo = 0.499
 
EGXPHYS_CONSTANT saturnBondAlbedo = 0.342
 
EGXPHYS_CONSTANT saturnVBandMagnitude = -8.91
 
EGXPHYS_CONSTANT saturnSolarIrradiance = 14.82
 
EGXPHYS_CONSTANT saturnMomentOfInertia = 0.210
 
EGXPHYS_CONSTANT saturnJ2 = 16298e-6
 
EGXPHYS_CONSTANT saturnSemimajorAxis = 1433.53e6
 
EGXPHYS_CONSTANT saturnSiderealOrbitPeriod = 10759.22*secondsInDay
 
EGXPHYS_CONSTANT saturnTropicalOrbitPeriod = 10746.94*secondsInDay
 
EGXPHYS_CONSTANT saturnSynodicOrbitPeriod = 378.09*secondsInDay
 
EGXPHYS_CONSTANT saturnPerihelion = 1352.55e9
 
EGXPHYS_CONSTANT saturnAphelion = 1514.50e9
 
EGXPHYS_CONSTANT saturnOrbitInclination = 2.485
 
EGXPHYS_CONSTANT saturnOrbitEccentricity = 0.0565
 
EGXPHYS_CONSTANT saturnSiderealRotationPeriod = 10.656*secondsInHour
 
EGXPHYS_CONSTANT saturnDayLength = 10.656*secondsInHour
 
EGXPHYS_CONSTANT saturnObliquityToOrbit = 26.73
 
EGXPHYS_CONSTANT saturnInclinationOfEquator = 26.73
 
EGXPHYS_CONSTANT uranusMass = 86.813e24
 
EGXPHYS_CONSTANT uranusDensity = 1271.0
 
EGXPHYS_CONSTANT uranusRadiusEquatorial = 25559e3
 
EGXPHYS_CONSTANT uranusRadiusPolar = 24973e3
 
EGXPHYS_CONSTANT uranusVolumetricMeanRadius = 25362e3
 
EGXPHYS_CONSTANT uranusFlattening = 0.02293
 
EGXPHYS_CONSTANT uranusStandardGravitationalParameter = 5.7940e15
 
EGXPHYS_CONSTANT uranusSurfaceGravityEquator = 8.87
 
EGXPHYS_CONSTANT uranusSurfaceGravityPolar = 9.19
 
EGXPHYS_CONSTANT uranusGeometricAlbedo = 0.488
 
EGXPHYS_CONSTANT uranusBondAlbedo = 0.300
 
EGXPHYS_CONSTANT uranusVBandMagnitude = -7.11
 
EGXPHYS_CONSTANT uranusSolarIrradiance = 3.69
 
EGXPHYS_CONSTANT uranusMomentOfInertia = 0.225
 
EGXPHYS_CONSTANT uranusJ2 = 3343.43e-6
 
EGXPHYS_CONSTANT uranusSemimajorAxis = 2872.46e9
 
EGXPHYS_CONSTANT uranusSiderealOrbitPeriod = 30685.4*secondsInDay
 
EGXPHYS_CONSTANT uranusTropicalOrbitPeriod = 30588.740*secondsInDay
 
EGXPHYS_CONSTANT uranusSynodicOrbitPeriod = 369.66*secondsInDay
 
EGXPHYS_CONSTANT uranusPerihelion = 2741.30e9
 
EGXPHYS_CONSTANT uranusAphelion = 3003.62e9
 
EGXPHYS_CONSTANT uranusOrbitInclination = 0.772
 
EGXPHYS_CONSTANT uranusOrbitEccentricity = 0.0457
 
EGXPHYS_CONSTANT uranusSiderealRotationPeriod = -17.24*secondsInHour
 
EGXPHYS_CONSTANT uranusDayLength = 17.24*secondsInHour
 
EGXPHYS_CONSTANT uranusObliquityToOrbit = 97.77
 
EGXPHYS_CONSTANT uranusInclinationOfEquator = 82.23
 
EGXPHYS_CONSTANT neptuneMass = 102.413e24
 
EGXPHYS_CONSTANT neptuneDensity = 1638.0
 
EGXPHYS_CONSTANT neptuneRadiusEquatorial = 24764e3
 
EGXPHYS_CONSTANT neptuneRadiusPolar = 24341e3
 
EGXPHYS_CONSTANT neptuneVolumetricMeanRadius = 24622e3
 
EGXPHYS_CONSTANT neptuneFlattening = 0.01708
 
EGXPHYS_CONSTANT neptuneStandardGravitationalParameter = 6.8351e15
 
EGXPHYS_CONSTANT neptuneSurfaceGravityEquator = 11.15
 
EGXPHYS_CONSTANT neptuneSurfaceGravityPolar = 11.41
 
EGXPHYS_CONSTANT neptuneGeometricAlbedo = 0.442
 
EGXPHYS_CONSTANT neptuneBondAlbedo = 0.290
 
EGXPHYS_CONSTANT neptuneVBandMagnitude = -6.94
 
EGXPHYS_CONSTANT neptuneSolarIrradiance = 1.508
 
EGXPHYS_CONSTANT neptuneJ2 = 3411e-6
 
EGXPHYS_CONSTANT neptuneSemimajorAxis = 4495.06e9
 
EGXPHYS_CONSTANT neptuneSiderealOrbitPeriod = 60189.0 *secondsInDay
 
EGXPHYS_CONSTANT neptuneTropicalOrbitPeriod = 59799.9 *secondsInDay
 
EGXPHYS_CONSTANT neptuneSynodicOrbitPeriod = 367.49 *secondsInDay
 
EGXPHYS_CONSTANT neptunePerihelion = 4444.45e9
 
EGXPHYS_CONSTANT neptuneAphelion = 4545.67e9
 
EGXPHYS_CONSTANT neptuneOrbitInclination = 1.769
 
EGXPHYS_CONSTANT neptuneOrbitEccentricity = 0.0113
 
EGXPHYS_CONSTANT neptuneSiderealRotationPeriod = 16.11*secondsInHour
 
EGXPHYS_CONSTANT neptuneDayLength = 16.11*secondsInHour
 
EGXPHYS_CONSTANT neptuneObliquityToOrbit = 28.32
 
EGXPHYS_CONSTANT neptuneInclinationOfEquator = 28.32
 
EGXPHYS_CONSTANT plutoMass = 0.01303e24
 
EGXPHYS_CONSTANT plutoDensity = 1860.0
 
EGXPHYS_CONSTANT plutoRadiusEquatorial = 1187e3
 
EGXPHYS_CONSTANT plutoRadiusPolar = 1187e3
 
EGXPHYS_CONSTANT plutoVolumetricMeanRadius = 1187e3
 
EGXPHYS_CONSTANT plutoFlattening = 0.0
 
EGXPHYS_CONSTANT plutoStandardGravitationalParameter = 0.000870e15
 
EGXPHYS_CONSTANT plutoSurfaceGravityEquator = 0.611
 
EGXPHYS_CONSTANT plutoSurfaceGravityPolar = 0.611
 
EGXPHYS_CONSTANT plutoGeometricAlbedo = 0.52
 
EGXPHYS_CONSTANT plutoBondAlbedo = 0.72
 
EGXPHYS_CONSTANT plutoVBandMagnitude = -1.0
 
EGXPHYS_CONSTANT plutoSolarIrradiance = 0.873
 
EGXPHYS_CONSTANT plutoSemimajorAxis = 5906.38e9
 
EGXPHYS_CONSTANT plutoSiderealOrbitPeriod = 90560*secondsInDay
 
EGXPHYS_CONSTANT plutoSynodicOrbitPeriod = 366.73*secondsInDay
 
EGXPHYS_CONSTANT plutoPerihelion = 4436.82e9
 
EGXPHYS_CONSTANT plutoAphelion = 7375.93e9
 
EGXPHYS_CONSTANT plutoOrbitInclination = 17.16
 
EGXPHYS_CONSTANT plutoOrbitEccentricity = 0.2488
 
EGXPHYS_CONSTANT plutoSiderealRotationPeriod = 153.2928*secondsInHour
 
EGXPHYS_CONSTANT plutoDayLength = 153.2820*secondsInHour
 
EGXPHYS_CONSTANT plutoObliquityToOrbit = 122.53
 
EGXPHYS_CONSTANT plutoInclinationOfEquator = 57.47
 
EGXPHYS_CONSTANT sunGravConstInAuCubedperSolarMassDay = NISTConst::gravitationalConstant * sunMass * secondsInDay * secondsInDay / (AU*AU*AU)
 
EGXPHYS_CONSTANT AU = 149597870700.0
 
EGXPHYS_CONSTANT secondsInMinute = 60.0
 
EGXPHYS_CONSTANT secondsInHour = 60.0 * minute
 
EGXPHYS_CONSTANT secondsInDay = 24.0 * hour
 
EGXPHYS_CONSTANT secondsInYear = 365.25*day
 

Detailed Description

Todo:
add SpectralRadiance alias

Variable Documentation

◆ AU

EGXPHYS_CONSTANT EGXPhys::AU = 149597870700.0

\(au\ (au)\) Astronomical units in meters.

◆ secondsInDay

EGXPHYS_CONSTANT EGXPhys::secondsInDay = 24.0 * hour

\(min\ (s)\) Amount of seconds inside a day.

◆ secondsInHour

EGXPHYS_CONSTANT EGXPhys::secondsInHour = 60.0 * minute

\(hr\ (s)\) Amount of seconds inside an hour.

◆ secondsInMinute

EGXPHYS_CONSTANT EGXPhys::secondsInMinute = 60.0

\(min\ (s)\) Amount of seconds inside a minute.

◆ secondsInYear

EGXPHYS_CONSTANT EGXPhys::secondsInYear = 365.25*day

\(min\ (s)\) Amount of seconds inside a year (365.25 days). See https://www.iau.org/static/publications/stylemanual1989.pdf

◆ sunGravConstInAuCubedperSolarMassDay

EGXPHYS_CONSTANT EGXPhys::sunGravConstInAuCubedperSolarMassDay = NISTConst::gravitationalConstant * sunMass * secondsInDay * secondsInDay / (AU*AU*AU)

\(G_{Sun}\ (\frac{AU^3}{SolarMass\ day)\) Gravitational constant around sun per day.

◆ zeroPointLuminosity

EGXPHYS_CONSTANT EGXPhys::zeroPointLuminosity = 3.0128e28

\(L_{0} \ (W)\) Zero point luminosity. It is a defined number used in bolometric magnitude stellar calculations. See the International Astronomical Union, https://www.iau.org/news/announcements/detail/ann15023/ resolution B2.