找回密码
 注册
Simdroid-非首页
查看: 445|回复: 9

[电场电路] 蒙特卡洛方法下的纤维随机分布导电模型,有几个错误,欢迎大侠指点,附命令流

[复制链接]
发表于 2012-3-2 16:18:16 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
简要介绍一下:
本人想做导电纤维水泥基复合材料的电学模拟,选用的单元是link68和solid69.
具体遇到以下几个问题:
1.由于是计算机随机生成的伪随机数,所以在边界形成的关键点很少,在中间形成的较多,这将导致在边界处的导电效果非常微弱。
2.由于是随机生成的单元,所以很难通过共节点来进行建模,以至于link单元与solid的接触非常不理想(有人能帮我解决一下这个问题吗)
3.纤维之间的接触,我是通过先生成单元,划分网格,然后通过nummrg,node;nummrg,kp,并通过调整容差使节点距离≤纤维直径,来使节点合并(不知道这样可取吗)
4.纤维与水泥基材料的接触,我也想通过nummrg命令来共节点,可是实际操作起来非常麻烦,烦请大侠指教一二,谢谢
 楼主| 发表于 2012-3-2 16:20:44 | 显示全部楼层 来自 黑龙江哈尔滨
Simdroid开发平台
命令流如下
!定义坐标范围
xmin=0
xmax=1.676e-2
ymin=0
ymax=1.676e-2
zmin=0
zmax=1.676e-2
jmin=0
jmax=6.28318
hmin=0
hmax=3.14159
smin=0
smax=3.14159
!定义纤维个数
num=3000
!定义纤维单肢长度
l=0.5e-2
!定义纤维转角
u=1.04720
!存放纤维端点及其数组
*dim,point,array,num,3
*dim,angle,array,num,3
*dim,abc,array,num,1

cum=0
*do,i,1,1000000000000
*if,cum,eq,num,then
*exit
*endif
x=rand(xmin,xmax)
y=rand(ymin,ymax)
z=rand(zmin,zmax)
j=rand(jmin,jmax)
h=rand(hmin,hmax)
s=rand(smin,smax)
*if,(-0.5-cos(h)*cos(s))/(sin(h)*sin(s)),gt,-1,and,(-0.5-cos(h)*cos(s))/(sin(h)*sin(s)),lt,1,then
*if,x+l*sin(h)*cos(j),ge,xmin,and,x+l*sin(h)*cos(j),le,xmax,then
*if,y+l*sin(h)*sin(j),ge,ymin,and,y+l*sin(h)*sin(j),le,ymax,then
*if,z+l*cos(h),ge,zmin,and,z+l*cos(h),le,zmax,then
*if,x+l*sin(s)*cos(j-acos((-0.5-cos(h)*cos(s))/(sin(h)*sin(s)))),ge,xmin,and,x+l*sin(s)*cos(j-acos((-0.5-cos(h)*cos(s))/(sin(h)*sin(s)))),le,xmax,then
*if,y+l*sin(s)*sin(j-acos((-0.5-cos(h)*cos(s))/(sin(h)*sin(s)))),ge,ymin,and,y+l*sin(s)*sin(j-acos((-0.5-cos(h)*cos(s))/(sin(h)*sin(s)))),le,ymax,then
*if,z+l*cos(s),ge,zmin,and,z+l*cos(s),le,zmax,then
cum=cum+1
point(cum,1)=x
point(cum,2)=y
point(cum,3)=z
angle(cum,1)=j
angle(cum,2)=h
angle(cum,3)=s

*else
*endif
*endif
*endif
*endif
*endif
*endif
*endif
*enddo

