Flac3D常用命令流Word版

Flac3D常用命令流Word版
Flac3D常用命令流Word版

FLAC3D 常用命令流

;模型镜像

gen zone radcylinder size 25 1 25 25

gen zone reflect normal -1 0 0 origin x y z(面上一点);沿X轴镜像,通过对称平面法线向量确定对称面

gen zone reflect normal 0 0 -1 ;沿z轴镜像

;绘图控制

pl contour szz outline on

;在模型中显示位移-应变曲线

hist gp ydisp 0,0,0

hist zone syy 0,1,0

hist zone syy 1,1,0

pl his -2 -3 vs 1 ;在plot hist m vs n的形式里,m代表y轴,n代表x轴(不管m,n的正负); "-"表示对其值作"mirror"

;对模型进行压缩实验的方法

;即在模型两侧施加相反方向的速度

ini yvel 1e-7 range y -.1 .1

ini yvel -1e-7 range y 1.9 2.1

;修改模型的坐标值

ini x add -100 y add -100 z add -100

;显示云图的同时也显示模型网格轮廓

plot add cont disp outline on ;gradient更精确

;输入角度、弧度方法pi=π,90°为90.0*degrad

def set_vals

ptA = 25.0 * sin(pi/2);ptA=25.0

ptB = 25.0 * cos( 60.0*degrad );ptB=12.5

ptC=pi;ptC=3.1415926

end

set_vals

print ptA ptB ptC

;施加结构单元方法

sel shell id=5 range cylinder end1=(0.0, 0.0,0.0) &

end2=(0.0,25.0,0.0) radius=24.5 not

plot add sel geom black black cid on scale=0.03

sel node init zpos add -25.0

;如何显示某一平面

plot create name_plane

plot set plane origin 3 4 0 normal 1 0 0 plot add cont disp plane behind shade on plot add sel geom black

plot add axes red

plot current name_plane

plot show

;如何施加法向应力并显示所施加的力

apply nstress -3.0E7 range cylinder end1 0 -1 0 end2010 radius 39.9 not;柱体外表面施加法向力

apply nstress -5.0E6 range cylinder end1 0 -1 0 end2010 radius 2.1;柱体内表面施加法向力

plot grid green fap black;显示施加的力

;获取某网格点的ID,坐标值

def aa

get_id=gp_id(gp_near(3,0,0))

end

aa

print get_id

print gp position range id 3

;保存命令流文件

set log on

set logfile hua.log;文件存放的路径与调用的文本路径相同

......

set log off

;fish函数的说明与解释

def find_add ;定义fish函数find_add

head = null ;给head赋值

p_gp = gp_head ;第一个网格结点的指针赋给p_gp

loop_while p_gp # null ;当p_gp值不为null时作循环

x_pos = gp_xpos(p_gp) ;将指针为p_gp的结点的x坐标值赋给x_pos

if x_pos = 10.0 then ;如果x_pos = 10.0 则(执行)

new = get_mem(2) ;从主内存空间里得到2个fish变量对象并返回第一个对象的开始地址

mem(new) = head ;将head类型和数值置于地址为new的fish变量

mem(new+1)=p_gp ;第二个变量存储符合条件的zone地址

head = new ;将new值赋给head

endif

p_gp = gp_next(p_gp) ;将结点指针为p_gp的下一个结点的指针赋给p_gp endloop;结束循环

end ;结束fish函数

;实际上这个fish函数为满足条件(x坐标为10的)的zone的地址开辟一定的地址空间,各地址之间存在一定的联系

;找到第一个符合条件的zone地址后,用new = get_mem(2) 从主内存空间里得到2个fish变量对象并返回第一个对象的开始地址,并用;下面的mem(new) = head ,将第一次开辟的两个变量的第一个变量存储地址head(注意第一次head=null),第二个变量存储第一;个符合条件的zone地址,并将第一个变量的地址赋予head(head=new),第一次循环结束;下次循环,同样开辟两个变量对象,第;一个变量对象记录上次循环开辟的第一个变量的地址,第二个记录

第二个符合条件的zone地址,其余循环依次类推,这样子就建立了;一个符合条件的zone地址链条,方便以后使用。

;FLAC后处理

;输出JPG图片

set plot jpg

set plot quality 100

plot hard file XX.jpg

;输出TXT文件

hist write X file xx.txt ;(x是历史记录ID)

print con zd

;输出单元应力和节点位移

set log on

set logfile xx.log

print zo stress

print gp dis

set log off

;生成影片文件

plot set rot 20 0 30

plot con szz ou on magf 10

plot add hist 1

set movie avi step 1 file xx.avi

movie start

solve

;计算间隔命令在solve命令之前

set hist_rep 1 ;(步数)

;检查模型赋值情况

plot bcon prop bu

;变形云图加网格放大20 倍

plot con zd ou on magf 20

;变形网格

plot sk magf 20

;变形矢量图(加网格)

plot sk dis scale 0.07 ;(scale是箭头长度,默认0.05)

;如何观察塑性区

plot block state

plot block state sh_n

plot block state sh_p

;切片操作

plot set plane ori 1 2 3 norm 0 0 -1 plot con zd plane

plot add dis plane

plot add sk

plot add ax

;切片后方部分显示

plot con zd plane behind shade on

交集就是range group a group b

并集就是range group a any group b any not是差集

相关主题
相关文档
最新文档