顶部banner
Logo 折叠
全网首发仿真工程师项目实训
下载app
返回旧版
首页 成长助手 小邻学院 社区 发现
职业认证 企业服务 行业会议

登录解锁更多功能

还没有账号?立即注册

技术邻
技术引领职场价值
电话
0571-86682823
商务合作
service@jishulink.com
  • 全部  > 
  • CAE仿真

我用ABAQUS的二次开发三维建模,初学者,有好多问题,只把公式写上了,大神给点意见,谢谢,,,?

浏览: 1657 回答: 8
#! /user/bin/python
#-*-coding: UTF-8-*-
from abaqusConstants import *  
from caeModules import *       
from abaqus import *
import sys
#################################################### 
#####本脚本用于在abaqus快速建立圆柱巨型网格##### 
####################################

from abaqus import * 
from abaqusConstants import * 
import part 
import assembly 
import sketch
#输入参数,高度h,长向网格数m,长向长度m1,长向分区m2,跨向网格数n,跨向长度n1,跨向分区n2,斜向分区k
#六边形边长为c,d,八边形长度分别为c,d,a,其中a与cd有关,用论文中的公式单独计算 
h=1
m=4
m1=12
m2=5
n=3
n1=9
n2=4
k=7
c=2
d=1
a=3
pi=3.1415926535898 

#这一步建立参考点,作为part,如果想在abaqus里建空间网格结构必须新建一个part再建空间线,
#abaqus只支持绘制平面草图 
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D, type=DEFORMABLE_BODY) 
p.ReferencePoint(point=(0.0, 0.0, 0.0)) 
p = mdb.models['Model-1'].parts['Part-1'] 

import math 
import numpy as np

