A software implementation of half-spectral covariance functions
oops, clean up
Complete re-write, update examples and README.
Add a paperscript file for generating Whittle-type MLEs that can then in



You can also use your local clone with git send-email.


A convenient interface for working with half-spectral covariance functions in the space-time domain. This is part of the software companion to Flexible nonstationary spatio-temporal modeling of high-frequency monitoring data.

See the paper for a discussion of the covariance function itself, and see the example file ./example/basicexample.jl for an example of creating a kernel that you can then call as a regular function. The example file ./example/withvecchia.jl gives an example of the wrapper type that you can use to conveniently use ForwardDiff.jl to get derivatives of the kernel function as well as an example of how to efficiently compose this package with Vecchia.jl for scalable parameter estimation.

With very few lines of boilerplate, you can specify a complicated covariance function corresponding to fields that look like this:

If you use this software (HalfSpectral.jl) in a manuscript or published work, please cite the paper linked above and not the software package itself.

This release (0.2+) is a complete re-write from the version that was used in the paper (0.1), so please go to an earlier commit if you're interested in re-creating paper results. But unless you're doing that, I'd really strongly suggest using the new version of the code, because it is much cleaner and has complete AD compatibility.


This package is not registered. Please install by opening Julia, pressing the ] key to enter the Pkg REPL, and entering

Pkg> add https://git.sr.ht/~cgeoga/HalfSpectral.jl


Please reach out to me at christopher.geoga@rutgers.edu or cgeoga@anl.gov if you have any issues.