GPLinearODE (GLO) struct
The GPLinearODEMaker.GLO object is used to ensure that all of the necessary pieces exist to specify the GLOM model.
GPLinearODEMaker.GLO — TypeGLO{T1<:Real, T2<:Integer} a.k.a. GPLinearODEA structure that holds all of the relevant information for constructing the GLOM model
Arguments
kernel::Function: kernel function for the latent Gaussian process (GP)n_kern_hyper::T2: amount of hyperparameters for the kernel functionn_dif::T2: amount of times you are differenting the base kerneln_out::T2: amount of outputs you are jointly modellingx_obs::Vector{T1}: the observation times/phasesy_obs::Vector{T1}: the flattened, observed datanoise::Vector{T1}: the measurement noise at all observations (σ, not σ^2)normals::Vector{T1}: the normalization of each section of y_obsa::Matrix{T1}: the meta kernel coefficientsnon_zero_hyper_inds::Vector{T2}: the indices of the non-zero hyperparameterscoeff_orders::AbstractArray{T2,6}: The powers that eachacoefficient is taken to for each part of the covariance matrix construction. Used for constructing differentiated versions of the kernelcoeff_coeffs::AbstractArray{T2,4}: The coefficients that eachacoefficient is multiplied by for each part of the covariance matrix construction. Used for constructing differentiated versions of the kernelcovariance::Array{T1, 3}: the measurement covariance at all observationshas_covariance::Bool: Whether or not there are measurement covariances (as opposed to just having measurement noises)kernel_changes_with_output::Bool: A flag for if the kernel is not the same for each output (e.g. there is a time delay kernel hyperparameter that changes)
It is often normalized before any optimizations to make the process more amenable to numerical methods
GPLinearODEMaker.normalize_GLO! — Functionnormalize_GLO!(glo)Standardize the outputs in glo.y_obs (and glo.noise) to have 0-mean and unit variance and store the normalization in glo.normals
normalize_GLO!(glo, renorms)Divide the outputs in glo.y_obs and glo.noise and multiply glo.normals by renorms