首页/文章/ 详情

extra变量的应用

1年前浏览939

1. 引言

大多数商业的岩土工程软件只提供用户定义的本构模型的接口,而没有用户定义变量接口的能力,仅Itasca软件拥有这种额外存储数据的功能。几乎每个对象都有extra变量,例如zone, gp, interface, struct等,这允许用户定义的数据与模型对象相关联,例如,如果想存储每个单元的质量和面积,那么可以使用zone.extra把这些信息存储在与每个单元相关的额外变量中。因此在一个程序中,每个具有额外变量能力的模型对象可以分配给多个额外变量,不过最多只能是128个。额外变量可以是任何具有相应FISH类型的类型,即布尔型、整数型、浮点数、字符串、矢量、矩阵等。


无论什么样的对象,extra变量总的表达形式是.extra(pnt,1), 其中第一个变量pnt是对象的指针,第二个变量是相应的额外变量的索引值,值域为1到128。与Pyhton的索引起始值0不同,extra变量的索引值是从1开始,即使在Python的应用中。













fish define setExtra     bi = block.head     loop while bi # 0            zi = block.(bi)            loop while zi # 0                    block.zone.extra(zi,1) = block.zone.mass(zi)                    block.zone.extra(zi,2) = block.zone.area(zi)             zi = block.zone.next(zi)            endloop            bi = block.next(bi)      endloopend


2. 主要的extra变量

如前所述,大多数对象都有extra变量,一些主要的extra变量总结如下:

block.contact.extra

block.extra

block.gp.extra

block.zone.extra

data.scalar.extra

data.vector.extra

data.tensor.extra

dfn.extra

fracture.extra

geom.edge.extra

geom.node.extra

geom.poly.extra

interface.elem.extra

struct.link.extra

struct.node.extra

zone.extra

zone.field.extra

zone.face.extra

extra变量的一些应用在以下文章中曾经讨论过:

Update---在FLAC3D中使用Python

FLAC3D与Python的集成 (4)---zone.Zone类和方法

FLAC3D与Python的集成 (3)---网格划分Building Blocks

结构元链接(structural element links)

离散断裂网络[DFN.]FISH函数分类与解析(UDEC和3DEC)

FLAC3D与Python的集成 (2)---数据交换至Numpy


3. set_extra变量

当使用Python时,使用set_extra变量可以直接把额外变量存储,下面的例子存储了三个变量:z.vol, z.model和gp.pos。










z = it.block.zone.find(1)z.set_extra(1, z.vol())z.set_extra(2, z.model())print(z.extra(1))print(z.extra(2))
gp = it.block.gridpoint.near((2,2,2))gp.set_extra(1, gp.pos())print(gp.extra(1))


4. 应用例子

Itasca软件的应力和位移是在直角坐标系中建立的,也就是说,单元的正应力和剪应力是zone.stress.xx,zone.stress.zz,zone.stress.xz之类的形式,节点位移是gp.disp.x,gp.disp.z之类的形式。对于一些圆形的几何形状,如果要获得单元的径向应力和节点的径向位移,需要进行坐标变换。因此需要引入extra变量来存储这两个变量值(extra.prj)。

网格点径向应力(Vector>Magnitude>Gridpoint)


网格点径向位移(Vector>Magnitude>Gridpoint)


来源:计算岩土力学
断裂岩土FLAC3D3DEC
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-11-26
最近编辑:1年前
计算岩土力学
传播岩土工程教育理念、工程分析...
获赞 143粉丝 1043文章 1776课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