24小时热门版块排行榜    

查看: 684  |  回复: 2

8820135

银虫 (初入文坛)

[求助] 这个APDL程序怎么编程

请哪位高手指点一下,这个模型怎么实现?
我的目标是,在一个圆柱体内,随机填充粒径大小不一样的小球,孔隙率达到60%时停止填充;二维的就是先在一个圆面内,随机填充大小不一样的小圆,孔隙率达到60%是停止填充。
  想用ANSYS里的APDL实现,但我不知道这个APDL程序怎么描述
回复此楼
天涯浪子
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ctgu_zheng

专家顾问 (著名写手)



臭水沟(金币+1): 谢谢交流~~ 2011-07-25 21:11:47
这个 可以用ansys 做吗
2楼2011-07-25 16:41:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

adadadzhu

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★
臭水沟(金币+4): 谢谢应助~~ 2011-07-26 17:05:08
8820135(金币+2): 谢谢 2011-11-11 09:44:21
不知道这种思路是否可行
二维情况下:
建立一个大圆面,定义1组件(使用cm命令)
在其中随机位置,随机半径建立一个小圆,(不知道ANSYS中是否有随机数的选择)
这个小圆定义2组件(使用cm
使用布尔运算大圆减去小圆,小圆保留
此时,减去小圆的部分,用*get获得面积,判断这个面积与初始面积的比例,(*if语句)
更新1组件和2组件
循环,知道面积比例小于40%

最后需要整理,因为其中可能会出现小圆有部分在大圆外,如果你需要对小圆也划分网格的话。

这只是一种思路,看对你是否有用,实际编程过程可能会有一些问题出现,慢慢解决吧。(*get命令可以获得面的面积,但是对于不规则面,我没有试过)另外,其中建立1组件和2组件,只是为了编写APDL语言方便,
3楼2011-07-26 15:23:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 8820135 的主题更新
信息提示
请填处理意见