# order_maxmin: Maximum minimum distance ordering In GpGp: Fast Gaussian Process Computation Using Vecchia's Approximation

## Description

Return the indices of an approximation to the maximum minimum distance ordering. A point in the center is chosen first, and then each successive point is chosen to maximize the minimum distance to previously selected points

## Usage

 `1` ```order_maxmin(locs, lonlat = FALSE, space_time = FALSE, st_scale = NULL) ```

## Arguments

 `locs` A matrix of locations. Each row of `locs` contains a location, which can be a point in Euclidean space R^d, a point in space-time R^d x T, a longitude and latitude (in degrees) giving a point on the sphere, or a longitude, latitude, and time giving a point in the sphere-time domain. `lonlat` TRUE/FALSE whether locations are longitudes and latitudes. `space_time` TRUE if locations are euclidean space-time locations, FALSE otherwise. If set to TRUE, temporal dimension is ignored. `st_scale` two-vector giving the amount by which the spatial and temporal coordinates are scaled. If `NULL`, the function uses the locations to automatically select a scaling. If set to FALSE, temporal dimension treated as another spatial dimension (not recommended).

## Value

A vector of indices giving the ordering, i.e. the first element of this vector is the index of the first location.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18``` ```# planar coordinates nvec <- c(50,50) locs <- as.matrix( expand.grid( 1:nvec[1]/nvec[1], 1:nvec[2]/nvec[2] ) ) ord <- order_maxmin(locs) par(mfrow=c(1,3)) plot( locs[ord[1:100],1], locs[ord[1:100],2], xlim = c(0,1), ylim = c(0,1) ) plot( locs[ord[1:300],1], locs[ord[1:300],2], xlim = c(0,1), ylim = c(0,1) ) plot( locs[ord[1:900],1], locs[ord[1:900],2], xlim = c(0,1), ylim = c(0,1) ) # longitude/latitude coordinates (sphere) latvals <- seq(-80, 80, length.out = 40 ) lonvals <- seq( 0, 360, length.out = 81 )[1:80] locs <- as.matrix( expand.grid( lonvals, latvals ) ) ord <- order_maxmin(locs, lonlat = TRUE) par(mfrow=c(1,3)) plot( locs[ord[1:100],1], locs[ord[1:100],2], xlim = c(0,360), ylim = c(-90,90) ) plot( locs[ord[1:300],1], locs[ord[1:300],2], xlim = c(0,360), ylim = c(-90,90) ) plot( locs[ord[1:900],1], locs[ord[1:900],2], xlim = c(0,360), ylim = c(-90,90) ) ```

GpGp documentation built on June 10, 2021, 1:07 a.m.