epyr.physics.constants
Physical constants for EPR/NMR spectroscopy All values from 2022 CODATA recommendations with proper units and uncertainties Constants available in both SI and CGS units.
Functions
|
Avogadro constant in SI units (mol⁻¹). |
|
Bohr magneton in SI units (J T⁻¹). |
|
Boltzmann constant in SI units (J⋅K⁻¹). |
|
Speed of light in vacuum in SI units (m⋅s⁻¹). |
Print summary of all physical constants with units and values. |
|
|
Elementary charge in SI units (C). |
|
Electron volt in SI units (J). |
|
Convert frequency to magnetic field. |
|
Calculate gyromagnetic ratio in Hz/T for any g-factor. |
|
Free electron g-factor (dimensionless). |
|
Reduced Planck constant ℏ = h/(2π) in SI units (J⋅s). |
|
Convert magnetic field to resonance frequency. |
|
Nuclear magneton in SI units (J⋅T⁻¹). |
|
Planck constant in SI units (J⋅s = J⋅Hz⁻¹). |
|
Thermal energy k_B T at given temperature. |
|
Convert wavelength to frequency. |
- epyr.physics.constants.gfree(return_uncertainty=False)[source]
Free electron g-factor (dimensionless).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Free electron g-factor (dimensionless)
References:
2022 CODATA recommended values
- epyr.physics.constants.bmagn(return_uncertainty=False)[source]
Bohr magneton in SI units (J T⁻¹).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Bohr magneton in J T⁻¹
References:
2022 CODATA recommended values
- epyr.physics.constants.planck()[source]
Planck constant in SI units (J⋅s = J⋅Hz⁻¹).
Returns:
- float
Planck constant in J⋅s
References:
2019 SI redefinition, exact value
- Return type:
- epyr.physics.constants.hbar()[source]
Reduced Planck constant ℏ = h/(2π) in SI units (J⋅s).
Returns:
- float
Reduced Planck constant in J⋅s
- Return type:
- epyr.physics.constants.clight()[source]
Speed of light in vacuum in SI units (m⋅s⁻¹).
Returns:
- float
Speed of light in m⋅s⁻¹
References:
1983 SI redefinition, exact value
- Return type:
- epyr.physics.constants.boltzm(return_uncertainty=False)[source]
Boltzmann constant in SI units (J⋅K⁻¹).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Boltzmann constant in J⋅K⁻¹
References:
2019 SI redefinition, exact value
- epyr.physics.constants.avogadro(return_uncertainty=False)[source]
Avogadro constant in SI units (mol⁻¹).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Avogadro constant in mol⁻¹
References:
2019 SI redefinition, exact value
- epyr.physics.constants.nmagn(return_uncertainty=False)[source]
Nuclear magneton in SI units (J⋅T⁻¹).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Nuclear magneton in J⋅T⁻¹
References:
2022 CODATA recommended values
- epyr.physics.constants.echarge(return_uncertainty=False)[source]
Elementary charge in SI units (C).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Elementary charge in C
References:
2019 SI redefinition, exact value
- epyr.physics.constants.evolt(return_uncertainty=False)[source]
Electron volt in SI units (J).
Parameters:
- return_uncertaintybool
If True, return (value, standard_uncertainty)
Returns:
- float or tuple
Electron volt in J
References:
2019 SI redefinition, exact value (e × 1V)
- epyr.physics.constants.gamma_hz(g_factor=None)[source]
Calculate gyromagnetic ratio in Hz/T for any g-factor.
The gyromagnetic ratio relates frequency to magnetic field: ν = γ B where γ = g μ_B / h
Parameters:
- g_factorfloat, optional
g-factor (defaults to free electron g-factor)
Returns:
- float
Gyromagnetic ratio in Hz/T
Examples:
>>> # Free electron gyromagnetic ratio >>> gamma_e = gamma_hz() >>> print(f"Free electron: {gamma_e:.3e} Hz/T")
>>> # Custom g-factor >>> gamma_custom = gamma_hz(2.005) >>> print(f"g=2.005: {gamma_custom:.3e} Hz/T")
>>> # Calculate resonance frequency >>> B = 0.34 # Tesla (X-band field) >>> freq = gamma_hz() * B >>> print(f"X-band frequency: {freq/1e9:.2f} GHz")
- epyr.physics.constants.magnetic_field_to_frequency(B_tesla, g_factor=None)[source]
Convert magnetic field to resonance frequency.
Uses the fundamental EPR/NMR relation: ν = γB = gμ_B B/h
Parameters:
- B_teslafloat
Magnetic field in Tesla
- g_factorfloat, optional
g-factor (defaults to free electron g-factor)
Returns:
- float
Resonance frequency in Hz
Examples:
>>> # X-band EPR at ~9.5 GHz >>> B = 0.34 # Tesla >>> freq = magnetic_field_to_frequency(B) # Hz >>> print(f"Frequency: {freq/1e9:.2f} GHz")
- epyr.physics.constants.frequency_to_magnetic_field(freq_hz, g_factor=None)[source]
Convert frequency to magnetic field.
Parameters:
- freq_hzfloat
Frequency in Hz
- g_factorfloat, optional
g-factor (defaults to free electron g-factor)
Returns:
- float
Magnetic field in Tesla
Examples:
>>> # What field for 9.5 GHz EPR? >>> freq = 9.5e9 # Hz >>> B = frequency_to_magnetic_field(freq) >>> print(f"Magnetic field: {B*1000:.1f} mT")
- epyr.physics.constants.thermal_energy(temperature_k)[source]
Thermal energy k_B T at given temperature.
Parameters:
- temperature_kfloat
Temperature in Kelvin
Returns:
- float
Thermal energy in J
Examples:
>>> # Room temperature thermal energy >>> E_thermal = thermal_energy(295) # K >>> print(f"kT = {E_thermal/(1.602176634e-19):.3f} meV")
- epyr.physics.constants.wavelength_to_frequency(wavelength_m)[source]
Convert wavelength to frequency.
Parameters:
- wavelength_mfloat
Wavelength in meters
Returns:
- float
Frequency in Hz
Examples:
>>> # 3 cm microwave wavelength >>> freq = wavelength_to_frequency(0.03) # m >>> print(f"Frequency: {freq/1e9:.1f} GHz")