#绘制六角锥上节点,利用循环生成内部和长向上的六角锥,跨向两端为八边形 
#i为奇数
for i in range(1,2*n+2):
 for j in range(1,m+1):
	xx1(i,j)=c*cos(pi/2-atan(n1/2/m1))+(j-1)*m1
  yy1(i,j)=d/2+(i-1)*n1
	zz1(i,j)=-h
	xx2(i,j)=c*cos(pi/2-atan(n1/2/m1))+(j-1)*m1
	yy2(i,j)=(i-1)*n1-d/2
	zz2(i,j)=-h
	xx3(i,j)=(j-1)*m1
	yy3(i,j)=-(c*sin(pi/2-atan(n1/2/m1))+d/2)+n1*(i-1)
	zz3(i,j)=-h
	xx4(i,j)=-c*cos(pi/2-atan(n1/2/m1)+(j-1)*m1
	yy4(i,j)=(i-1)*n1-d/2
	zz4(i,j)=-h
	xx5(i,j)=-c*cos(pi/2-atan(n1/2/m1))+(j-1)*m1
	yy5(i,j)=d/2+(i-1)*n1
	zz5(i,j)=-h
	xx6(i,j)=(j-1)*m1
	yy6(i,j)=m1*c*sin(pi/2-atan(n1/2/m1))/n1+n1*(i-1)
	zz6(i,j)=-h
	i=i+2
#i为偶数
for i in range (2,2n+1):
 for j in range(1,m+1):
	x11(i,j)=c*cos(pi/2-atan(n1/2/m1))+j*m1-3*m1/2
	y11(i,j)=d/2+(i-1)*n1
	z11(i,j)=-h
	x22(i,j)=c*cos(pi/2-atan(n1/2/m1))+j*m1-3*m1/2
	y22(i,j)=(i-1)*n1-d/2
	z22(i,j)=-h
	x33(i,j)=-m1/2+(j-1)*m1
	y33(i,j)=c*cos(pi/2-atan(n1/2/m1))+d/2+n1*(i-1)
	z33(i,j)=-h
	x44(i,j)=-c*cos(pi/2-atan(n1/2/m1))+(j-3/2)*m1
	y44(i,j)=(i-1)*n1-d/2
	z44(i,j)=-h
	x55(i,j)=c*cos(pi/2-atan(n1/2/m1))+j*m1-3*m1/2
	y55(i,j)=d/2+(i-1)*n1
	z55(i,j)=-h
	x66(i,j)=-m1/2+(j-1)*m1
	y66(i,j)=d/2+(i-1)*n1+2*c*cos(pi/2-atan(n1/2/m1))+d/2
	z66(i,j)=-h
#八角锥的绘制(只存在长向的两端)
#左端 i为奇数
for i in range(2,2*n+1):
	x81(i,1)=-m1+a/2
	y81(i,1)=c*sin(pi/2-atan(n1/(2*m))+d/2+2*(i-2)*n1
	z81(i,1)=-h
	x82(i,1)=a/2+c*cos(pi/2-atan(n1/(2*m))-m1
	y82(i,1)=d/2+(i-2)*2*n1
	z82(i,1)=-h
	x83(i,1)=a/2+c*cos(pi/2-atan(n1/(2*m))-m1
	y83(i,1)=-d/2+(i-2)*2*n1
	z83(i,1)=-h
	x84(i,1)=-m1+a/2
	y84(i,1)=-c*sin(pi/2-atan(n1/(2*m))-d/2+2*(i-2)*n1
	z84(i,1)=-h
	x85(i,1)=-m1-a/2
	y85(i,1)=-c*sin(pi/2-atan(n1/(2*m))-d/2+2*(i-2)*n1
	z85(i,1)=-h
	x86(i,1)=-m1-*c*cos(pi/2-atan(n1/(2*m))-a/2
	y86(i,1)=a/2+c*cos(pi/2-atan(n1/(2*m))-m1
	z86(i,1)=-h
	x87(i,1)=-m1-*c*cos(pi/2-atan(n1/(2*m))-a/2
	y87(i,1)=d/2+(i-2)*2*n1
	z87(i,1)=-h
	x88(i,1)=-m1-a/2
	y88(i,1)=c*sin(pi/2-atan(n1/(2*m))+d/2+2*(i-2)*n1
	z88(i,1)=-h
#右端
	x81(i,m+1)=-m1+a/2+m1*m
	y81(i,m+1)=c*sin(pi/2-atan(n1/(2*m))+d/2+2*(i-2)*n1
	z81(i,m+1)=-h
	x82(i,m+1)=a/2+c*cos(pi/2-atan(n1/(2*m))+m1*(m-1)
	y82(i,m+1)=d/2+(i-2)*2*n1
	z82(i,m+1)=-h
	x83(i,m+1)=a/2+c*cos(pi/2-atan(n1/(2*m))+m1*(m-1)
	y83(i,m+1)=-d/2+(i-2)*2*n1
	z83(i,m+1)=-h
	x84(i,m+1)=-m1+a/2+m1*m
	y84(i,m+1)=-c*sin(pi/2-atan(n1/(2*m))-d/2+2*(i-2)*n1
	z84(i,m+1)=-h
	x85(i,m+1)=-a/2+(m-1)*m1
	y85(i,m+1)=-c*sin(pi/2-atan(n1/(2*m))-d/2+2*(i-2)*n1
	z85(i,m+1)=-h
	x86(i,m+1)=-a/2+(m-1)*m1-c*cos(pi/2-atan(n1/(2*m))
	y86(i,m+1)=a/2+c*cos(pi/2-atan(n1/(2*m))-m1
	z86(i,m+1)=-h
	x87(i,m+1)=-a/2+(m-1)*m1-c*cos(pi/2-atan(n1/(2*m))
	y87(i,m+1)=d/2+(i-2)*2*n1
	z87(i,m+1)=-h
	x88(i,m+1)=-a/2+m1*(m-1)
	y88(i,m+1)=c*sin(pi/2-atan(n1/(2*m))+d/2+2*(i-2)*n1
	z88(i,m+1)=-h
i=i+2
#连接六角锥,形成巨型网格结构 
	p = mdb.models['Model-1'].parts['Part-1'] 
	m=mdb.Model(name='Model')
	p=m.Part(name='Part')
	p.WirePolyLine(points=(((x1(i,j), y1(i,j), z1(i,j)), (x33(i+1,j+1)), y33(i+1,j+1), z33(i+1,j+1)),) mergeWire=OFF
	, meshable=ON)
	p.WirePolyLine(points=(((x1(i,j), y1(i,j), z1(i,j)), (x5(i,j+1), y5(i,j+1), z5(i,j+1)), )mergeWire=OF
	F, meshable=ON)
	p.WirePolyLine(points=(((x2(i,j), y2(i,j), z2(i,j)), (x4(i,j+1), y4(i,j+1), z4(i,j+1)),) mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x2(i,j), y2(i,j), z2(i,j)), (x66(i-1,j+1), y66(i-1,j+1), z66(i-1,j+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x3(i,j), y3(i,j), z3(i,j)), (x55(i-1,j+1), y55(i-1,j+1), z55(i-1,j+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x3(i,j), y3(i,j), z3(i,j)), (x11(i-1,j), y11(i-1,j), z11(i-1,j)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x4(i,j), y4(i,j), z4(i,j)), (x66(i-1,j), y66(i-1,j), z66(i-1,j)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x11(i,j), y11(i,j), z11(i,j), (x55(i,j+1), y11(i,j+1), z11(i,j+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x22(i,j), y22(i,j), z22(i,j), (x44(i,j+1), y44(i,j+1), z44(i,j+1)), ), mergeWire=OFF, 
	meshable=ON)
#连接六角锥和八八角锥
 for i in range(1,2n+2)
	p.WirePolyLine(points=(((x5(i,j), y5(i,j), z5(i,j), (x82(1,j), y82(1,j), z82(1,j)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x4(i,j), y4(i,j), z4(i,j), (x83(1,j), y83(1,j), z83(1,j)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x1(i,j), y1(i,j), z1(i,j), (x87(i,m+1), y83(i,m+1), z83(i,m+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x4(i,j), y4(i,j), z4(i,j), (x83(i,m+1), y83(i,m+1), z83(i,m+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x81(i,1), y81(i,1), z81(i,1), (x84(i+1,1), y84(i,1), z81(i,1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x88(i,1), y88(i,1), z88(i,1), (x85(i+1,1), y85(i,1), z85(i,1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x81(i,m+1), y81(i,m+1), z81(i,m+1), (x84(i+1,m+1), y84(i,m+1), z84(i,m+1)), ), mergeWire=OFF, 
	meshable=ON)
	p.WirePolyLine(points=(((x88(i,m+1), y88(i,m+1), z88(i,m+1), (x84(i+1,m+1), y84(i+1,m+1), z81(i+1,m+1)), ), mergeWire=OFF, 
	meshable=ON)
i=i+2

#建立视图 
	session.viewports['Viewport: 1'].setValues(displayedObject=p)

大神帮忙看看

ABAQUS 结构CAE PYTHON

全部回答 (2)

默认 最新
有限元与近场动力学 2017年4月19日
楼主你这个是什么编写软件啊
2017年4月19日
评论 1 点赞
diaoerlangdang 2017年4月18日
你这个是直接写的还是通过录制宏啊?
2017年4月18日
评论 5 点赞

相似问题

查看全部
  • 学习Abaqus/Python时,添加约束出现问题,如何解决? 5个回答

    问题描述: #* TypeError: referencePoint; found 'AbaqusMethod', expecting a recognized type filling string dict # -*- coding: mbcs -*- from abaqus import * from abaqusConstants import * from caeModules imp

  • abaqus利用python Gui建立truss单元的疑问? 1个回答

    想利用python建立py文件批量生成truss单元,先试试一根: from abaqus import * from abaqusConstants import * session.viewports['Viewport: 1'].setValues(displayedObject=None) s = mdb.models['Model-1'].ConstrainedSketch(name='

  • abaqus脚本批量建模运算报错:Error in connection to analysis? 2个回答

    请教各位大佬,abaqus python脚本批量建模计算,每一个都是先建模后计算完成后再继续建后续模型,一天半后出现错误:"ERROR in job messaging system: Error in connection to analysis",然后后续只建模不计算。谢谢大佬指教! 我的python脚本代码大致概括如下: # -*- coding: UTF-8 -*- import matp

推荐阅读

转子旋转的周期性模型-水冷电机散热仿真

转子旋转的周期性模型-水冷电机散热仿真

技术邻小李 技术邻小李
¥100
汽车仪表模具模流分析的实战讲解

汽车仪表模具模流分析的实战讲解

北卡 北卡
免费
使用已标定的车辆动力学模型提升开发效率

使用已标定的车辆动力学模型提升开发效率

VI-grade中国 VI-grade中国
免费
solidworks 2016基础操作入门到精通

solidworks 2016基础操作入门到精通

新征程学院 新征程学院
免费
热力学理论入门基础(上)

热力学理论入门基础(上)

引垂思汀 引垂思汀
¥30
ABAQUS钢管混凝土柱温度场及耐火性能分析(未完)

ABAQUS钢管混凝土柱温度场及耐火性能分析(未完)

地下结构设计
¥40
前沿技术!大数据分析及人工智能在优化软件中的应用

前沿技术!大数据分析及人工智能在优化软件中的应用

IDAJ中国 IDAJ中国
¥9.99
新一代智能头灯的动态设计评估与仿真

新一代智能头灯的动态设计评估与仿真

Ansys中国 Ansys中国
免费
abaqus三维切削数值模拟(sph法)

abaqus三维切削数值模拟(sph法)

abaquser abaquser
¥30
UG有限元基础教程

UG有限元基础教程

moonshine🤓 moonshine🤓
免费
ANSYS新版本功能速递: HFSS微放电仿真

ANSYS新版本功能速递: HFSS微放电仿真

Ansys中国 Ansys中国
免费
0#块箱梁托架法施工结构模拟

0#块箱梁托架法施工结构模拟

yudachuan1105 yudachuan1105
¥200
一线科技工作者接受仿真咨询服务的全过程经验分享

一线科技工作者接受仿真咨询服务的全过程经验分享

技术邻直播 技术邻直播
免费
UG培训第九课:自由曲面构造法

UG培训第九课:自由曲面构造法

luffy8610 luffy8610
¥20
abaqus座椅滚轮拉脱力强度分析

abaqus座椅滚轮拉脱力强度分析

任总 任总
¥90
汽车模具工艺CAE分析

汽车模具工艺CAE分析

汽车-Albina 汽车-Albina
免费
十分钟快速进行电子产品结构设计方案评估

十分钟快速进行电子产品结构设计方案评估

技术邻直播 技术邻直播
免费
SolidWorks快速入门(操作+技巧+案例)试听课

SolidWorks快速入门(操作+技巧+案例)试听课

宸格教育 宸格教育
免费
* starccm+制动盘旋转-冷却仿真(主体更新完成)

* starccm+制动盘旋转-冷却仿真(主体更新完成)

qqsww qqsww
¥199
Abaqus在高科技与电子行业的应用(达索直播课程)

Abaqus在高科技与电子行业的应用(达索直播课程)

水木人CAE-林丽 水木人CAE-林丽
¥10