gmtflexure

贡献者

周茂

最近更新日期

2022-06-21


官方文档

gmtflexure

简介

计算 2-D 载荷产生的力,弯矩和挠曲变形

gmtflexure 使用一系列可选选项,例如边界条件等信息计算二维载荷的挠曲变形。该模块的解是对微分方程进行有限差分近似获得的。该模块的 Z 轴是朝下的,因此,正的地形载荷等将会产生正的变形。

语法

gmt flexure -Drm/rl[/ri]/rw -ETe[k]|D|file -Qargs [ -A[l|r]bc[/args] ] [ -Cp|yvalue ] [ -Fforce ] [ -L ] [ -M[x][z] ] [ -S ] [ -Twfile] [ -V[level] ] [ -Wwd[k]] [ -Zzm[k]] [ -bibinary ] [ -bobinary ] [ -dnodata[+ccol] ] [ -eregexp ] [ -hheaders ] [ -iflags ] [ -oflags ] [ --PAR=value ]

必选选项

-Drm/rl[/ri]/rw

设置地幔(mantle),载荷(load),填充物(infill)和水(water)的密度,其中填充物的密度是可选的,不指定时默认和载荷密度相等,这里的水准确的说为介质,当载荷位于海洋时,水的密度为海水的密度,当载荷位于陆地时,水的密度即设置为空气密度,各参数的具体含义见 grdflexure 中的图示。

-ETe[k]|D|file

设置弹性板(通常为岩石圈/地壳)厚度,默认单位为 m, k 表示单位为 km。如果弹性板厚度的值超过了 1e10,认为该值超过岩石圈有效弹性厚度的实际范围,GMT 将其认为是抗挠刚度 D ,而不是弹性板厚度 (默认情况下 D 由有效弹性厚度 Te ,杨氏模量和泊松比计算,见 -C 参数)。另外,还可使用该选项提供一个包含弹性厚度或抗挠刚度的文件 file ,该文件必须与 -Q 给定的文件具有相同的配准方式。

-Qn|q|t[args]

对垂直方向载荷体的设置。

  • -Qn 表示没有输入载荷文件,挠曲变形只通过 -A 设置的边界条件驱动。如果没有通过 -E 选项指定弹性厚度或者抗挠刚度文件,还需指定计算的位置

  • -Qq[loadfile] 指定载荷体文件,载荷体通过等距的位置和在该位置上的压强(单位为 Pa)给出

  • -Qt[topofile] 指定载荷体文件,载荷体通过位置和在该位置上的地形的厚度给出,单位默认为 m,地形单位见 -M

可选选项

-A[l|r]bc[/args]

设置边界条件, lr 分别为左右边界。 bc 可设置为下面四个值,假设挠曲变形为 w = w(x),' 表示导数:

  • 0 无穷大边界,w’ = w’’ = 0

  • 1 周期边界,w’ = w’’’ = 0

  • 2 Clamped 边界,args 为单个数字,挠度的端点值为 args ,即 w(end) = args,[默认为 0], w’ = 0

  • 3 自由边界,argsmoment/force ,指定端点的弯矩和垂直剪切力,默认为 0/0

使用国际单位作为默认单位。

-Cp|yvalue

分别使用 py 修改泊松比的默认值 [0.25] 和杨氏模量的默认值 [7.0e10 N/m^2]

-Fforce

设置恒定的水平方向内力,单位为 Pa m [0]

-L

使用一个可变的恢复力,该力取决于挠曲变形

-M[x][z]

指定载荷体的单位,x 表示所有的 x 方向的距离以 km 为单位; z 表示垂直方向的形变以 km 为单位

-S

计算对应挠曲的曲率,将结果放在第三列

-Twfile

提供一个预先存在的变形文件 [默认不存在变形]

-V[level] (more …)

设置 verbose 等级 [w]

-Wwd[k]

设置水深,默认单位为 m, k 表示单位为 km,该值必须为正,默认值为0。任意地面上的地形(非海洋中)都会与 -D 设置的密度进行缩放,以补偿(海)水与空气的密度差异。

-Zzm[k]

指定挠曲变形的参考深度 zm ,单位为 m,追加 k 表示单位为 km,必须为正值,默认值为 0。在输出前将 zm 加到挠曲变形上。

-bi[ncols][type][w][+l|b] (more …)

设置二进制输入数据的格式

-bo[ncols][type][w][+l|b] (more …)

设置二进制输出的数据格式

-d[i|o]nodata (more …)

将输入数据中等于 nodata 的记录替换为 NaN,或将输出数据中值为 NaN 的记录替换为 nodata

-e[~]“pattern” | -e[~]/regexp/[i] (more …)

筛选或剔除匹配指定模式的数据记录

-h[i|o][n][+c][+d][+msegheader][+rremark][+ttitle] (more …)

跳过或生成指定数目的头段记录

-icols[+l][+sscale][+ooffset][,][,t[word]] (more …)

设置输入数据列及简单变换(0表示第一列,t 表示文本列)

-ocols[,…][,t[word]] (more …)

设置输出数据列(0表示第一列,t 表示文本列)

-^-

显示简短的帮助信息,包括模块简介和基本语法信息(Windows下只能使用 -

-++

显示帮助信息,包括模块简介、基本语法以及模块特有选项的说明

-? 或无参数

显示完整的帮助信息,包括模块简介、基本语法以及所有选项的说明

--PAR=value

临时修改GMT参数的值,可重复多次使用。参数列表见 配置参数

单位说明

-M 选项控制着所有的输入输出文件中的单位。但是,和命令行选项 -E-W-Z 的单位无关,除非附加了 k 表明以 km 作为单位,默认情况下,都以 m 为单位。

挠曲说明

本模块使用有限差分来求解弹性板(即岩石圈或地壳)的挠曲。这种方法可以用于可变刚度,不同的恢复力,以及存在预变形和不同的边界条件等情况。

示例

计算 topo.txt 地形载荷形成的弹性形变,弹性板的厚度为 10 km,密度为典型的地壳密度:

gmt flexure -Qttopo.txt -E10k -D2700/3300/1035 > flex.txt

参考文献

Bodine, J. H., 1980, Numerical computation of plate flexure in marine geophysics, Tech. Rep. CU-1-80, Columbia University.

相关模块

grdflexure, gravfft, grdmath