sel cable beg 1.0,2.0,1.5 end 5.0,2.0,1.5 nseg 4 sel cable beg 1.0,2.0,0.5 end 5.0,2.0,0.5 nseg 4
sel cable prop emod 2e9 ytension 1e8 xcarea 1.0 gr_coh 1e10 gr_k 2e9 gr_per 1.0 model null range exc4; step 1000 save cab4.sav
sel cable beg 1.0,2.8,1.5 end 5.0,2.8,1.5 nseg 4 sel cable beg 1.0,2.8,0.5 end 5.0,2.8,0.5 nseg 4
sel cable prop emod 2e9 ytension 1e8 xcarea 1.0 gr_coh 1e10 gr_k 2e9 gr_per 1.0 model null range exc5 step 1000 save cab5.sav
plot create TrenchSupport plot set rot 63.89, 334.35, 3.4 plot set cent 2.893, 3.446, 3.899 plot set size 4.136
plot add cont disp out on plot add sel cable force plot add axes black
66 举一个三轴压缩的例子?
gen zone cyl p0 0 0 0 p1 1 0 0 p2 0 2 0 p3 0 0 1 size 4 5 4 gen zone reflect norm 1,0,0 gen zone reflect norm 0,0,19 model mohr
prop bulk 1.19e10 shear 1.1e10 prop coh 2.72e5 fric 44 ten 2e5 fix x y z range y -.1 .1 fix x y z range y 1.9 2.1
apply sxx =-1e5 szz=-1e5 range cyl end1 0,0,0 end2 0,2,0 radius 1 ini yvel 0 grad 0 -1e-4 0 range y 0 2 sol
1.FLAC程式使用前准备步骤
步骤1:依比例画出所欲分析的资料
在纸上画出地点的位置、地层资料、并简单标示距离及深度资料。
步骤2:换算输入资料成同一单位
将现有地层资料,如 Density, Bulk modulus, Young`s modulus, tension, cohesion, friction Angle 等资料,换算成同一单 位。
附注 :需谨慎检查输入资料的单位,如因单位不同而造成过大或过小的值,将会造成 FLAC无法计算,而产生ERROR信息。
步骤3:应用公式简略计算
应用公式或依据经验,简略算出FLAC输出资料的范围,以作为Debug及输出资料分析时验证。
步骤4:建立x, y坐标与node i, j之间的关系
在图上距离及深度的关系,建立x, y坐标系统,再由x, y坐标系统,转换与网格间系,为了便于以后输出资料的分析,故应确实 掌握网格的位置及其相对应的x, y 坐标。
建议在敏感区域使用较密的网格,其它地方则使用较疏的网格,刚开始执行程序时,不宜使用网格太大的网格数目,因尽量使网 格总数少于1000,以节省时间。
2.FLAC 3D 程序的编写步骤:
1 Config ________
2 Grid ________
3 Model ________
4 求起始的应力平衡________
(1)建立x, y坐标与网格的关系,建议使用Gen指示:
Gen x1,y1 x2,y2 ,x3,y3 x4,y4 i=i0,i1 j=j0,j1 详细指令参见使用手册,FLAC程式可自动产生x, y 坐标与网格的关系,但由 于产生的网格坐标不易控制,将对其它的工作产生负面影响,故依使用前步骤4所建立的关系,将网格依其疏密程度需要的不同,实 际控制网格的坐标。
(2)设定材料性质:prop
(3)设定外力:Set Grav, Apply Pressure, ini sxx, Syy
(4)设定边界条件:fix, free
(5)求起始的应力平衡:solve
(6)储存:Save
5 求工程的影响________
求出区域内的应力分布情况后,再依工程的流程及步骤阶段执行各工程进行过程的影响,建议使用以下的步骤:
(1)调出起初的应力平衡:re_____ .sav
(2)设定新的材料性质:model,prop
(3)设定新的支撑性质:struct
(4)设定新的外力
(5)设定边界条件
(6)求工程时的应力平衡
(7)储存
1.2常用命令流
;模型镜像
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的正负); \表示对其值作\
;对模型进行压缩实验的方法
;即在模型两侧施加相反方向的速度 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
;输入角度、弧度方法 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