Particles
Particle Types
The following are subtypes of QEDbase.AbstractParticleType
(@extref).
For all these types the corresponding interface is implemented, including QEDbase.base_state
(@extref) and QEDbase.propagator
(@extref).
QEDcore.FermionLike
— TypeAbstract base types for particle species that act like fermions in the sense of particle statistics.
Every concrete subtype of FermionLike
has is_fermion(::FermionLike) = true
.
QEDcore.BosonLike
— TypeAbstract base types for particle species that act like bosons in the sense of particle statistics.
Every concrete subtype of BosonLike
has is_boson(::BosonLike) = true
.
QEDcore.MajoranaFermion
— TypeAbstract base type for majorana-fermions, i.e. fermions which are their own anti-particles.
All subtypes of MajoranaFermion
have
is_fermion(::MajoranaFermion) = true
is_particle(::MajoranaFermion) = true
is_anti_particle(::MajoranaFermion) = true
QEDcore.MajoranaBoson
— TypeAbstract base type for majorana-bosons, i.e. bosons which are their own anti-particles.
All subtypes of MajoranaBoson
have
is_boson(::MajoranaBoson) = true
is_particle(::MajoranaBoson) = true
is_anti_particle(::MajoranaBoson) = true
QEDcore.Fermion
— TypeAbstract base type for fermions as distinct from AntiFermion
s.
All subtypes of Fermion
have
is_fermion(::Fermion) = true
is_particle(::Fermion) = true
is_anti_particle(::Fermion) = false
QEDcore.Boson
— TypeAbstract base type for bosons as distinct from its anti-particle counterpart AntiBoson
.
All subtypes of Boson
have
is_boson(::Boson) = true
is_particle(::Boson) = true
is_anti_particle(::Boson) = false
QEDcore.AntiFermion
— TypeAbstract base type for anti-fermions as distinct from its particle counterpart Fermion
.
All subtypes of AntiFermion
have
is_fermion(::AntiFermion) = true
is_particle(::AntiFermion) = false
is_anti_particle(::AntiFermion) = true
QEDcore.AntiBoson
— TypeAbstract base type for anti-bosons as distinct from its particle counterpart Boson
.
All subtypes of AntiBoson
have
is_boson(::AntiBoson) = true
is_particle(::AntiBoson) = false
is_anti_particle(::AntiBoson) = true
QEDcore.Electron
— TypeConcrete type for electrons as a particle species. Mostly used for dispatch.
julia> using QEDcore
julia> Electron()
electron
Besides being a subtype of Fermion
, objects of type Electron
have
mass(::Electron) = 1.0
charge(::Electron) = -1.0
QEDcore.Positron
— TypeConcrete type for positrons as a particle species. Mostly used for dispatch.
julia> using QEDcore
julia> Positron()
positron
Besides being a subtype of AntiFermion
, objects of type Positron
have
mass(::Positron) = 1.0
charge(::Positron) = 1.0
QEDcore.Photon
— TypeConcrete type for the photons as a particle species. Mostly used for dispatch.
julia> using QEDcore
julia> Photon()
photon
Besides being a subtype of MajoranaBoson
, Photon
has
mass(::Photon) = 0.0
charge(::Photon) = 0.0