Advanced usage
If you need more control over the parameters, you can use the constructors for the laser types directly.
LaserTypes.GaussLaser
— Typestruct GaussLaser <: AbstractLaser
The GaussLaser
is defined by the units
of the laser (a positional argument that can be :SI
, :atomic
or :SI_unitful
and :atomic_unitful
) and the following parameters
λ
is the laser wavelangtha₀
is the normalized vector potential (defined as $a_0=\frac{eA}{m_e c^2}$)ϕ₀
is the initial phase with the default value 0.0w₀
is the beam radius at the Rayleigh range or beam waistξx
andξy
give the polarization and have the default value1.0 + 0im
and0.0 + 0im
orientation
specifies how the laser is oriented with respect to the
default coordinate system (default (:x, :z)
). See LaserGeometry
for more details.
propagation_dir
is the propagation direction of the wave in the
intrinsic coordinate system (default :z
). See LaserGeometry
for more details.
profile
is the temporal profile of the pulse and the default one is constant (infinite pules duration)
During the initialization of the GaussLaser
type, some useful derived values are also computed
ω
is the angular frequency and is given by $2π c / λ$k
is the wavenumber and is given by $2π / λ$z_R
is the Rayleigh range and is given by $k w_0^2 / 2$T₀
is the laser period and is given by $2π / ω$E₀
is the amplitude of the electric field and is given by $a_0\frac{m_q c \omega}{q}$
LaserTypes.LaguerreGaussLaser
— Typestruct LaguerreGaussLaser <: AbstractLaser
The LaguerreGaussLaser
is defined by the units
of the laser (a positional argument that can be :SI
, :atomic
or :SI_unitful
and :atomic_unitful
) and the following parameters
λ
is the laser wavelangtha₀
is the normalized vector potential (defined as $a_0=\frac{eA}{m_e c^2}$)ϕ₀
is the initial phase with the default value 0.0w₀
is the beam radius at the Rayleigh range or beam waistξx
andξy
give the polarization and have the default value1.0 + 0im
and0.0 + 0im
orientation
specifies how the laser is oriented with respect to the
default coordinate system (default (:x, :z)
). See LaserGeometry
for more details.
propagation_dir
is the propagation direction of the wave in the
intrinsic coordinate system (default :z
). See LaserGeometry
for more details.
profile
is the temporal profile of the pulse and the default one is constant (infinite pules duration)p
is the radial index of the mode, $p ∈ ℤ, p ≥ 0$, with the default value 1m
is the azimuthal index of the mode, $m ∈ ℤ$, with the default value 0
During the initialization of the LaguerreGaussLaser
type, some useful derived values are also computed
ω
is the angular frequency and is given by $2π c / λ$k
is the wavenumber and is given by $2π / λ$z_R
is the Rayleigh range and is given by $k w_0^2 / 2$T₀
is the laser period and is given by $2π / ω$E₀
is the amplitude of the electric field and is given by $a_0\frac{m_q c \omega}{q}$Nₚₘ
is a normalization factor given by $\sqrt{(p+1)_{|m|}}$, with $(x)_n$ the Pochhammer symbol
Laser Geometry
LaserTypes.LaserGeometry
— Typestruct LaserGeometry
The geometrical aspects of the laser can be described through its orientation with respect to a given reference system and by its propagation.