找回密码
 注册
Simdroid-非首页
楼主: JingheSu

[热分析] 分享一个焊接实例[单元生死+子程序]

[复制链接]
 楼主| 发表于 2012-5-10 16:44:58 | 显示全部楼层 来自 上海
tianma304 发表于 2012-5-10 16:31
我想请教下版主,用什么python语句能实现将一个六面体的cell的每个面形成单一的surf, ...

规则的模型可以,不规则的我还没有找到好方法。
回复 不支持

使用道具 举报

发表于 2012-5-10 16:50:50 | 显示全部楼层 来自 江苏镇江
Simdroid开发平台
JingheSu 发表于 2012-5-10 16:44
规则的模型可以,不规则的我还没有找到好方法。

恩 就是一般的六面体,能否用个简单的循环语句实现,些版主

点评

可以做的  发表于 2012-5-10 16:52
回复 不支持

使用道具 举报

发表于 2012-5-10 17:47:56 | 显示全部楼层 来自 江苏镇江
tianma304 发表于 2012-5-10 16:50
恩 就是一般的六面体,能否用个简单的循环语句实现,些版主

JingheSu版主能不能把具体语句写出来,谢版主
回复 不支持

使用道具 举报

发表于 2012-5-10 17:49:00 | 显示全部楼层 来自 江苏镇江
tianma304 发表于 2012-5-10 16:50
恩 就是一般的六面体,能否用个简单的循环语句实现,些版主

JingheSu版主能不能把具体语句写出来,先谢了
回复 不支持

使用道具 举报

 楼主| 发表于 2012-5-10 17:52:36 | 显示全部楼层 来自 上海
tianma304 发表于 2012-5-10 17:47
JingheSu版主能不能把具体语句写出来,谢版主

哪个不太方便写出来,呵呵
用的是Surface(...)这个函数,
On solid elements, you can use the following arguments:
face1Elements

face2Elements

face3Elements

face4Elements

face5Elements

face6Elements
回复 不支持

使用道具 举报

发表于 2012-5-10 18:28:25 | 显示全部楼层 来自 江苏镇江
JingheSu 发表于 2012-5-10 17:52
哪个不太方便写出来,呵呵
用的是Surface(...)这个函数,
On solid elements, you can use the following ...

我想的跟版主有些差距,下面是一个长方体part包含两个cell,想生成12个面。
p = mdb.models['Model-1'].parts['Part-1']
a = mdb.models['Model-1'].rootAssembly
c = a.instances['Part-1-1'].cells
for i in range(2) :
    cell = c[i:i+1]
    a.Set(cells=cell, name='Set-%s'%i)
    for j in range(6) :        
        face=cell.faces[j:j+1]
        a.Surface(side1Faces=face, name='Surf-%s'%ij)
错误说cell没faces。
版主帮帮忙
回复 不支持

使用道具 举报

发表于 2012-5-10 19:13:35 | 显示全部楼层 来自 重庆沙坪坝区
感谢楼主分享资料·
回复 不支持

使用道具 举报

发表于 2012-5-11 08:34:22 | 显示全部楼层 来自 江苏镇江
JingheSu 发表于 2012-5-10 17:52
哪个不太方便写出来,呵呵
用的是Surface(...)这个函数,
On solid elements, you can use the following ...

版主能否把例子的python分享下,感激不尽
回复 不支持

使用道具 举报

 楼主| 发表于 2012-5-11 08:41:05 | 显示全部楼层 来自 上海
tianma304 发表于 2012-5-10 18:28
我想的跟版主有些差距,下面是一个长方体part包含两个cell,想生成12个面。
p = mdb.models['Model-1'].p ...

cell并没有一个face的成员变量,但是它有一个getFaces()的方法,可以返回你要的face。
另外返回的faces一般都有六个面,你怎么确定你要的是哪一个?感觉这个不是很好确定。
face有一个方法getNormal()可以用来确定是不是你需要的面。

ps 实在抱歉我那个程序不太方便贴出来,呵呵,是帮别人写的。
回复 不支持

使用道具 举报

 楼主| 发表于 2012-5-11 08:42:07 | 显示全部楼层 来自 上海
tianma304 发表于 2012-5-10 18:28
我想的跟版主有些差距,下面是一个长方体part包含两个cell,想生成12个面。
p = mdb.models['Model-1'].p ...

我的模型比较简单,我自己知道我需要那个面,所以就用findAt()把我需要的面确定下来了。
回复 不支持

使用道具 举报

发表于 2012-5-11 09:29:50 | 显示全部楼层 来自 江苏镇江
JingheSu 发表于 2012-5-11 08:41
cell并没有一个face的成员变量,但是它有一个getFaces()的方法,可以返回你要的face。
另外返回的faces一 ...

那我再试试看。楼主能否讲下你的模型中那么多接触面定义的思路,有的一个Surf包含的好多的cell的面
还有请楼主指点下getFaces()返回的是以tuple,那为什么
face=getFaces()
a.Surface(side1Faces=face[2], name='Surf-1')
行不通,难道getFaces()返回的不是面,而是面的序号
回复 不支持

使用道具 举报

 楼主| 发表于 2012-5-11 10:39:53 | 显示全部楼层 来自 上海
tianma304 发表于 2012-5-11 09:29
那我再试试看。楼主能否讲下你的模型中那么多接触面定义的思路,有的一个Surf包含的好多的cell的面
还有 ...

6.1.2 getFaces()

This method returns a sequence consisting of the face ids of the faces which bound the cell.

Arguments

None.
Return value

A tuple of integers.

Exceptions

None.
回复 不支持

使用道具 举报

发表于 2013-11-2 09:03:58 | 显示全部楼层 来自 广东佛山
学习一下,TKS!赞
回复 不支持

使用道具 举报

发表于 2013-11-2 14:43:21 | 显示全部楼层 来自 湖北襄阳
本主题显示的时间不对,请版主看一下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

点评

问题提的很精彩: 5.0
问题提的很精彩: 5
有一项版主操作叫做提升,提升的效果就是这样。  发表于 2013-11-2 21:53
回复 不支持

使用道具 举报

发表于 2013-11-4 21:35:48 | 显示全部楼层 来自 河南洛阳
学习一下,谢谢了
回复 不支持

使用道具 举报

发表于 2013-11-26 20:28:50 | 显示全部楼层 来自 四川成都
刚开始搞焊接,入门级别,能否请高手们贴一个平板焊接入门的cae文件啊,INP重复起来存在困难。见笑了,谢谢各位。
回复 不支持

使用道具 举报

发表于 2013-12-5 09:40:24 | 显示全部楼层 来自 陕西西安
JingheSu 发表于 2012-5-10 17:52
哪个不太方便写出来,呵呵
用的是Surface(...)这个函数,
On solid elements, you can use the following ...

求详细解答,谢谢版主!
回复 不支持

使用道具 举报

发表于 2014-3-6 09:12:45 | 显示全部楼层 来自 美国
The material is so useful. I appreciate it.
回复 不支持

使用道具 举报

发表于 2014-3-19 20:40:21 | 显示全部楼层 来自 江西
初学者,学习下,呵呵
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-28 06:37 , Processed in 0.040227 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表