# localGetVectorIndices: Get Indices of Vector or Matrix Elements Stored on Slave... In bigGP: Distributed Gaussian Process Calculations

## Description

`localGetVectorIndices`, `localGetTriangularMatrixIndices`, and `localGetRectangularMatrixIndices` are internal auxiliary functions that determine the indices of the elements of a vector or matrix that are stored on a slave process. These are primarily meant for internal use, but can also be used in the process of creating distributed vectors and matrices on the slave processes. The functions need to be executed on the slave processes.

## Usage

 ```1 2 3``` ```localGetVectorIndices(n, h = 1) localGetTriangularMatrixIndices(n, h = 1) localGetRectangularMatrixIndices(n1, n2, h1 = 1, h2 = 1) ```

## Arguments

 `n` a positive integer, giving the length of the vector or number of rows and columns of the triangular/square matrix. `n1` a positive integer, giving the number of rows of the rectangular matrix. `n2` a positive integer, giving the number of columns of the rectangular matrix. `h` a positive integer, giving the block replication factor for the vector or triangular/square matrix. `h1` a positive integer, giving the block replication factor for the rows of the rectangular matrix. `h2` a positive integer, giving the block replication factor for the columns of the rectangular matrix.

## Value

`localGetVectorIndices` returns the indices (as a one-column matrix) of the subset of a distributed vector that will be stored on the process on which the function is called. `localGetTriangularMatrixIndices`, and `localGetRectangularMatrixIndices` return a two-column matrix with the indices for the subset of the distributed matrix that will be stored (as a vector) on the process on which the function is called. I.e., the ith row of the matrix gives the (row, column) position in the full matrix for the ith element of the vector on the local process that contains a subset of that matrix.

Warning: in some cases there is a small amount of buffering involved in the distributed objects so that the blocks on each process are of the same size. In this case, the index of the first element will generally be added one or more times to the end of the indices assigned to the last process.

bigGP documentation built on May 30, 2017, 12:22 a.m.