abaqus批量选择节点建立节点集脚本

#!/usr/bin/python
# -*- coding: utf-8 -*-

#-*-coding: UTF-8 -*-
from math import *
from abaqus import *
from abaqusConstants import *
from caeModules import *
from driverUtils import executeOnCaeStartup
executeOnCaeStartup()

#自动找到当前model名称
viewportName = session.currentViewportName
modelNameDE=session.viewports[viewportName].displayedObject.modelName
#找到装配体
a = mdb.models[modelNameDE].rootAssembly

#选择的节点在装配体中处于那一个instances上,可自己添加
n = a.instances['test-1'].nodes
m = a.instances['test-2'].nodes

#初始化nodes列表中元素类型为MeshNode object
myNodes = n[0:1]

#下次循环前进的位移
d = 625

#循环次数
k = 60
for i in range(k):
    #选择的矩形区域的两个顶点,getByBoundingBox(xmin,ymin,zmin,xmax,ymax,zmax)
   nlist = n.getByBoundingBox(-100-1,-100-1,450-1+i*d,1100+1,-100+1,625+1+i*d)
   mlist = m.getByBoundingBox(-100-1,-100-1,450-1+i*d,1100+1,-100+1,625+1+i*d)
   #使用序列切片,防止元素类型发生变化
   myNodes += nlist[0:len(nlist)]+mlist[0:len(mlist)]
   if i==(k-1):
        a.Set(name='test', nodes=myNodes[1:len(myNodes)])

此代码远没有你想象的那么简单,如果有改进意见欢迎提出

abaqus批量选择节点建立节点集脚本

Abaqus 是一个常见的有限元分析软件,支持使用 Python 语言进行批量处理和脚本操作。如果需要输出节点应力,可以通过以下步骤实现: 1. 在软件中打开需要进行分析的模型文件,并在左侧的 "Model Tree" 中选择需要输出节点应力的部分。这个部分可以是整个模型,也可以是其中的一个部分。 2. 在菜单栏中选择 "File" - "Write Input",将模型保存为输入文件(.inp 格式)。 3. 打开文本编辑器(例如 Notepad++)并打开输入文件。 4. 搜索 "Output Requests" 关键字,并在下面添加以下内容: **Node Output** S 3 //表示输出三维应力 NODES=1,2,3,4,5 //需要输出应力的节点编号 **End Node Output** 其中 "NODES" 后面的数字序列需要替换为需要输出应力的节点编号,多个编号之间使用逗号分隔。 5. 保存修改后的输入文件并关闭编辑器。 6. 在菜单栏中选择 "File" - "Run Script",选择需要运行的 Pyhton 脚本,等待计算完成。 7. 计算完成后,在输出窗口中搜索 "N O D A L S T R E S S E S I N T E C H N I C A L C O O R D I N A T E S Y S T E M" 关键字,即可找到需要输出的节点应力数据。 以上就是使用 Abaqus 脚本输出节点应力的基本步骤。需要注意的是,在修改输入文件之前建议备份原始文件,避免误操作导致数据丢失。同时,不同版本的 Abaqus 软件可能略有差异,具体操作可以根据实际情况进行调整。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值