Add wrapper layer to the `gnll` function so that the coordinate
derivative functions work.
Minimal working product of auto-generating kernel derivatives. I still
can't help but think that there is some performance on the table there
still, but it seems reasonably close to matching the speed of hand-coded
ones. So now the only trick will be to think about how best to write a
wrapper of a function that takes in a normal vector, makes it a
SVector, and then uses that static version for all the kernel calls.
Remove closures from nll_forwarddiff.jl
Bump version and prepare for a point release.
Caught even more perf on the table with the manual AD rules now. It
should be pretty much as good as can be now though.
Exploit symmetry in manual AD hessian rules.
Forgot to bump version in Project.toml.
Updates, add manuscript draft.
Add a smarter constructor for the covariance matrix, nearly halving
kernel calls by exploiting symmetry, and also add a defaults Threads
macro to the assembler. This in general is against the ethos of the
package, which is to leave all threading stuff up to the user when they
provide arbitrary matrix objects, but for this function it seems
sensible to me because we're handling the matrices, and the assembly
happens before the BLAS calls, so there won't be any partr issues.
General registry pipeline updater should be in-place. Will obviously
take a little time to test and there will probably be some kind of typo
fix in the next commit that I want to merge. But this is the idea.
Add pipeline to update general registry and bumping version.
Add the nice forwarddiff option, add more tests, add forwarddiff dep,
update some docs.
Adding automatic switching docs, oops.
fix spacing issue in README.
Trying to include individual md files in the index.md file.
Add build icon and links to stuff in the README.