Generate spatial data

Generate 1/f noise spatial data.
9.1K Downloads
Updated 31 Mar 2016

View License

The script generates spatial data with a scale-invariant power spectrum (1/f noise) and a normal error distribution.
The spectral density of the data is proportional to f^BETA, where f is the frequency and BETA is the spectral exponent (BETA=0 is white noise, BETA=-2 is Brown noise).

To generate Brown noise on a 10x10 grid you type

spatialPattern([10,10],-2)

which gives a 10x10 matrix containihng the data.

1/f noise is not stationary, and so doesn't have a well defined variance. A variogram of the data show variance linearly increasing with increasing lag.

Time series data can also be generated. For example, a pink noise time series of lenth 1000 is produced by

spatialPattern([1000,1],-1)

Cite As

Jon Yearsley (2024). Generate spatial data (https://www.mathworks.com/matlabcentral/fileexchange/5091-generate-spatial-data), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R13
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Periodic Waveform Generation in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Version Published Release Notes
1.0.0.0

Update for BSD License
The original script defined beta to be a factor of two different from standard value. This has now been corrected.