/GaussianRandomFields.jl

A package for Gaussian random field generation in Julia

Primary LanguageJuliaOtherNOASSERTION

alt text GaussianRandomFields

Documentation Build Status Coverage
Documentation Documentation Build Status Build status Coverage Coverage Status

GaussianRandomFields is a Julia package to compute and sample from Gaussian random fields.

Key Features

  • Support for stationary separable and non-separable isotropic and anisotropic Gaussian random fields.
  • We provide most standard covariance functions such as Gaussian, Exponential and Matérn covariances. Adding a user-defined covariance function is very easy.
  • Implementation of most common methods to generate Gaussian random fields: Cholesky factorization, eigenvalue decomposition, Karhunen-Loève expansion and circulant embedding.
  • Easy generation of Gaussian random fields defined on a Finite Element mesh.
  • Versatile plotting features for easy visualisation of Gaussian random fields using Plots.jl.

Installation

GaussianRandomFields is a registered package and so can be installed via

] add GaussianRandomFields

Usage

  • See the Tutorial for an introduction on how to use this package (including fancy pictures!)
  • See the API for a detailed manual

References

[1] Lord, G. J., Powell, C. E. and Shardlow, T. An introduction to computational stochastic PDEs. No. 50. Cambridge University Press, 2014.

[2] Graham, I. G., Kuo, F. Y., Nuyens, D., Scheichl, R. and Sloan, I.H. Analysis of circulant embedding methods for sampling stationary random fields. SIAM Journal on Numerical Analysis 56(3), pp. 1871-1895, 2018.

[3] Le Maître, O. and Knio, M. O. Spectral methods for uncertainty quantification: with applications to computational fluid dynamics. Springer Science & Business Media, 2010.

[4] Baker, C. T. The numerical treatment of integral equations. Clarendon Press, 1977.

[5] Betz, W., Papaioannou I. and Straub, D. Numerical methods for the discretization of random fields by means of the Karhunen–Loève expansion. Computer Methods in Applied Mechanics and Engineering 271, pp. 109-129, 2014.