-
Notifications
You must be signed in to change notification settings - Fork 4
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
Pulsed plane-wave fields #14
Pulsed plane-wave fields #14
Conversation
Currently in draft status, because it depends on QEDjl-project/QEDbase.jl#25 |
… and added mocking file for non-released functionality from QEDbase.jl; the last is temporary.
56236fc
to
e0975ae
Compare
…ation_vectors and oscillators
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review interfaces. Rest is missing. But you do things at the moment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed all files now. Overall very good. Minor questions and comments.
@szabo137 It seems you forgot a few comments. Apart from that, I am mostly fine with your revision. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I addressed all open comments. Hopefully this time, no comment is hiding from me 😅
This PR adds an abstract interface for dealing with pulsed plane-wave fields in the context of pulsed-perturbative QED. As the root type of all background fields, to be used in the strong field part of
QED.jl
, we introduce the abstract base typeAbstractBackgroundField
. However, the interface is currently defined for pulsed plane-wave fields (see below).Definition of the interface
The base type of the interface is
AbstractPulsedPlaneWaveFields
, where the following interface functions are mandatoryThe first three functions are just accessor functions for static properties of the background field. The last function$\phi$ . With that, the following functions were implemented as well
_pulse_envelope
defines the shape of the pulse, and it only needs to be implemented on one single value ofFor each function, which is defined for
phi::Real
orpnum::Real
, the respective version for multiple values, i.e.phi::AbstractVector{<:Real}
andpnum::AbstractVector{<:Real}
is also implemented.For the generic spectrum, the implementation is simply based on
QuadGK
and therefore worthy of improvement.Todos
src/QEDbase_polarisation_mock.jl
before merging this. This needs Move particle definitions from QEDprocesses.jl to QEDbase.jl QEDbase.jl#25 to be merged inQEDbase.jl
and the respective release.QEDbase
generic_spectrum
.