constants.py API¶
bh_molecule.constants
¶
Molecular constants for BH A–X system (units: cm^-1).
This module defines a typed container MolecularConstants and the preset
parameter sets BH_X (X^1Σ^+) and BH_A (A^1Π).
The field names are explicit for learners (e.g., omega_e_x_e) and come with
spectroscopy-friendly aliases (we, wexe, Be, etc.) so both camps are happy.
All values are in wavenumbers (cm^-1).
These parameters are intended for rovibronic term-value calculations as used by bh_molecule.physics.BHModel.
Attributes¶
BALMER_LINES_NM: Dict[str, float] = {'H_alpha': 656.279, 'H_beta': 486.133, 'H_gamma': 434.0462, 'H_delta': 410.174}
module-attribute
¶
BH_A = MolecularConstants(T_e=23135.8, omega_e=2250.9, omega_e_x_e=56.66, omega_e_y_e=(-15.83), B_e=12.295, alpha_e=0.8346, D_e=0.001451, beta_e=0.0)
module-attribute
¶
BH_CONSTANTS: Dict[str, MolecularConstants] = {'X': BH_X, 'A': BH_A}
module-attribute
¶
BH_X = MolecularConstants(T_e=0.0, omega_e=2366.9, omega_e_x_e=49.39, omega_e_y_e=0.364, B_e=12.021, alpha_e=0.412, D_e=0.001242, beta_e=(-2.6e-05))
module-attribute
¶
Classes¶
MolecularConstants
dataclass
¶
Dunham-like rovibrational constants (units: cm^-1).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
T_e
|
float
|
Electronic term origin. |
required |
omega_e
|
float
|
Harmonic vibrational constant (ω_e). |
required |
omega_e_x_e
|
float
|
Anharmonicity (ω_e x_e). |
required |
omega_e_y_e
|
float
|
Higher-order anharmonicity (ω_e y_e). |
required |
B_e
|
float
|
Rotational constant at equilibrium (B_e). |
required |
alpha_e
|
float
|
Rotation–vibration coupling (α_e). |
required |
D_e
|
float
|
Centrifugal distortion (D_e). |
required |
beta_e
|
float
|
Vibration dependence of D_e (β_e). |
required |
Attributes:
| Name | Type | Description |
|---|---|---|
Te |
float
|
Alias of T_e. |
we |
float
|
Alias of omega_e. |
wexe |
float
|
Alias of omega_e_x_e. |
weye |
float
|
Alias of omega_e_y_e. |
Be |
float
|
Alias of B_e. |
De |
float
|
Alias of D_e. |
alphae |
float
|
Alias of alpha_e. |
betae |
float
|
Alias of beta_e. |
Attributes¶
B_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Rotational const at equilibrium (B_e)'})
class-attribute
instance-attribute
¶
Be: float
property
¶
D_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Centrifugal distortion (D_e)'})
class-attribute
instance-attribute
¶
De: float
property
¶
T_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Electronic term origin (T_e)'})
class-attribute
instance-attribute
¶
Te: float
property
¶
alpha_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Rotation–vibration coupling (α_e)'})
class-attribute
instance-attribute
¶
alphae: float
property
¶
beta_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Vibration dependence of D_e (β_e)'})
class-attribute
instance-attribute
¶
betae: float
property
¶
omega_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Harmonic vibrational const (ω_e)'})
class-attribute
instance-attribute
¶
omega_e_x_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Anharmonicity (ω_e x_e)'})
class-attribute
instance-attribute
¶
omega_e_y_e: float = field(metadata={'unit': 'cm^-1', 'desc': 'Higher-order anharmonicity (ω_e y_e)'})
class-attribute
instance-attribute
¶
we: float
property
¶
wexe: float
property
¶
weye: float
property
¶
Functions¶
as_dict() -> Dict[str, Any]
¶
as_table() -> str
¶
Molecular constants for BH A–X system: MolecularConstants, BH_X, and BH_A (units: cm⁻¹).