断层带测点的正应力和剪应力
import itasca as it
from math import *
it.command("python-reset-state false")
"""
1、如果只为了求解断层的正应力和剪应力比值,只需要更改zone_id即可
2、如果需要正应力和剪应力,文件夹还需要改一改
"""
zone_id = [3689881,3933005,3626246,3726742,3446164]
for i in range(1,15):
it.command(
"""
model restore 'kaiwa-{index}.sav'
""".format(index=i)
)
for i in zone_id:
zone = it.zone.find(i)
sxx = zone.stress()[0][0]
szz = zone.stress()[2][2]
zyl = (szz+sxx) * 0.5 - (sxx-szz) * cos(100*pi/180) * 0.5
jyl = (sxx-szz) * sin(100*pi/180) * (-0.5)
bz = round(jyl / zyl, 3)
with open("targetZoneBz.txt", "a") as f:
f.write(str(bz) + " ")
with open("targetZoneBz.txt", "a") as f1:
f1.write("\n")
with open("zyl.txt", "a") as f1:
f1.write(str(zyl) + " ")
with open("jyl.txt", "a") as f2:
f2.write(str(jyl) + " ")
with open("zyl.txt", "a") as f1_1:
f1_1.write("\n")
with open("jyl.txt", "a") as f2_1:
f2_1.write("\n")