Skip to content

Commit

Permalink
Implement incoming/outgoing spins/pols correctly
Browse files Browse the repository at this point in the history
Use multiplicity in averaging_norm of Compton
CI_UNIT_PKG_URL_QEDbase: https://github.com/AntonReinhard/QEDbase.jl#d2740177b1abe4ab2f5ca2693dd53ae307865024
  • Loading branch information
AntonReinhard committed Aug 13, 2024
1 parent d185527 commit dff825b
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@ end
We average over the initial spins and pols, and sum over final.
"""
function QEDbase._averaging_norm(proc::Compton)
normalizations = multiplicity.(_in_spin_and_pol(proc))
return inv(prod(normalizations))
return inv(incoming_multiplicity(proc))
end

@inline function _all_onshell(psp::PhaseSpacePoint{<:Compton})
Expand Down
12 changes: 10 additions & 2 deletions src/processes/one_photon_compton/process.jl
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,22 @@ _spins(proc::Compton) = (proc.in_spin, proc.out_spin)
_in_spin_and_pol(proc::Compton) = (proc.in_spin, proc.in_pol)
_out_spin_and_pol(proc::Compton) = (proc.out_spin, proc.out_pol)

function QEDprocesses.incoming_particles(::Compton)
function QEDbase.incoming_particles(::Compton)
return (Electron(), Photon())
end

function QEDprocesses.outgoing_particles(::Compton)
function QEDbase.outgoing_particles(::Compton)
return (Electron(), Photon())
end

function QEDbase.incoming_spin_pols(proc::Compton)
return (proc.in_spin, proc.in_pol)
end

function QEDbase.outgoing_spin_pols(proc::Compton)
return (proc.out_spin, proc.out_pol)
end

function _spin_or_pol(process::Compton, ::Electron, ::Incoming)
return process.in_spin
end
Expand Down

0 comments on commit dff825b

Please sign in to comment.