swift-nav/albatross

Allow for Mean Functions.

Closed this issue · 1 comments

Currently all Gaussian processes in albatross assume the mean is zero. It would be nice to be able to provide an arbitrary function which can remove apriori means. There are a few ways this could happen.

-We could implement a MeanFunction class which functions very much like the CovarianceFunction. The GaussianProcessBase class would then need an additional template parameter which could default to ZeroMean.

-We could hijack the CovarianceFunction to contain a _mean_impl method which then let's us perform very similar logic to _call_impl to provide an optionally defined cov_func.mean(features) method. This would avoid the need for an additional template parameter ... but it could get confusing that the CovarianceFunction acts as a MeanFunction as well.