Skip to content

Commit

Permalink
removed ParticleSpinors
Browse files Browse the repository at this point in the history
  • Loading branch information
Uwe Hernandez Acosta committed Sep 14, 2024
1 parent 3c4b7af commit a4b4f5d
Show file tree
Hide file tree
Showing 6 changed files with 92 additions and 272 deletions.
9 changes: 0 additions & 9 deletions src/QEDcore.jl
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,10 @@ export BiSpinor, AdjointBiSpinor, DiracMatrix
export gamma, GAMMA, DiracGammaRepresentation, slashed

# particle types
export AbstractParticleSpinor
export FermionLike, Fermion, AntiFermion, MajoranaFermion
export BosonLike, Boson, AntiBoson, MajoranaBoson
export Electron, Positron, Photon

# particle spinors
export BASE_PARTICLE_SPINOR, BASE_ANTIPARTICLE_SPINOR
export IncomingFermionSpinor,
OutgoingFermionSpinor, IncomingAntiFermionSpinor, OutgoingAntiFermionSpinor
export SpinorU, SpinorUbar, SpinorV, SpinorVbar
export @valid_spinor_input

# particle base states
export base_state

Expand Down Expand Up @@ -58,6 +50,5 @@ include("algebraic_objects/gamma_matrices.jl")
include("particles/particle_types.jl")
include("particles/propagators.jl")
include("particles/states.jl")
include("particles/spinors.jl")

end
47 changes: 20 additions & 27 deletions src/particles/particle_types.jl
Original file line number Diff line number Diff line change
@@ -1,17 +1,10 @@
###############
# The particle types
# The particle types
#
# In this file, we define the types of particles, their states and directions, and
# implement the abstact particle interface accordingly.
# implement the abstact particle interface accordingly.
###############

"""
AbstractParticleSpinor
TBW
"""
abstract type AbstractParticleSpinor end

"""
Abstract base types for particle species that act like fermions in the sense of particle statistics.
Expand All @@ -24,10 +17,10 @@ QEDbase.is_fermion(::FermionLike) = true

"""
Abstract base type for fermions as distinct from [`AntiFermion`](@ref)s.
!!! note "particle interface"
All subtypes of `Fermion` have
```julia
```julia
is_fermion(::Fermion) = true
is_particle(::Fermion) = true
is_anti_particle(::Fermion) = false
Expand All @@ -44,8 +37,8 @@ QEDbase.is_anti_particle(::Fermion) = false
Abstract base type for anti-fermions as distinct from its particle counterpart `Fermion`.
!!! note "particle interface"
All subtypes of `AntiFermion` have
```julia
All subtypes of `AntiFermion` have
```julia
is_fermion(::AntiFermion) = true
is_particle(::AntiFermion) = false
is_anti_particle(::AntiFermion) = true
Expand All @@ -61,13 +54,13 @@ QEDbase.is_anti_particle(::AntiFermion) = true
Abstract base type for majorana-fermions, i.e. fermions which are their own anti-particles.
!!! note "particle interface"
All subtypes of `MajoranaFermion` have
```julia
All subtypes of `MajoranaFermion` have
```julia
is_fermion(::MajoranaFermion) = true
is_particle(::MajoranaFermion) = true
is_anti_particle(::MajoranaFermion) = true
```
"""
abstract type MajoranaFermion <: FermionLike end

Expand All @@ -76,7 +69,7 @@ QEDbase.is_particle(::MajoranaFermion) = true
QEDbase.is_anti_particle(::MajoranaFermion) = true

"""
Concrete type for *electrons* as a particle species. Mostly used for dispatch.
Concrete type for *electrons* as a particle species. Mostly used for dispatch.
```jldoctest
julia> using QEDcore
Expand All @@ -99,7 +92,7 @@ QEDbase.charge(::Electron) = -1.0
Base.show(io::IO, ::Electron) = print(io, "electron")

"""
Concrete type for *positrons* as a particle species. Mostly used for dispatch.
Concrete type for *positrons* as a particle species. Mostly used for dispatch.
```jldoctest
julia> using QEDcore
Expand All @@ -122,8 +115,8 @@ QEDbase.charge(::Positron) = 1.0
Base.show(io::IO, ::Positron) = print(io, "positron")

"""
Abstract base types for particle species that act like bosons in the sense of particle statistics.
Abstract base types for particle species that act like bosons in the sense of particle statistics.
!!! note "particle interface"
Every concrete subtype of `BosonLike` has `is_boson(::BosonLike) = true`.
"""
Expand All @@ -133,10 +126,10 @@ QEDbase.is_boson(::BosonLike) = true

"""
Abstract base type for bosons as distinct from its anti-particle counterpart [`AntiBoson`](@ref).
!!! note "particle interface"
All subtypes of `Boson` have
```julia
```julia
is_boson(::Boson) = true
is_particle(::Boson) = true
is_anti_particle(::Boson) = false
Expand All @@ -148,10 +141,10 @@ QEDbase.is_anti_particle(::Boson) = false

"""
Abstract base type for anti-bosons as distinct from its particle counterpart [`Boson`](@ref).
!!! note "particle interface"
All subtypes of `AntiBoson` have
```julia
```julia
is_boson(::AntiBoson) = true
is_particle(::AntiBoson) = false
is_anti_particle(::AntiBoson) = true
Expand All @@ -165,8 +158,8 @@ QEDbase.is_anti_particle(::AntiBoson) = true
Abstract base type for majorana-bosons, i.e. bosons which are their own anti-particles.
!!! note "particle interface"
All subtypes of `MajoranaBoson` have
```julia
All subtypes of `MajoranaBoson` have
```julia
is_boson(::MajoranaBoson) = true
is_particle(::MajoranaBoson) = true
is_anti_particle(::MajoranaBoson) = true
Expand All @@ -177,7 +170,7 @@ QEDbase.is_particle(::MajoranaBoson) = true
QEDbase.is_anti_particle(::MajoranaBoson) = true

"""
Concrete type for the *photons* as a particle species. Mostly used for dispatch.
Concrete type for the *photons* as a particle species. Mostly used for dispatch.
```jldoctest
julia> using QEDcore
Expand Down
121 changes: 0 additions & 121 deletions src/particles/spinors.jl

This file was deleted.

88 changes: 0 additions & 88 deletions test/particles/spinors.jl

This file was deleted.

Loading

0 comments on commit a4b4f5d

Please sign in to comment.