This function adds or removes the Vecchia approximation from a GP, DGP or linked (D)GP emulator
constructed by gp(), dgp() or lgp().
Arguments
- object
an instance of the S3 class
gp,dgp, orlgp.- vecchia
a bool to indicate the addition or removal of the Vecchia approximation:
if
objectis an instance of thegpordgpclass,vecchiaindicates either addition (vecchia = TRUE) or removal (vecchia = FALSE) of the Vecchia approximation fromobject.if
objectis an instance of thelgpclass,vecchiaindicates either addition (vecchia = TRUE) or removal (vecchia = FALSE) of the Vecchia approximation from all individual (D)GP emulators contained inobject.
Defaults to
TRUE.- M
the size of the conditioning set for the Vecchia approximation in the (D)GP emulator training. Defaults to
25.- ord
an R function that returns the ordering of the input to the (D)GP emulator for the Vecchia approximation. The function must satisfy the following basic rules:
the first argument represents the lengthscale-scaled input to the GP emulator or the lengthscale-scaled input to a GP node of the DGP emulator.
the output of the function is a vector of indices that gives the ordering of the input to the GP emulator or the input to the GP nodes of the DGP emulator.
If
ord = NULL, the default random ordering is used. Defaults toNULL.
Details
See further examples and tutorials at https://mingdeyu.github.io/dgpsi-R/dev/.
Note
This function is useful for quickly switching between Vecchia and non-Vecchia approximations for an existing emulator without the need to reconstruct the emulator. If the emulator was built without the Vecchia approximation, the function can add it, and if the emulator was built with the Vecchia approximation, the function can remove it. If the current state already matches the requested state, the emulator remains unchanged.
