# -*- coding:UTF-8 -*-
from ansa import *
def trans_shell():
base.GeoTranslate(
'MOVE',
0,
'SAME PART',
'NONE',
0,
1,
0,
yidong_nodes,
keep_connectivity=True,
)
session.New('discard')
base.SetCurrentDeck(constants.ABAQUS)
base.InputAbaqus(r'D:\pythonProject\frequency_ban.inp')
all_props=base.CollectEntities(4,None,'__PROPERTIES__')
yidong_nodes=[]
for prop in all_props:
if prop._name == 'yidongban':
all_shells=base.CollectEntities(4,prop,'SHELL')
all_nodes=base.CollectEntities(4,all_shells,'NODE')
yidong_nodes=all_nodes
vas_yidong={
'Name':'yidong',
}
set_yidong=base.CreateEntity(4,'SET',vas_yidong)
base.AddToSet(set_yidong,yidong_nodes)
# 定义移动尺寸
num=0
while num<=10:
trans_shell()
num+=1
enti = []
for prop in all_props:
if prop._name != 'yidongban':
enti.append(prop)
shell_all = base.CollectEntities(4, enti, 'SHELL')
mesh.ReconstructShells(shell_all)
bc_nodes=[]
for prop in all_props:
if prop._name == 'bianjieban':
all_part_shells=base.CollectEntities(4,prop,'SHELL')
all_part_nodes=base.CollectEntities(4,all_part_shells,'NODE')
bc_nodes=all_part_nodes
vas_bc={
'Name':'bc_nodes',
}
bc_set=base.CreateEntity(4,'SET',vas_bc)
base.AddToSet(bc_set,bc_nodes)