The KRIGE2D Procedure

Computational Resources

To generate a predicted value at a single grid point by using N data points, PROC KRIGE2D must solve the kriging system

bold upper C bold-italic lamda bold 0 equals bold upper C bold 0

where the dimensions of bold upper C are left-parenthesis upper N plus 1 right-parenthesis times left-parenthesis upper N plus 1 right-parenthesis and the right-hand-side bold upper C bold 0 has one column.

Holding the matrix and vector associated with this system in core requires approximately 8 upper N squared slash 2 bytes. The CPU time used in solving the system is proportional to upper N cubed. For large N, this time dominates the O(upper N squared) time to compute the elements of the covariance matrix bold upper C from the specified covariance or semivariogram model.

For local kriging, the kriging system is set up and solved for each grid point. Part of the setup process involves determining the neighborhood of each grid point. A fast K-D tree algorithm determines neighborhoods. For G grid points, the dominant CPU time factor is setting up and solving the G kriging systems. The N in the algorithm of the section Ordinary Kriging is the number of data points in a given neighborhood, and it can differ for each grid point.

In global kriging, the entire input data set and all grid points set up and solve the single system

bold upper C bold-italic lamda bold 0 equals bold upper C bold 0

Again bold upper C has dimensions left-parenthesis upper N plus 1 right-parenthesis times left-parenthesis upper N plus 1 right-parenthesis, but bold-italic lamda bold 0 and bold upper C bold 0 now have G columns, where G is the number of grid points. Memory requirements are approximately 8 left-bracket left-parenthesis upper N squared slash 2 right-parenthesis plus upper G upper N right-bracket bytes. The CPU time used in solving the system is still dominated by the upper N cubed factorization of the left-hand side.

Last updated: December 09, 2022