需要 Geostatistical Analyst 许可。
描述
此工具通过在原始值的某一百分比范围内更改模型的半变异函数参数(块金、偏基台和主/次变程)对预测值和关联的标准误差执行灵敏度分析。工具采用地统计模型源,以填充块金、偏基台和主/次变程的初始值。该工具的输出是一张表,指出使用了哪些参数值和生成的预测值与标准误差都是多少。如果模型的参数值变化很小但输出的波动很大,则基本不能相信输出。相反,如果输出中的变化很小,则可相信模型的预测并可根据它的输出做出决定。
使用方法
地统计模型源是一个地统计图层或地统计模型 (XML)。
在输出表中,PtID 对应于输入观测点位置要素类的 OID 值,RndParam 字段标识哪些半变异函数参数随机变化。
此工具在操作中使用随机数生成器。可在随机数生成器环境中控制所使用的“种子”值。
- 如果使用的种子值为 0(默认值),则每次运行该工具时都将使用一组不同的随机数,并生成不同的输出。
- 如果将随机数种子值设置为大于 0 的固定值,则每次运行工具时都将生成相同的输出,直到更改种子值为止。
注:
只支持 Mersenne Twister 随机数生成器;如果选择了 ACM collected algorithm 599 或 Standard C Rand,将改用 Mersenne Twister。
在 Python 脚本中,GeostatisticalDatasets ArcPy 类将用于填充输入数据集参数。
对于支持空值的数据格式(如文件地理数据库要素类),使用空值表示无法对该位置做出预测或该值用作输入时应被忽略。对于不支持空值的数据格式(如 shapefile),使用值 -1.7976931348623158e+308(C++ 定义的常量 DBL_MAX 的负数)表示无法对该位置做出预测。
语法
GASemivariogramSensitivity(in_ga_model_source, in_datasets, in_locations, {nugget_span_percents}, {nugget_calc_times}, {partialsill_span_percents}, {partialsill_calc_times}, {range_span_percents}, {range_calc_times}, {minrange_span_percents}, {minrange_calc_times}, out_table)
参数 | 说明 | 数据类型 |
in_ga_model_source | 要分析的地统计模型源。 | File; Geostatistical Layer |
in_datasets | 也可以是以分号分隔的元素字符串。各元素包含以下组件:
| Geostatistical Value Table |
in_locations | 执行灵敏度分析的点位置。 | Feature Layer |
nugget_span_percents (可选) | 从块金参数中减去和添加的百分比,用于创建后续随机块金参数选择的范围。 | Double |
nugget_calc_times (可选) | 从块金跨度中随机采样的随机块金值的数目。 | Long |
partialsill_span_percents (可选) | 从偏基台参数中减去和添加到的百分比,用于创建随机偏基台选择的范围。 | Double |
partialsill_calc_times (可选) | 从偏基台跨度中随机采样的偏基台值的数目。 | Long |
range_span_percents (可选) | 从主变程参数中减去和添加的百分比,可创建随机选择主变程的范围。 | Double |
range_calc_times (可选) | 从主变程跨度中随机采样的主变程值的数目。 | Long |
minrange_span_percents (可选) | 从次变程参数中减去和添加到次变程参数中的百分比,用于创建随机次变程选择的范围。 | Double |
minrange_calc_times (可选) | 从次变程跨度中随机采样的次变程值的数目。 如果已在输入地统计模型源中设置“各向异性”,则需要提供值。 | Long |
out_table | 存储灵敏度结果的表。 | Table |
代码示例
通过改变块金、偏基台和变程值来执行灵敏度分析。
import arcpy
arcpy.env.workspace = "C:/gapyexamples/data"
arcpy.GASemivariogramSensitivity_ga(
"C:/gapyexamples/data/kriging.lyr", "C:/gapyexamples/data/ca_ozone_pts.shp OZONE",
"C:/gapyexamples/data/obs_pts.shp", "", "", "", "", "", "", "", "",
"C:/gapyexamples/output/outtabSS")
通过改变块金、偏基台和变程值来执行灵敏度分析。
# Name: SemivariogramSensitivity_Example_02.py
# Description: The semivariogram parameters Nugget, Partial Sill and Range can
# be varied to perform a sensitivity analysis.
# Requirements: Geostatistical Analyst Extension
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/gapyexamples/data"
# Set local variables
inLayer = "C:/gapyexamples/data/kriging.lyr"
inData = "C:/gapyexamples/data/ca_ozone_pts.shp OZONE"
inObs = "C:/gapyexamples/data/obs_pts.shp"
nugPercents = ""
nugCalc = ""
sillPercents = ""
sillCalc = ""
rangePercents = ""
rangeClac = ""
minrangePercent = ""
midrangeCalc = ""
outTable = "C:/gapyexamples/output/outtabSS"
# Execute SemivariogramSensitivity
arcpy.GASemivariogramSensitivity_ga(inLayer, inData, inObs, nugPercents, nugCalc,
sillPercents, sillCalc, rangePercents, rangeClac,
minrangePercent, midrangeCalc, outTable)
许可信息
- Basic: 需要 地统计分析
- Standard: 需要 地统计分析
- Advanced: 需要 地统计分析