Multipole perturbation

LensFactory.Lenses.init_Multipole — Type
init_Multipole(delta::Real = NaN, 
               angle::Real = NaN, 
               m::Int64    = 2, 
               n::Real     = 2.0)

Initialize multipole perturbations of order ``m''.

Keyword Arguments

  • delta::Real = NaN: Amplitude of multipole perturbations (dimensionless).

  • angle::Real = NaN: Direction of the perturbation (in $\rm \mathbf{degrees}$).

  • m::Int64 = 2: Order of the multipole.

    • m = 1 → dipole (i.e., constant deflection everywhere)
    • m = 2 → quadrupole (i.e., external shear)
    • m = 3 → octupole (i.e., triangular assymmetry)
    • m = 4 → hexadecapole (i.e., boxiness)
  • n::Real = 2.0: Controls perturbation scaling with radius.

source
LensFactory.Lenses.Multipole.potential! — Function
potential!(ψ::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:Real, S<:Real, T<:Real}
source
potential!(ψ::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:ROA, S<:ROA, T<:Real}
source
LensFactory.Lenses.Multipole.deflection! — Function
deflection!(ψx::U, ψy::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:Real, S<:Real, T<:Real}
source
deflection!(ψx::U, ψy::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:ROA, S<:ROA, T<:Real}
source
LensFactory.Lenses.Multipole.jacobian! — Function
jacobian!(ψxx::U, ψyy::U, ψxy::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:Real, S<:Real, T<:Real}
source
jacobian!(ψxx::U, ψyy::U, ψxy::U, θx::S, θy::S, ϵ::T, θϵ::T, m::Int64, n::T) where {U<:ROA, S<:ROA, T<:Real}
source