Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

removed ParticleSpinors #61

Merged
merged 4 commits into from
Oct 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading