R: Integration of the Isotropic Gaussian Density over Circular...

circleCub.Gauss {polyCub} | R Documentation

## Integration of the Isotropic Gaussian Density over Circular Domains

### Description

This function calculates the integral of the bivariate, isotropic Gaussian density (i.e., Σ = `sd^2*diag(2)`) over a circular domain via the cumulative distribution function `pchisq` of the (non-central) Chi-Squared distribution (Abramowitz and Stegun, 1972, Formula 26.3.24).

### Usage

    circleCub.Gauss(center, r, mean, sd)

### Arguments

`center` | numeric vector of length 2 (center of the circle).
`r` | numeric (radius of the circle). Several radii may be supplied.
`mean` | numeric vector of length 2 (mean of the bivariate Gaussian density).
`sd` | numeric (common standard deviation of the isotropic Gaussian density in both dimensions).

### Value

The integral value (one for each supplied radius).

### Note

The non-centrality parameter of the evaluated chi-squared distribution equals the squared distance between the `mean` and the `center`. If this becomes too large, the result becomes inaccurate, see `pchisq`.

### References

Abramowitz, M. and Stegun, I. A. (1972). Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. New York: Dover Publications.

### Examples

    circleCub.Gauss(center=c(1,2), r=3, mean=c(4,5), sd=6)

    if (requireNamespace("mvtnorm") && gpclibPermit() && requireNamespace("spatstat.geom")) {
      ## compare with cubature over a polygonal approximation of a circle
      disc.poly <- spatstat.geom::disc(radius=3, centre=c(1,2), npoly=32)
      polyCub.exact.Gauss(disc.poly, mean=c(4,5), Sigma=6^2*diag(2))
    }

[Package polyCub version 0.8.0 Index]