Module utils

Module utils 

Source
Expand description

Utility functions and algorithms Utility functions and algorithms module

This module provides various utility functions and algorithms used throughout the crate, including mathematical functions, data structures, and computational methods specific to stochastic process simulations.

Structs§

CirculantEmbedding
Circulant embedding method for generating stationary Gaussian random fields with given correlation functions

Functions§

approx_eq
Check if two floating numbers are approximately equal within a tolerance
cumsum
Calculate the cumulative sum of a vector
diff
Calculate the difference between adjacent elements in an array
eval_poly
Evaluate a polynomial using the Horner method
exponential_correlation
Exponential correlation function: exp(-r/l)
fbm_correlation
Fractional Brownian motion correlation function
flatten_interpolate
Generate a flattened (step function) interpolation over a specified range
float_eq
Check if two floating numbers are equal within the f64 precision
gaussian_correlation
Gaussian correlation function: exp(-(r/l)^2)
is_increasing
Check if an array is non-decreasing
linear_interpolate
Linear interpolation
linspace
Generate a vector of evenly spaced numbers over a specified range
matern_five_half_correlation
Matérn correlation function (nu=5/2): (1 + sqrt(5)r/l + 5r^2/(3*l^2)) * exp(-sqrt(5)*r/l)
matern_half_correlation
Matérn correlation function (nu=1/2): exp(-r/l)
matern_three_half_correlation
Matérn correlation function (nu=3/2): (1 + sqrt(3)*r/l) * exp(-sqrt(3)*r/l)
minmax
find max value and min value in a &[f64]
write_csvio
Write data to a CSV file