Python in Itasca software---UCS的参数化研究
Python in Itasca software---UCS的参数化研究
GeotechWu
计算岩土力学(Geomechanics)是一个综合的岩土工程(Geotechnical)信息源,旨在与岩土工程领域的学生,研究人员和岩土工程师分享先进的岩土工程教育理念,岩土工程分析和设计方法。
1 引言
使用Python进行数值分析最广泛的一个用途是参数化研究,例如【 HYRCAN使用Python进行边坡稳定性的参数化分析 】。而在Itasca软件中,通过FISH函数的传递可以更灵活地进行参数化研究,这样作的好处是能够最大程度地把Python代码与Itasca命令实现分离,便于修改和扩充代码的功能。下面讨论手册中一个例子《 Uniaxial Compressive Strength of a Jointed Material Sample 》。这个例子使用ubiquitous-joint模型计算 带有节理面试件的单轴抗压强度, 试件的单轴抗压强度是岩石材料和节理属性的函数,如下图所示。在此省略了所有的过程模拟过程,仅把注意力集中在参数化研究上。
2 参数化研究
在Python代码中,使用range改变节理的角度beta,把beta传递给UCS计算代码ucs_test,从而得到19组数据。
betas = range(0,91,5)
for beta in betas:
it.command(f"""
model new
[global beta = {beta}]
program call ’ucs_test’
""")
使用的主要Python函数:
(1) gp.force_unbal_y
(2) it.gridpoint.list
(3) gp.in_group
ucs = []
for
beta
in
betas:
filesav =
f"./ucs_
{beta}
.sav"
if
os.path.exists(filesav):
it.command(
f"model restore ’
{filesav}
’"
)
sigmavs = [-gp.force_unbal_y()
for
gp
in
it.gridpoint.list()
if
gp.in_group(
"bottom"
)]
ucs.append(sum(sigmavs)/
3.06
*
1e-3
)
3 绘图
使用matplotlib绘制参数化研究得到的计算结果【 FLAC3D与Python的集成 (2)---数据交换至Numpy 】。
import matplotlib.pyplot as plt
对曲线形状的控制试验了如下四种可以使用的类型:
plt.plot(betas,ucs,
"r*--"
)
plt.plot(betas,ucs,
"bD-."
)
plt.plot(betas,ucs,
"go--"
)
plt.plot(betas,ucs,
"b*-"
)
plt
.xlabel
("
Weak-plane
angle
[°]
")
plt
.ylabel
("
Axial
strength
[kPa]
")
plt
.xlim
(0,90)
plt
.ylim
(3,10)
plt
.grid
()
plt
.title
("
UCS
test
using
ubiquitous-joint
model
")
plt
.show
()
微信扫一扫赞赏作者
赞赏
发送给作者
人赞赏
长按二维码向我转账
受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
