粒子追踪 (空间分析)
用法
-
输入方向和模栅格数据应来自达西流工具的同一次运行。
-
此工具生成的路径文件是 ASCII 文本文件,其中包含沿路径移动的位置、局部速度方向和模以及累积长度和时间的信息。此文件用于孔隙扩散的输入。此文件的格式如下:
time x y length flow dir flow mag 0.000000000 0.000000000 482.8400000 0.000000000 90.00000000 0.04418909563 113.1648712 4.999804443 482.7957786 5.000000000 91.01366126 0.04418332249 226.2741353 9.998043277 482.6630814 10.00000000 92.02765240 0.04420504404 339.3574334 14.99315255 482.4419855 15.00000000 93.04094157 0.04421519432 452.3447720 19.98356700 482.1325285 20.00000000 94.05521317 0.04425274599 565.2657591 24.96772671 481.7348453 25.00000000 95.06807622 0.04427874865 678.0514031 29.94406931 481.2490323 30.00000000 96.08254679 0.04433188322 790.7309576 34.91104149 480.6752838 35.00000000 97.09488082 0.04437362239
-
粒子追踪不指定任何特定的单位系统。所有数据都必须使用一组一致的单位,即对时间(秒、天、年)和长度(英尺、米)分别使用相同的单位。
-
源位置必须位于输入栅格的边界内且不能在 NoData 区域内。
-
如果追踪在未达到指定的最大追踪时间时已到达研究区域外部,追踪文件将结束。
-
如果被追踪的粒子在指示时间已到达研究区域的边,且预测器点位于研究区域外部,则追踪文件将结束。
-
如果被追踪的粒子在指示时间陷入洼地,追踪文件将结束。洼地可由排液井或其他汇点进行创建。
-
此工具的两种输出为:
- 使用被指定为输出粒子追踪文件的名称的粒子追踪 ASCII 文件
- 可选的折线 (polyline) 要素类
语法
参数 | 说明 | 数据类型 |
in_direction_raster |
每个像元值都表示渗流速度矢量(平均线速度)在像元中心的方向的输入栅格。 方向以罗盘坐标(以北为基准方向按顺时针进行测量的度数)表示。这可通过达西流工具创建。 方向值必须为浮点型。 | Raster Layer |
in_magnitude_raster |
每个像元值都表示渗流速度矢量(平均线速度)在像元中心的模的输入栅格。 单位为长度/时间。这可通过达西流工具创建。 | Raster Layer |
source_point |
开始粒子追踪的源点的位置。 它被输入为标识该位置的 x,y 坐标的数字(地图单位)。 | Point |
out_track_file |
包含粒子追踪数据的输出 ASCII 文本文件。 | File |
step_length (可选) |
用于计算粒子追踪的步长。 默认值为像元大小的一半。单位是长度。 | Double |
tracking_time (可选) |
进行粒子追踪所经历的最大时间。 算法将沿着追踪轨迹执行,直到达到此时间或者粒子迁移出栅格或陷入洼地。 默认值为无穷大。单位是时间。 | Double |
out_track_polyline_features (可选) |
包含粒子追踪的可选输出线要素类。 此要素类包含一系列弧,其属性表示沿路径移动的位置、局部速度方向和模以及累积长度和时间。 | Feature Class |
代码示例
此例对所需输入执行该工具,然后输出粒子追踪数据的 ASCII 文件和粒子追踪的 shapefile 要素类。
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" ParticleTrack("gwdir", "gwmag", arcpy.Point(-200,-200), "C:/sapyexamples/output/trackfile.txt",10, 100000, "C:/sapyexamples/output/trackpolyline.shp")
此例对所需输入执行该工具,然后输出粒子追踪数据的 ASCII 文件和粒子追踪的 shapefile 要素类。
# Name: ParticleTrack_Ex_02.py # Description: Calculates the path of a particle through a velocity field. # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inDirectionRaster = "gwdir" inMagnitudeRaster = "gwmag" sourcePoint = arcpy.Point(-200, -200) outTrackFile = "C:/sapyexamples/output/trackfile.txt" stepLength = 10 trackingTime = 10000000 outTrackPolylineFeatures = "C:/sapyexamples/output/trackpolyline.shp" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute ParticleTrack ParticleTrack(inDirectionRaster, inMagnitudeRaster, sourcePoint, outTrackFile, stepLength, trackingTime, outTrackPolylineFeatures)