前面介绍了基于Python向Abaqus中导入txt、dat数据(基于Python向Abaqus导入txt、dat数据),这里研究如何基于Python从Abaqus导出数据到txt、dat。主要有这么几个函数:
write命令
使用write命令从abaqus导出数据到txt的代码及其生成的txt如下:
f = open("qiuming.txt",'a')
f.write("hello,Qiumingshanlaoshiji") #将字符串写入文件中
f.write("\n") #换行
f.write("hello,Qiumingshanlaoshiji") #将字符串写入文件中
f.write("\n") #换行
f.close() #关闭
运行上述代码后,则将相关字符串导入到下面的txt文件中(见图1)。使用该命令后,若上述文件不存在,则系统自动创建。'a'表示可连续写入到文件,保留原内容,在原内容之后写入。可修改该模式为('w+','w'
前面介绍了基于Python向Abaqus中导入txt、dat数据(基于Python向Abaqus导入txt、dat数据),这里研究如何基于Python从Abaqus导出数据到txt、dat。主要有这么几个函数:01write命令使用write命令从abaqus导出数据到txt的代码及其生成的txt如下:f=open("qiuming.txt",'a')f.write("hello,...
myarray = np.fromfile("./query_feature_A/00056451.
dat
", dtype=float)
print("len(myarray)::", myarray.size)
for item in myarray:
print(item)
接下来点击查询值出现该对话框
在查询值对话框内依次点击选择一个显示组➡位置:选择单元结点➡显示组 选择All 等待遍历节点完成(因模型网格多少而定)➡勾选 Attached nodes的值,这边全选,如下图所示
点击写入文件,注意
保存
路径和文件命名,文件以.rpt格式输出
输出
数据
处理
将后缀修改为.
txt
,然后使用文本编辑器打开
在Matlab可以方便地实现各种优化算法,
ABAQUS
可以方便地进行有限元建模及求解,有时候两者结合可以更方便做一些自己想做的事,例如通过遗传算法,神经网络等算法进行参数反演,确定本构模型的参数。
ABAQUS
/CAE的内核语言是
Python
,通过
Python
可以方便地读取
ABAQUS
的结果
数据
库odb的
数据
。这里介绍一些关于如何进行三者的交互,编写交互的方法与经验。关于
ABAQUS
中odb的
数据
结构这里就不多说,参考相关书籍。通过matlab提交inp文件给
ABAQUS
计算
可以在matlab里面直接通过系
方法一:通过Plu-ins > Tools > Excel Utilities,将XY
Dat
a直接到Excel文件里!
方式二:Report > XY,
导出
默认 .rpt文件的
数据
,但可以手动修改为 .
txt
方法三:
ABAQUS
计算之前就在.inp文件里设置好,
导出
为.
dat
文件。
方法一:通过Plu-ins > Tools > Excel Utilities,将XY
Dat
a直接到Excel文件里!
优点是,方便,Excel处理
数据
也很方便;
# 获取场输出变量的名称
field_vars = odb.steps['Step-1'].historyRegions['Node ASSEMBLY N2'].variables.keys()
# 获取时间步长和场输出变量
数据
time = []
dat
a = []
for frame in odb.steps['Step-1'].frames:
time.append(frame.frameValue)
frame_
dat
a = []
for var in field_vars:
var_
dat
a = frame.fieldOutputs[var].values[0].
dat
a
frame_
dat
a.append(var_
dat
a)
dat
a.append(frame_
dat
a)
# 将
数据
保存
到文件
dat
a = np.array(
dat
a)
np.save
txt
('field_output_
dat
a.csv', np.column_stack((time,
dat
a)), delimiter=',', header='Time,' + ','.join(field_vars), comments='')
这个脚本首先打开一个ODB文件,然后获取场输出变量的名称。然后,它循环遍历所有的时间步长,并获取每个时间步长的场输出变量
数据
。最后,它将
数据
保存
到一个CSV文件中,其中第一列是时间,后面的列是场输出变量
数据
。