pub enum VertexProposal {
TwoBodyDecay,
TwoBodyScattering {
proposal: TwoBodyScattering,
},
}Expand description
Kinematic proposal attached to a channel vertex.
Variants§
TwoBodyDecay
Generate an isotropic one-to-two decay.
TwoBodyScattering
Generate two-to-two scattering from a transfer distribution.
Fields
§
proposal: TwoBodyScatteringScattering proposal configuration.
Implementations§
Source§impl VertexProposal
impl VertexProposal
Sourcepub fn isotropic_decay() -> Self
pub fn isotropic_decay() -> Self
Construct an isotropic two-body decay proposal.
Sourcepub fn t_exchange(
pairing: (impl Into<String>, impl Into<String>),
distribution: TDistribution,
) -> Self
pub fn t_exchange( pairing: (impl Into<String>, impl Into<String>), distribution: TDistribution, ) -> Self
Construct a two-body scattering proposal distributed in momentum transfer.
Sourcepub fn propose(
&self,
incoming: &[NamedMomentum<'_>],
outgoing: &[NamedMass<'_>],
rng: &mut ProposalRng,
) -> LadduPhysicsResult<ProposalResult>
pub fn propose( &self, incoming: &[NamedMomentum<'_>], outgoing: &[NamedMass<'_>], rng: &mut ProposalRng, ) -> LadduPhysicsResult<ProposalResult>
Propose outgoing kinematics for a vertex.
§Errors
Returns LadduPhysicsError when the incoming or outgoing topology,
masses, or kinematics are invalid for the selected proposal.
Trait Implementations§
Source§impl Clone for VertexProposal
impl Clone for VertexProposal
Source§fn clone(&self) -> VertexProposal
fn clone(&self) -> VertexProposal
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for VertexProposal
impl Debug for VertexProposal
Source§impl Default for VertexProposal
impl Default for VertexProposal
Source§fn default() -> VertexProposal
fn default() -> VertexProposal
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for VertexProposal
impl<'de> Deserialize<'de> for VertexProposal
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<TwoBodyScattering> for VertexProposal
impl From<TwoBodyScattering> for VertexProposal
Source§fn from(proposal: TwoBodyScattering) -> Self
fn from(proposal: TwoBodyScattering) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for VertexProposal
impl RefUnwindSafe for VertexProposal
impl Send for VertexProposal
impl Sync for VertexProposal
impl Unpin for VertexProposal
impl UnsafeUnpin for VertexProposal
impl UnwindSafe for VertexProposal
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.