【文件属性】:
文件名称:matlab 仿真电磁场与声波耦合小程序
文件大小:22KB
文件格式:DOC
更新时间:2013-04-05 14:43:38
压电耦合
matlab 仿真电磁场与声波耦合程序最近用到耦合,写了一段小程序,奉献出来,与大家共享。
如果有很多节点,每两个节点位置相同,如果将这些杂乱无章的节点
耦合,是件很麻烦的事,可用这段程序,轻松解决。
cpnum=0
cmsel,s,n-zhong !需要耦合的节点
*GET,n_num,NODE,,COUNT, , , , !节点总数
*do,i,1,n_num
cmsel,s,n-zhong
*GET,n_lowest,NODE,,NUM,MIN, , , , !号码最小的节点
*GET,n_x,NODE,n_lowest,LOC,X !该节点坐标
*GET,n_y,NODE,n_lowest,LOC,Y
*GET,n_z,NODE,n_lowest,LOC,Z
NSEL,s,LOC,X,n_x-0.3,n_x+0.3 !寻找与该节点位置相同的节点
NSEL,R,LOC,Y,n_y-0.3,n_y+0.3
NSEL,R,LOC,z,n_z-0.3,n_z+0.3
cm,n_cp_cp,node !位置相同的节点形成一个组
cmsel,s,n-zhong
cmsel,u,n_cp_cp
cm,n-zhong,node !取消这些点后剩余的点形成组
*GET,n_num_1,NODE,,COUNT, , , , !节点总数
*if,n_num_1,lt,2,exit !如果节点数小于二则退出
cmsel,s,n_cp_cp
*GET,n_num,NODE,,COUNT, , , ,
*if,n_num,gt,1,then
CP,cpnum+1,ux,all
CP,cpnum+2,uy,all
CP,cpnum+3,uz,all
cpnum=cpnum+3
*else
*endif
*enddo
该段程序可用
CPINTF,UX,0.001
CPINTF,UY,0.001
CPINTF,UZ,0.001
网友评论
- 有参考意义,最近正在学习,参考一下,谢谢
- 有点参考的价值,只是这种结点操作的方法,速度很慢,稍微大一点的模型,就需要很长时间处理,不是特别实用