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
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: Fractional Octave Band and A, B, C Weighting Filters DF2T SOS IIR Matlab and limited Labview, filt2 2D geospatial data filter, randnd, Noise-Power Spectrum, Nth_Oct_Hand_Arm_&_AC_Filter_Tool_Box
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 | Update for BSD License
|