粒子追踪 (Spatial Analyst)

需要 Spatial Analyst 许可。

摘要

计算粒子通过速度场的路径,返回粒子追踪数据的 ASCII 文件和追踪信息的要素类(可选)。

了解有关粒子追踪工作原理的详细信息

使用情况

  • 输入方向和量级栅格数据应来自达西流工具的同一次运行。

  • 此工具生成的路径文件是 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 区域中。

  • 如果轨迹到达研究区域之外但没有达到指定的最大追踪时间,则追踪文件将结束。

  • 如果被追踪的粒子在指定时间到达研究区域的边缘并且预测点位于研究区域之外,则追踪文件将结束。

  • 如果被追踪的粒子在指示时间陷入洼地,追踪文件将结束。 排水井或其他汇可能造成凹陷。

  • 此工具的两种输出为:

    1. 使用被指定为输出粒子追踪文件的名称的粒子追踪 ASCII 文件
    2. 可选的折线要素类

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst

参数

标注说明数据类型
输入方向栅格数据

输入栅格,其中的每一像元值都表示像元中心渗流速度矢量(平均线速度)的方向。

方向以罗盘坐标(以北为基准方向按顺时针进行测量的度数)表示。 这可通过达西流工具创建。

方向值必须为浮点值。

Raster Layer
输入量级栅格数据

输入栅格,其中的每一像元值都表示像元中心渗流速度矢量(平均线速度)的量级。

单位为长度/时间。 这可通过达西流工具创建。

Raster Layer
源点

开始粒子追踪的源点位置。

此为数字输入,用于标识地图单位中位置的 x,y 坐标。

Point
输出粒子追踪文件

包含粒子追踪数据的输出 ASCII 文本文件。

File
步长
(可选)

用于计算粒子轨迹的步长。

默认值为像元大小的一半。 将使用长度单位。

Double
追踪时间
(可选)

粒子追踪经理的最长时间。

算法将遵循轨迹,直到达到此时间,或粒子移出栅格或进入洼地。

默认值为无穷大。 将使用时间单位。

Double
输出追踪折线要素
(可选)

包含粒子轨迹的可选输出线要素类。

该要素类包含一系列弧线,这些弧线具有位置、局部速度方向和量级以及沿路径移动的累积长度和时间等属性。

Feature Class

ParticleTrack(in_direction_raster, in_magnitude_raster, source_point, out_track_file, {step_length}, {tracking_time}, {out_track_polyline_features})
名称说明数据类型
in_direction_raster

输入栅格,其中的每一像元值都表示像元中心渗流速度矢量(平均线速度)的方向。

方向以罗盘坐标(以北为基准方向按顺时针进行测量的度数)表示。 这可通过达西流工具创建。

方向值必须为浮点值。

Raster Layer
in_magnitude_raster

输入栅格,其中的每一像元值都表示像元中心渗流速度矢量(平均线速度)的量级。

单位为长度/时间。 这可通过达西流工具创建。

Raster Layer
source_point

Python Point 类对象使用地图单位指示开始粒子追踪的源点的位置。

对象形式为:

  • point(x,y)
Point
out_track_file

包含粒子追踪数据的输出 ASCII 文本文件。

File
step_length
(可选)

用于计算粒子轨迹的步长。

默认值为像元大小的一半。 将使用长度单位。

Double
tracking_time
(可选)

粒子追踪经理的最长时间。

算法将遵循轨迹,直到达到此时间,或粒子移出栅格或进入洼地。

默认值为无穷大。 将使用时间单位。

Double
out_track_polyline_features
(可选)

包含粒子轨迹的可选输出线要素类。

该要素类包含一系列弧线,这些弧线具有位置、局部速度方向和量级以及沿路径移动的累积长度和时间等属性。

Feature Class

代码示例

ParticleTrack 示例 1(Python 窗口)

此示例使用所需输入执行该工具,并输出粒子追踪数据 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")
ParticleTrack 示例 2(独立脚本)

此示例使用所需输入执行该工具,并输出粒子追踪数据 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"

# Execute ParticleTrack
ParticleTrack(inDirectionRaster, inMagnitudeRaster, sourcePoint, outTrackFile,
              stepLength, trackingTime, outTrackPolylineFeatures)

相关主题