Isotope

Trait Isotope 

Source
pub trait Isotope: ChemElement {
Show 14 methods // Required methods fn mass_deficit(&self) -> f64; fn binding_energy(&self) -> f64; fn half_life<T: DecayMode>(&self) -> f64; fn mean_lifetime<T: DecayMode>(&self) -> f64; fn decay_string(&self) -> String; fn daughter_energetic<T: DecayMode>(&mut self) -> (f64, Vec<Particle>); fn daughter<T: DecayMode>(&self) -> Option<Self>; fn daughter_theoretical<T: DecayMode>(&self) -> Option<Self>; fn branching_ratio<T: DecayMode>(&self) -> f64; fn decay_constant<T: DecayMode>(&self) -> f64; fn decay_probability<T: DecayMode>(&self, time: f64) -> f64; fn decay_time<T: DecayMode>(&self, time: f64) -> bool; fn decay<T: DecayMode>(&mut self, time: f64) -> (f64, Vec<Particle>); fn decay_q<T: DecayMode>(&self) -> f64;
}
Expand description

Nuclear properties that vary between isotopes

Required Methods§

Source

fn mass_deficit(&self) -> f64

Mass defect or the difference between the empirical mass and the mass of the constituents, in Daltons

Source

fn binding_energy(&self) -> f64

Binding energy in MeV

Source

fn half_life<T: DecayMode>(&self) -> f64

Half-life of nuclide/isomer in seconds. TotalDecay mode returns the half-life, all other modes return the partial half-life

§Nan

Particle is unstable but the selected decay mode is not supported

§Inf

Particle is stable

Source

fn mean_lifetime<T: DecayMode>(&self) -> f64

The mean lifetime of nuclide in seconds

Source

fn decay_string(&self) -> String

Returns the probable decay modes as a string

Source

fn daughter_energetic<T: DecayMode>(&mut self) -> (f64, Vec<Particle>)

Returns the daughter with decay energy

Source

fn daughter<T: DecayMode>(&self) -> Option<Self>

Returns the daughter nuclide

§None

If nuclide has not been observed to decay by the mode, returns None

Source

fn daughter_theoretical<T: DecayMode>(&self) -> Option<Self>

Returns the daughter nuclide,regardless of whether it has been observed

§None

If impossible to decay by the provided mode

Source

fn branching_ratio<T: DecayMode>(&self) -> f64

Probability of the provided Decay mode being taken

§NAN

If Decay Mode is not observed return NAN

Source

fn decay_constant<T: DecayMode>(&self) -> f64

Decay constant in seconds of nuclide/isomer. TotalDecay mode returns the decay constant, all other modes return the partial decay constant

§Nan

Particle is unstable but the selected decay mode is not supported

§Inf

Particle is stable

Source

fn decay_probability<T: DecayMode>(&self, time: f64) -> f64

Returns the probability of the nuclide to decay after the time in seconds provided

Source

fn decay_time<T: DecayMode>(&self, time: f64) -> bool

Checks if nuclide probably decay in the selected time.

Source

fn decay<T: DecayMode>(&mut self, time: f64) -> (f64, Vec<Particle>)

Continously performs decay throughout the time selected, collecting all particles into a vector with decay energies.

Source

fn decay_q<T: DecayMode>(&self) -> f64

Q-value (total energy) of a nuclear decay, regardless of whether it is observed

§NAN

Returns NAN if this decay mode results in a nonexistent nuclide

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§