/prep7
!选择单元类型
et,1,link68
!定义实常数
r,1,7.85e-9
!定义电阻率
mp,rsvx,1,1e-7
uimp,1,kxx,,,1e3
*do,i,1,num
abc(i,1)=angle(i,1)-acos((-0.5-cos(angle(i,2))*cos(angle(i,3)))/(sin(angle(i,2))*sin(angle(i,3))))
!生成关键点
k,point,point(i,1),point(i,2),point(i,3)
k,point1,point(i,1)+l*sin(angle(i,2))*cos(angle(i,1)),point(i,2)+l*sin(angle(i,2))*sin(angle(i,1)),point(i,3)+l*cos(angle(i,2))
k,point2,point(i,1)+l*sin(angle(i,3))*cos(abc(i,1)),point(i,2)+l*sin(angle(i,3))*sin(abc(i,1)),point(i,3)+l*cos(angle(i,3))
*enddo
!连接关键点生成线
*do,n,1,8997,3
lstr,n,n+1
lstr,n,n+2
*enddo
!布尔运算使纤维接触
btol,1e-5
!分配单元属性
latt,1,1,1
!划分网格
lesize,all,,,50
lmesh,all
nummrg,node,0.577e-5,1e-5,,low
nummrg,kp,0.577e-5,1e-5,,low
numcmp,all
!选择单元类型
et,2,solid69
!定义电阻率
mp,rsvx,2,1e4
uimp,2,kxx,,,2.33
!生成实体
BLC4,0,0,1.676e-2,1.676e-2,1.676e-2
/trlcy,volu,1,1
!分配单元属性
vatt,2,,2
!划分网格
esize,,30
!选择先映射后自由网格划分
mshkey,2
!选择3d六面体单元
mshape,0,3d
vmesh,all
!合并编号重复节点
nummrg,node,0.577e-5,1e-5,,low
nummrg,kp,0.577e-5,1e-5,,low
numcmp,all
finish

!进入求解器
/solu

!在面4上施加200电压
asel,s,area,,4
da,all,volt,200
!在面3上施加0电压
asel,s,area,,3
da,all,volt,0
asel,all
solve
finish
/post1
回复 不支持

使用道具 举报

 楼主| 发表于 2012-3-2 16:24:34 | 显示全部楼层 来自 黑龙江哈尔滨
纤维的模拟最好用pipe单元,可是模拟电场的单元只有一种线单元,link68.
关于线单元和实体单元的接触,建模时最好采用共节点,而本模型无法做到共节点。
还有就是想用实体单元来做纤维模型,可是涉及到划分网格以及几何建模时的不可操作性,放弃了,不知道有大侠能帮忙解决不
回复 不支持

使用道具 举报

 楼主| 发表于 2012-3-5 01:08:03 | 显示全部楼层 来自 黑龙江哈尔滨
我现在改用实体单元模拟,虽然难点,但很期待
回复 不支持

使用道具 举报

发表于 2012-4-24 10:05:01 | 显示全部楼层 来自 山西运城
纤维和水泥基的接触问题你解决了嘛,我现在遇到同样的问题,请教一下!
回复 不支持

使用道具 举报

发表于 2012-4-24 10:42:41 | 显示全部楼层 来自 山西运城
能不能把你的接触命令流给我说一下啊,我参考一下,用nummrg 计算会出现错误!
回复 不支持

使用道具 举报

发表于 2013-12-23 22:21:38 | 显示全部楼层 来自 广东广州
有没有懂的啊,交流一下,940882343
回复 不支持

使用道具 举报

发表于 2015-6-9 12:02:10 | 显示全部楼层 来自 天津
用什么命令定义的随机分布,能说说怎么操作吗?
回复 不支持

使用道具 举报

发表于 2019-7-19 15:40:45 | 显示全部楼层 来自 湖北武汉
你好,老师,请问可以分享下学习的资料吗?984694780@qq.com
回复 不支持

使用道具 举报

发表于 2019-9-6 11:24:00 | 显示全部楼层 来自 陕西西安
xiaofengfeng 发表于 2012-3-5 01:08
我现在改用实体单元模拟,虽然难点,但很期待

你是用脚本生成随机纤维吗
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 20:46 , Processed in 0.049878 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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