Voigt: The Voigt function, corresponding to the convolution of a...

View source: R/Voigt.R

VoigtR Documentation

The Voigt function, corresponding to the convolution of a lorentzian and a gaussian distribution

Description

Voigt distribution

Lorentzian distribution

Gaussian distribution

Usage

Voigt(x, x0, sigma, gamma, real = TRUE, ...)

Lorentz(x, x0, gamma)

Gauss(x, x0, sigma)

Arguments

x

numeric vector

x0

scalar, peak position

sigma

parameter of the gaussian

gamma

parameter of the lorentzian

real

logical, return only the real part of the complex Faddeeva

...

passed to Faddeeva_w

Value

numeric or complex vector

Functions

  • Voigt: Voigt lineshape function

  • Lorentz: Lorentzian lineshape function

  • Gauss: Gaussian lineshape function

Author(s)

baptiste Auguie

Examples

## should integrate to 1 in all cases
integrate(Lorentz, -Inf, Inf, x0=200, gamma=100)
integrate(Gauss, -Inf, Inf, x0=200, sigma=50)
integrate(Voigt, -Inf, Inf, x0=200, sigma=50, gamma=100)

## visual comparison
x <- seq(-1000, 1000)
x0 <- 200
l <- Lorentz(x, x0, 30)
g <- Gauss(x, x0, 100)
N <- length(x)
c <- convolve(Gauss(x, 0, 100), 
              rev(Lorentz(x, x0, 30)), type="o")[seq(N/2, length=N)]
v <- Voigt(x, x0, 100, 30)
matplot(x, cbind(v, l, g, c), t="l", lty=c(1,2,2,1), xlab="x", ylab="")
legend("topleft", legend = c("Voigt", "Lorentz", "Gauss", "Convolution"), bty="n",
       lty=c(1,2,2,1), col=1:4)

RcppFaddeeva documentation built on May 30, 2022, 5:07 p.m.