Raman.jl
Luna.Raman.AbstractRamanResponse
— Method(R::AbstractRamanResponse)(t, ρ)
Get the full response function at time t
and density ̢ρ
.
Luna.Raman.RamanRespIntermediateBroadening
— TypeRamanRespIntermediateBroadening(ωi, Ai, Γi, γi, scale)
Construct an intermediate broadened model with component positions ωi
[rad/s], amplitudes Ai
, Gaussian widths Γi
[rad/s] and Lorentzian widths γi
[rad/s]. The overall response is scaled by scale
. Based on Hollenbeck and Cantrell, "Multiple-vibrational-mode model for fiber-optic Raman gain spectrum and response function", J. Opt. Soc. Am. B/Vol. 19, No. 12/December 2002.
Luna.Raman.RamanRespRotationalNonRigid
— MethodRamanRespRotationalNonRigid(B, Δα, τ2, qJodd, qJeven;
D=0.0, minJ=0, maxJ=50, temp=roomtemp,
τ2=nothing, Bρ=nothing, Aρ=nothing)
Construct a rotational nonrigid rotor Raman model.
Arguments
B::Real
: the rotational constant [1/m]Δα::Real
: molecular polarizability anisotropy [m^3]qJodd::Integer
: nuclear spin parameter for oddJ
qJeven::Integer
: nuclear spin parameter for evenJ
D::Real=0.0
: centrifugal constant [1/m]minJ::Integer=0
: J value to start atmaxJ::Integer=50
: J value to sum untiltemp::Real=roomtemp
: temperatureτ2::Real=nothing
: coherence time [s]Bρ::Real=nothing
: density dependent broadening coefficient [Hz/amagat]Aρ::Real=nothing
: self diffusion coefficient [Hz amagat]
Only one of τ2
or Bρ
should be specified. If Bρ
is specified then Aρ
must be too.
References
- Full model description: Laser & Photonics Reviews, 16, p. 2100426, (2022) doi: 10.1002/lpor.202100426.
- We followed closely: Phys. Rev. A, vol. 92, no. 6, p. 063828, Dec. 2015, But note that that paper uses weird units, and we converted it to SI for the above reference.
Luna.Raman.RamanRespNormedSingleDampedOscillator
— MethodRamanRespNormedSingleDampedOscillator(K, Ω, τ2)
Construct a simple normalised single damped oscillator model with scale factor K
, angular frequency Ω
and density independent coherence time τ2
.
The scale factor K
is applied after normalising the integral of the response function to unity.
Luna.Raman.RamanRespVibrational
— MethodRamanRespVibrational(Ωv, dαdQ, μ; τ2=nothing, Bρ=nothing, Aρ=nothing)
Construct a molecular vibrational Raman model (single damped oscillator).
Arguments
Ωv::Real
: vibrational frequency [rad/s]dαdQ::Real
: isotropic averaged polarizability derivative [m^2]μ::Real
: reduced molecular mass [kg]τ2::Real=nothing
: coherence time [s]Bρ::Real=nothing
: density dependent broadening coefficient [Hz/amagat]Aρ::Real=nothing
: self diffusion coefficient [Hz amagat]C::Real=0
: constant linewidth [Hz]
Only one of τ2
or Bρ
should be specified. If Bρ
is specified then Aρ
must be too.
References
- Full model description: S-.F. Gao, Y-Y. Wang, F. Belli, C. Brahms, P. Wang and J.C. Travers, Laser & Photonics Reviews 16, 2100426 (2022)
- We followed closely: Phys. Rev. A, vol. 92, no. 6, p. 063828, Dec. 2015, But note that that paper uses weird units, and we converted it to SI for the above reference.
Luna.Raman.hrdamp
— Functionhrdamp(R::AbstractRamanResponse, ρ)
Get the damping (dephasing) constant τ2
for density ̢ρ
.
Luna.Raman.hrpre
— Functionhrpre(R::AbstractRamanResponse, t)
Get the pre (without damping) response function at time t
.
Luna.Raman.molecular_raman_response
— Methodmolecular_raman_response(rp; kwargs...)
Get the Raman response function for the Raman parameters in named tuple rp
.
Keyword Arguments
rotation::Bool = true
: whether to include the rotational contributionvibration::Bool = true
: whether to include the vibrational contributionminJ::Integer = 0
: the minimum rotational quantum number to includemaxJ::Integer = 50
: the maximum rotational quantum number to includetemp::Real = roomtemp
: the temperature
Luna.Raman.raman_response
— Functionraman_response(t, material; kwargs...)
Get the Raman response function for time grid t
and the material
.
For details on the keyword arguments see molecular_raman_response
.