Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

fourierbasis

Fourier Basis Functions


Description

Evaluates the Fourier basis functions on a d-dimensional box with d-dimensional frequencies k_i at the d-dimensional coordinates x_j.

Usage

fourierbasis(x, k, win = boxx(rep(list(0:1), ncol(k))))
  fourierbasisraw(x, k, boxlengths)

Arguments

x

Coordinates. A data.frame or matrix with n rows and d columns giving the d-dimensional coordinates.

k

Frequencies. A data.frame or matrix with m rows and d columns giving the frequencies of the Fourier-functions.

win

window (of class "owin", "box3" or "boxx") giving the d-dimensional box domain of the Fourier functions.

boxlengths

numeric giving the side lengths of the box domain of the Fourier functions.

Details

The result is an m by n matrix where the (i,j)'th entry is the d-dimensional Fourier basis function with frequency k_i evaluated at the point x_j, i.e.,

1/sqrt(|W|) * exp(2*pi*i*(k_{i,1}*x_{j,1}/L_1 + ... + k_{i,d}*x_{j,d}/L_d))

where L_l, l=1,...,d are the box side lengths and |W| is the volume of the domain (window/box). Note that the algorithm does not check whether the coordinates given in x are contained in the given box. Actually the box is only used to determine the side lengths and volume of the domain for normalization.

The stripped down faster version fourierbasisraw doesn't do checking or conversion of arguments and requires x and k to be matrices.

Value

An m by n matrix of complex values.

Author(s)

and Ege Rubak rubak@math.aau.dk

Examples

## 27 rows of three dimensional Fourier frequencies:
k <- expand.grid(-1:1,-1:1, -1:1)
## Two random points in the three dimensional unit box:
x <- rbind(runif(3),runif(3))
## 27 by 2 resulting matrix:
v <- fourierbasis(x, k)
head(v)

spatstat.geom

Geometrical Functionality of the 'spatstat' Family

v2.1-0
GPL (>= 2)
Authors
Adrian Baddeley [aut, cre], Rolf Turner [aut], Ege Rubak [aut], Tilman Davies [ctb], Ute Hahn [ctb], Abdollah Jalilian [ctb], Sebastian Meyer [ctb], Suman Rakshit [ctb], Dominic Schuhmacher [ctb], Rasmus Waagepetersen [ctb]
Initial release
2021-04-15

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.