Kriging interpolation -- Surfer vs. ArcGIS

6614
5
08-02-2013 01:09 PM
JayJohnson
New Contributor III
I have a number of point datasets that were interpolated to rasters years ago using Surfer (v8) with the default kriging interpolation.  I would like to replicate this process in ArcGIS Spatial Analyst and get the same result.  (I have my doubts that this acceptance of the defaults was the best way to model the data, however it would be of value to show my co-workers that ArcGIS can produce the same results as Surfer before we start examining alternate semivariograms.)
Unfortunately, the Surfer parameters are proving tricky to duplicate in ArcGIS.  In Surfer, the process used the following parameters:
Variogram Model = Linear
Variogram Slope=1
Anisotropy Ratio = 1
Anisotropy Angle=0
Kriging Type = "Point" (as opposed to "block")
Drift Type = None (which I interpret to mean normal kriging in ArcGIS, not universal)
Search Parameters=No Search(use all of the data)

Can anyone "translate" these Surfer kriging parameters into their equivalents in the Spatial Analyst Interpolation, Kriging tool?
In particular, the ArcGIS version of ordinary linear semivariogram kriging expects a  lag size and has entries for Major range, partial sill and nugget.  It also has no obvious "use all data" option.

Thanks,
Jay
0 Kudos
5 Replies
EricKrause
Esri Regular Contributor
I'm not 100% sure, but I think this will reproduce the Surfer output.

Choose Ordinary kriging with a Linear semivariogram.  In advanced options, leave the lag size blank, set the nugget to 0, then set the partial sill and major range equal to each other.  Make the value of these two parameters very large; it must be larger than the distance of the diagonal extent of the input points.

For the search radius, leave it as "Variable," and set the maximum number of points to the number of points in your dataset.  Leave the maximum distance empty.

You'll also need to know the cell size of the raster you created in Surfer, and put that in the output cell size.
JayJohnson
New Contributor III
Eric,
Thanks for the suggestion.  I'll try that next week to see how it compares with the method I worked out late today.  My method, close to your suggestion, which appeared to replicate the Surfer results, was:
Ordinary kriging
Linear semivariogram
Lag size = the diagonal extent of the input points
All other advanced options blank
Search = variable
Number of points = number of points in dataset

This appeared to work, at least for the first dataset I tried it on.  More testing awaits...

Jay
0 Kudos
SteveLynch
Esri Regular Contributor
Jay

Do you have Geostatistical Analyst?
If so you can use cross validation to find the best model.
If you don't you could do some validation, i.e. hide some data, create a model, then predict to the 'hidden' locations. This will help you find a good/suitable model.

Regards
Steve
0 Kudos
JayJohnson
New Contributor III
Eric,

Just getting back to this - my method seemed to be working, but then I hit some data sets that had very scarce data (mostly 0 values and a handful of >0 values) and my method didn't produce a good result in this condition.  I tried your suggested settings and they worked well - reproducing surfaces apparently identical to the "default" surfer kriging results.

THANKS!
Jay
0 Kudos
EricKrause
Esri Regular Contributor
Glad to hear the method worked!

But I want to give a bit of a disclaimer.  Looking at Surfer's documentation, their Linear semivariogram does not support a Nugget (which is kind of strange), and they default the variogram slope to 1 without setting a range or sill.  This essentially means that the semivariogram starts at 0 and increases with a slope of 1 forever (in ArcGIS, setting nugget=0 and the range and partial sill to the same very large value reproduces this behavior).  However, there is no reason to think, in general, that nugget=0 and a slope of 1 are good values.  So, the workflow I presented will reproduce the defaults of Surfer, but there is no reason to think this model actually fits your data.  You noted this in your first post, but I just want to reiterate it because it's very important.
0 Kudos