pub struct SammyInpConfig {Show 19 fields
pub title: String,
pub isotope_symbol: String,
pub awr: f64,
pub energy_min_ev: f64,
pub energy_max_ev: f64,
pub temperature_k: f64,
pub flight_path_m: f64,
pub delta_l_sammy: f64,
pub delta_e_sammy: f64,
pub delta_g_sammy: f64,
pub no_broadening: bool,
pub broadening_delta_l: Option<f64>,
pub broadening_delta_g: Option<f64>,
pub broadening_delta_e: Option<f64>,
pub scattering_radius_fm: f64,
pub thickness_atoms_barn: f64,
pub target_spin: f64,
pub spin_groups: Vec<SammySpinGroup>,
pub observation_type: SammyObservationType,
}Expand description
Beamline and sample configuration from a SAMMY .inp file.
Fields§
§title: String§isotope_symbol: StringIsotope symbol as written in the file (e.g. “60NI”, “FE56”).
awr: f64Atomic weight ratio (target mass / neutron mass).
energy_min_ev: f64Lower energy bound for resonance range (eV).
energy_max_ev: f64Upper energy bound for resonance range (eV).
temperature_k: f64Sample temperature (K).
flight_path_m: f64Flight path length (m).
delta_l_sammy: f64Card 5, field 3: Deltal — flight path uncertainty (SAMMY units).
Maps to rslRes parameter 1 → Bo2 in SAMMY’s resolution broadening.
SAMMY Ref: minp06.f90 line 226.
delta_e_sammy: f64Card 5, field 4: Deltae — exponential tail parameter (SAMMY units).
Maps to rslRes parameter 3 → Co2 in SAMMY’s resolution broadening. When zero, no exponential broadening is applied (Iesopr=1, pure Gaussian).
delta_g_sammy: f64Card 5, field 5: Deltag — timing uncertainty (SAMMY units).
Maps to rslRes parameter 2 → Ao2 in SAMMY’s resolution broadening.
no_broadening: boolWhen true, broadening is explicitly disabled for this case
(e.g., BROADENING IS NOT WANTED or NO LOW-ENERGY BROADENING).
broadening_delta_l: Option<f64>BROADENING card override for Deltal (rslRes param 1).
Non-zero values override Card 5 delta_l_sammy.
SAMMY Ref: minp18.f90 lines 89-94.
broadening_delta_g: Option<f64>BROADENING card override for Deltag (rslRes param 2).
broadening_delta_e: Option<f64>BROADENING card override for Deltae (rslRes param 3).
scattering_radius_fm: f64Scattering radius (fm).
thickness_atoms_barn: f64Sample thickness (atoms/barn).
target_spin: f64Target nuclear spin I. Determines the statistical weight g_J = (2J+1) / ((2I+1)(2s+1)). Parsed from field 6 of the spin group header in Card Set 10 (all headers should agree). Defaults to 0.0 (even-even nuclei like Fe-56, Ni-58, Ni-60).
spin_groups: Vec<SammySpinGroup>Spin group definitions.
observation_type: SammyObservationTypeObservation type (Transmission, TotalCrossSection, or Fission).
Implementations§
Source§impl SammyInpConfig
impl SammyInpConfig
Sourcepub fn effective_delta_l(&self) -> f64
pub fn effective_delta_l(&self) -> f64
Effective Deltal: BROADENING card override if non-zero, else Card 5.
Sourcepub fn effective_delta_g(&self) -> f64
pub fn effective_delta_g(&self) -> f64
Effective Deltag: BROADENING card override if non-zero, else Card 5.
Sourcepub fn effective_delta_e(&self) -> f64
pub fn effective_delta_e(&self) -> f64
Effective Deltae: BROADENING card override if non-zero, else Card 5.
Trait Implementations§
Source§impl Clone for SammyInpConfig
impl Clone for SammyInpConfig
Source§fn clone(&self) -> SammyInpConfig
fn clone(&self) -> SammyInpConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more