粒子追踪 (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)

许可信息

  • Basic: 需要 Spatial Analyst
  • Standard: 需要 Spatial Analyst
  • Advanced: 需要 Spatial Analyst

相关主题