irfpy.util.sprel
¶
Formulae of special relativity.
Code author: Yoshifumi Futaana
|
Calculate the time dilation |
|
Calculate the length contraction (Lorentz contraction) |
|
Return the total energy |
- irfpy.util.sprel.time_dilation(t0, v)[source]¶
Calculate the time dilation
- Parameters:
t0 – Time in the rest frame (moving with the object) in
s
.v – Velocity of the object in
m/s
.
- Returns:
t1
, time observed by an observer moving with relative to the object (s
).
\[t_1 = \gamma t_0\]>>> print('%.3f' % time_dilation(1, 42300000.)) 1.010
Unitful version, too.
>>> u.pprint(time_dilation_u(1 * u.s, 42300000. * u.m / u.s), fmt='%.8f') 1.01010541 s
- irfpy.util.sprel.time_dilation_u(*args)¶
Unitful version of
time_dilation()
- irfpy.util.sprel.length_contraction(l0, v)[source]¶
Calculate the length contraction (Lorentz contraction)
- Parameters:
l0 – The proper length (length of the object in the rest frame) in
m
.v – Velocity of the object relative to the observer (
m/s
).
- Returns:
l1
, length observed by an observer moving relative to the object (m
).
\[l_1 = \frac{l_0}{\gamma}\]>>> print('%.4f' % length_contraction(1, 13400000.)) 0.9990 >>> print('%.4f' % length_contraction(1, 42300000.)) 0.9900
Unitful version, too.
>>> u.pprint(length_contraction_u(1 * u.km, 42300 * u.km / u.s).rescale(u.km), fmt='%.9f') 0.989995689 km
- irfpy.util.sprel.length_contraction_u(*args)¶
Unitful version of
length_contraction()
.
- irfpy.util.sprel.energy(m)[source]¶
Return the total energy
- Parameters:
m – Mass of the object in
kg
.- Returns:
The rest energy, E, in
J
.
\[E = m c^2\]>>> me = 9.11e-31 # Electron mass >>> print('%.3e' % energy(me)) 8.188e-14
>>> ene_u = energy_u(me * u.kg) >>> print('%.3f keV' % ene_u.r(u.keV)) 511.034 keV
>>> print('%.3f MeV' % energy_u(u.k.proton_mass).r(u.MeV)) 938.272 MeV