文档库 最新最全的文档下载
当前位置:文档库 › FLAC3D命令流(挺实用)

FLAC3D命令流(挺实用)

FLAC3D命令流(挺实用)
FLAC3D命令流(挺实用)

1、怎样查看模型?

答:plot grid 可以查看网格,plot grid num 可以查看节点号。

2、请问在圆柱体四周如何施加约束条件?

答:可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2 radius r2 not,其中r2

fix x range end1 1 0 0 end2 1 4 0 rad 1 end1 1 0 0 end2 1 4 0 rad 1

3、怎么能把一个PLOT的图像数据导出来以便用其他软件绘图?答:用set log on 命令,把数据导出来,转到excel里处理一下,然后用surfer或者什么作图软件绘制就行了。

4、用命令建立模型后,如何显示点的坐标?

答:使用plo blo gro gpnum on命令

5、关于gauss_dev对性质进行高斯正态分布的问题?

答:根据手册上的说明:下面的命令设定一个平均摩擦角为40度,标准方差是±5%。则命令如下:prop friction 40 gauss_dev 2

问题:请问gauss_dev 2中的2是如何计算的?如果把±5%改为±10%,则命令应如何写?40×5%=2

6、reflect问题

问:gen zone radbrick &p0 (0,0,0) p1 (10,0,0) p2 (0,10,0) p3 (0,0,10) &size 3,5,5,7 &ratio 1,1,1,1.5 &dim 1 4 2 fill

plot surf

gen zone reflect dip 0 dd 90 (对xy面做镜像)

gen zone reflect dip 90 dd 90 (对yz面做镜像)

(1)dd表示y轴正向顺时针到那条射线的夹角,dip表示对称参照面与xy平面的夹角,对称参照面与xy平面的夹角在xy平面的投影是一条射线。首先应该按照dd的方向大体确定这个面的朝向,dd 指的是从y轴正方向按顺时针(clockwise)方向转向所要确定面的法线方向

在xy平面上的投影的夹角,然后再确定dip,dip指的是从xy平面转向所要确定的平面的角.(及z轴负方向转过角度)

(2)命令:reflect normal xyz origin xyz (根据法线和过一点建的面)最常用,至于实际使用过程中有人问道:normal -1 0 0 与normal 1 0 0的区别,我试过两者的效果是一样的,没区别,虽然方向不同,但表达的是同一个面。

reflect dd a dip b origin xyz 这个就是用里建立斜面镜像的。

有一点注意了,镜像的时候如果是模型镜像的话,相当于在建立一个模型,故,在reflect的前面要加建模的关键字,gen zone reflect……

7、关于两种fix是否有区别?

fix z range z -0.1 0.1

fix x range x -0.1 0.1 any x 1.9 2.1 any

fix y range y -0.1 0.1 any y 1.9 2.1 any

fix z range z -0.1 0.1

fix x range x -0.1 0.1

fix x range 1.9 2.1

fix y range y -0.1 0.1

fix y range y 1.9 2.1

答:是一样的,any表示并列连接关系,及and的意思。

8、initial apply set 的区别

答:initial 初始化命令,初始化计算应力状态,定义材料参数、重力等;apply边界条件限制命令,如施加边界的力、位移等约束等;set 用于设置计算的模式,控制计算过程。

Ini 施加的初始力在计算过程中是会变的,一般体力需要初始化,而apply施加的力、边界条件不会随着计算变化。set命令作用于整个网格(赋值全局变量),ini则初始化指定范围内网格点、域的偏移量。初始应力不仅仅是重力引起的。

9、Tension-p shear-p tension-n shear-n表示的含义

答:在计算的循环里面,每个循环中,每个zone 都依据failure criterion 处于不同的状态,shear和tension 分别表示因受剪和受拉而处于塑性状态.n 表示now,p表示previous,即分别表示在现在和以前的循环当中处于塑性状态。

10、history保存数据,print显示

在错误的命令流中“原点位移.dat”文件中只有:“Step 1 Y-Displace”而没有保存下数值,怎么回事?我怎么才能获得table中的数据?

输入'print tabel n'能得到table中的数据

(正确)

hist gp ydisp 0,0,0

hist zone syy 0,1,0

hist zone syy 1,1,0

step 3000

hist write 1 file 原点位移.dat

hist write 2 file 中部单元应力.dat

hist write 3 file 边缘单元应力.dat

hist write 1 table 1

hist write 2 table 2

hist write 3 table 3

hist write 2 3 vs 1 file 单压.dat

(错误)

hist gp ydisp 0,0,0

hist zone syy 0,1,0

hist zone syy 1,1,0

hist write 1 file 原点位移.dat

hist write 2 file 中部单元应力.dat

hist write 3 file 边缘单元应力.dat

hist write 1 table 1

hist write 2 table 2

hist write 3 table 3

hist write 2 3 vs 1 file 单压.dat

step 3000

11、plot显示x、y坐标图

hist n 1

hist gp ydisp 0,0,0

hist ax_str

hist gp xdisp 1,1,0

step 1500

plot hist 2 vs -1 ;axial stress vs axial disp.

plot hist 3 vs -1 ; circumferential disp. vs axial disp

答:那2是不是代表hist gp ydisp 0,0,0,而-1 指得是hist gp ydisp 0,0,0为什么不是1而是负值?

1) 在plot hist m vs n的形式里,m代表y轴,n代表x轴(不管m,n的正负);

2) "-"表示对其值作"mirror",如果大家使用AUTOCAD的话就明白"mirror"的含义了,比如上面的hist 1 gp ydisp的值是0~100,那么vs -1就变成-100~0.以此类推.

3) 要这么做主要是为了符合岩土工程的习惯需要,例如桩载荷试验曲线,沉降曲线等都不是画在第一象限内。

12、关于water.fis的命令注释(设置地下水位)

答:(1)water.fis的功能是设置地下水位面,在二维计算中,通过water

table命令即可设置水位线,在三维计算中由于地下水位是面,因此需要作一些插值运算,以便形成水位面。这个FISH程序包含三个函数parm,aux1和aux2。parm用来设定水位的边值,即设置水位的区域,aux1插值计算等值线的点,aux2调用aux1的计算结果,使用FLAC3D命令形成水位面。

(2)首先设置参数值,然后定义一个table.

def parm

nptab1=7

nprof=10

end

parm

table 1 (12 0) (18.25 12.5) (25 17) (35 21) (50 24) (75 25) (150 25)

产生table1,包含7组数据点。

3) 在解释的两个FISH函数之前,对table,xtable,ytable作一些总的说明。water.fis程序反复使用了这三个变量,理解了这三个变量的含义,water.fis这段程序就解决了大半问题了。

Itasca 的所有软件都使用了相同的数据结构储存数据,称之为链表结构,类似于关系型数据库中的数据链接方法。如果有数据结构的知识,或掌握关系型数据库的SQL 语言,这三个变量的含义就不难理解了,只不过这个操作与真正的数据库操作相比,只有两个数据变量x,y。我用数据库的术语作解释:table 就是产生一个“表”,xtable,ytable 的作用就是产生一个新表(Create)以及对表中的数据进行取出(Select)、插入(Insert)、替换(Update)操作.

4)FISH函数aux1的作用是在table 1的基础上产生出另外个table,table的ID 从11到17,每个table有10个数据集。alfa的计算方法是为适合(fit)曲面而采用的坐标点算法。

def aux1

loop n(1,nptab1)

rr=xtable(1,n)

zz=ytable(1,n)

loop k(1,nprof)

case_of k

alfa=0.5*(pi+.1)*float(k-2)/float(nprof-2)

xtable(n+10,k)=rr*cos(alfa)

ytable(n+10,k)=rr*sin(alfa)

case 1

xtable(n+10,k)=rr

ytable(n+10,k)=-40.0

case 2

xtable(n+10,k)=rr

ytable(n+10,k)=0.0

end_case

end_loop

end_loop

end

aux1

当执行这个FISH函数后,生成(nptab1+10,nprof)组数据,这些数据为Aux2调用。注意:本段程序产生的数据是为那个特定的曲面边坡制作的,不是一个general purpose的LIB

5)FISH函数aux2的作用是使用W ATER TABLE face命令产生水面,把table 1的ytable值作为z坐标,aux1产生的数据作为x,y坐标。def aux2

command

set grav 0 0 -10

water dens 1000

end_command

loop n(1,nptab1-1)

loop k (1,nprof-1)

xx1=xtable(n+10,k)

yy1=ytable(n+10,k)

zz1=ytable(1,n)

xx2=xtable(n+10,k+1)

yy2=ytable(n+10,k+1)

zz2=zz1

xx3=xtable(n+11,k+1)

yy3=ytable(n+11,k+1)

zz3=ytable(1,n+1)

xx4=xtable(n+11,k)

yy4=ytable(n+11,k)

zz4=zz3

command

WATER TABLE face xx1,yy1,zz1 xx2,yy2,zz2 xx3,yy3,zz3

WATER TABLE face xx1,yy1,zz1 xx3,yy3,zz3 xx4,yy4,zz4

end_command

end_loop

end_loop

end

aux2

13、FLAC结果数据的导出

pl set back white ;设置背景

set plot bitmap size (800,510) ;设置图片大小

plot set caption size 37 ; 设置图例数字大小(default=35 范围10-50) mainwin size 1 1 position 0 0.8 ; command window

plot set window size 0.8 0.8 position 0.1 0.0 ; graphics window

plot set center 100 0 40

根据情况更改

14、一段fish命令的解释

def aux1 定义函数

loop n(1,nptab1) 开始一个循环,从1循环到变量nptab1

rr=xtable(1,n) 从table 1 的x列中读第n个数付给变量rr

zz=ytable(1,n) 从table 1 的y列中读第n个数付给变量zz

loop k(1,nprof) 开始第二个循环,从1循环到变量nprof

case_of k 下面是一个选择结构,利用变量k判断

alfa=0.5*(pi+.1)*float(k-2)/float(nprof-2)

xtable(n+10,k)=rr*cos(alfa)

ytable(n+10,k)=rr*sin(alfa)

case 1 当k=1的时候执行下面语句

xtable(n+10,k)=rr table n+10的x列第k个值等于变量rr

ytable(n+10,k)=-40.0 table n+10的y列第k个值等于变量-40

case 2 当k=2的时候执行下面语句

xtable(n+10,k)=rr table n+10的x列第k个值等于变量rr

ytable(n+10,k)=0.0 table n+10的y列第k个值等于变量0

end_case 结束选择结构

end_loop 结束第二个循环

end_loop 结束第一个循环

end 函数定义结束

aux1 执行什么定义的函数

15、有关命令的解释

(1)apply nvel 0.1 plane dip 60 dd 270 range left_boun

apply 施加边界条件,plane法向速度为0.1,plane 面的位置:倾角60(在xoy平面从-Z轴方向逆时针旋转),dd 走向270度,从+y方向绕z轴顺时针旋转;

(2)ini szz -5e4 grad 0 0 -1e4

ini 初始边界条件,szz=-5e4+x*0+y*0+-z*-1e4,注:-5e4是range范围起点坐标的SZZ值,x,y,z所施加应力网格点的坐标。

16、渗流示例

;------------------------------参数部分

bulk modulus, K 390 MPa 体积模量(土质比较硬)

shear modulus, G 280 MPa 剪切模量

soil dry density, ρd 1200 kg/m3 土的密度

water density, ρw 1000 kg/m3 水的密度

wall density, ρwal 1500 kg/m3 档土墙的密度

permeability, k 10?12 m2/Pa-s 渗透系数

porosity, n 0.3 孔隙率

fluid bulk modulus, Kf 2.0 GPa 流体的体积模量

;-----------------------以下是命令流

;------------------------------------------------------

; Excavation in a saturated soil

;------------------------------------------------------

config fluid ;设置流体算法

; --- geometrical model --- 建立模型

gen zone brick p1 12 0 0 p2 0 12 0 p3 0 0 12 size 12 12 12 rat 1 1 1 group soil ;设置土组

group excavate range x 0 4 y 0 4 z 0 5 ;设置开挖范围组

group wal1 range x 4 5 y 0 5 z 0 7 ; 设置档土墙 1 组

group wal2 range x 0 4 y 4 5 z 0 7 ;设置档土墙 2 组

group wall range group wal1 any group wal2 any ;档土墙1 和2 合并为一个档土墙组

; --- fluid flow model --- 流体模型

model fl_iso ;各项同性流体

prop perm 1e-12 poro 0.3 ;设置渗透系数和??比or ??率

ini fdensity 1e3 ; 初始化水密度

ini fmod 2.0e9 ftens -1e-3 ; 初始化水的体积模量及??

model fl_null range group excavate ; 开挖部分没有水流

model fl_null range group wall ;档土墙不渗水

ini pp 0 grad 0 0 1e4 ;初始化孔隙水压力

fix pp range z -0.1 0.1 ;约束应该是整个模型的底部吧?

fix pp range x -0.1 4.1 y -0.1 4.1 z 4.9 5.1 ;开挖部分也给约束住了,而其他的地方不管

; --- mechanical model --- 力学模型

model elas ; 弹塑性

prop bul 3.9e6 shea 2.8e6 ;设置体积模量和剪切模量,这两个必须,有一次我只设置了体积模量,就错的一塌糊涂

model null range group excavate ;力学模型的开挖

ini density 1.2e3 ;初始化密度,应该是土的密度

ini density 1.5e3 range group wall ;初始化墙(档土墙)的密度,

fix x range x -.1 .1 ;施加约束,据说差分法约束0 的时候,必须取一个-0.1<0<0.1,范围

fix x range x 11.9 12.1 ;施加约束,或者叫做边界条件

fix y range y -.1 .1 ;施加约束

fix y range y 11.9 12.1

fix z range z 11.9 12.1

; initial total stresses 出世总应力

ini szz 0 grad 0 0 -1.5e4 ;z方向的应力大一些

ini sxx 0 grad 0 0 -1.2e4 ;水平方向的,小一些

ini syy 0 grad 0 0 -1.2e4 ;

apply nstress 0 grad 0 0 -1.2e4 range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0

apply nstress 0 grad 0 0 -1.2e4 range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0

apply nstress -7.5e4 range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1

; --- setting --- 设置

set gravity 0 0 10 ;设置重力加速度

; --- initial state --- ;初始化状态

solve force 1 ; check initial equilibrium 求解平衡

; --- histories --- 记录

set hist_rep 40 ;记录步为40

hist fltime ;记录时间

hist gp pp 0 0 6 ;记录某点的孔隙水压力

hist gp xdis 4 0 0 ;水平位移

hist gp xdis 4 0 2 ;记录水平位移

hist gp xdis 4 2 0

hist gp zdis 0 0 5 ;记录竖向位移

hist gp zdis 2 0 5

hist gp zdis 4 0 5

hist gp zdis 2 2 5

hist gp zdis 4 2 5

hist gp zdis 4 4 5

hist gp zdis 10 0 1

hist gp zdis 10 0 2

;

; --- excavation --- 开挖

set fluid off ;关闭水

; apply pore pressure at walls 在墙上施加孔隙水压力

apply nstress 0 grad 0 0 -1.e4 range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0

apply nstress 0 grad 0 0 -1.e4 range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0 apply nstress -5.e4 range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1

solve ;force 1 ;求解

save exc1.sav ; 保存

;

; --- drainage --- 排水

apply remove nstress ;撤掉刚才的压力

def relaxsetup ;定义一个释放函数的参数

step0 = step

end

relaxsetup ;调用

def relax ;定义一个释放函数

rstep = step - step0

if rstep < ncyc then

relax=1.0-(float(rstep)/float(ncyc))

else

relax = 0.0

endif

end ;结束

set ncyc = 1000 ;先赋值,随后调用

apply nstress 0 grad 0 0 -1.e4 hist relax &

range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0

apply nstress 0 grad 0 0 -1.e4 hist relax &

range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0

apply nstress -5.e4 hist relax &

range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1

cyc ncyc

solve ;求解

save exc2.sav ;保存

; --- percolation --- 渗透

set fluid on ;设置水算法

fix pp 0 range x -0.1 4.1 y -0.1 4.1 z 4.9 5.1 ;施加孔隙水压力

cyc 9000 ;循环

save exc3.sav ;保存

plot create excav ;建立一个显示的视图一下内容都是显示内容plot set rot 200 0 195

plot set cent 6 6 6

plot set dist 39.18

plot set magn 0.8

plot set plane ori 0 0 0 normal 0 -1 0

plot add cont pp out on

plot add block group lgra range group wall

plot add cont pp int 10000 max 110000 range x 0 4 y 0 4 z 5 7 plot add flow plane

plot show

Ret

17、用什么命令可以位移图中显示最大位移点的坐标?答:用fish编了一个,算法好像有点烦,不过目的可以实现你可以参考一下。

def get_gp_maxdisp

gp0_disp = gp_xdisp(gp_head)*gp_xdisp(gp_head)

gp0_disp = gp0_disp + gp_ydisp(gp_head)*gp_ydisp(gp_head) gp0_disp = gp0_disp + gp_zdisp(gp_head)*gp_zdisp(gp_head) gp0_disp = sqrt(gp0_disp)

p_gp=gp_head

;找最大值

loop while p_gp # null

gp_disp = gp_xdisp(p_gp)*gp_xdisp(p_gp)

gp_disp = gp_disp + gp_ydisp(p_gp)*gp_ydisp(p_gp)

gp_disp = gp_disp + gp_zdisp(p_gp)*gp_zdisp(p_gp)

gp_disp = sqrt(gp_disp)

if gp_disp>gp0_disp

gp0_disp=gp_disp

endif

p_gp = gp_next(p_gp)

endloop

;找最大值的坐标

p_gp=gp_head

ss=0

loop while p_gp # null

gp_disp = gp_xdisp(p_gp)*gp_xdisp(p_gp)

gp_disp = gp_disp + gp_ydisp(p_gp)*gp_ydisp(p_gp)

gp_disp = gp_disp + gp_zdisp(p_gp)*gp_zdisp(p_gp)

gp_disp = sqrt(gp_disp)

if gp_disp=gp0_disp

ss=ss+1

xtable(1,ss)=gp_xpos(p_gp)

ytable(1,ss)=gp_ypos(p_gp)

endif

p_gp = gp_next(p_gp)

endloop

end

get_gp_maxdisp

18、如何显示计算后模型的变形状态?

答:pl sk magfac **(一个放大的数字)

19、如何查看剖面上任一点的位移值

答:print gp disp range x() y( ) z( )或print gp disp range id

plot gp disp range x() y( ) z( )或plot gp disp range id

20、group命令划分斜面

答:group groupname colour range plane above dd ** dip ** origin *** plane below dd ** dip ** origin ***

dd 和dip就是两个斜面的倾向和倾角,origin是这个斜面通过的某个点,这个命令就可以group两个斜面间的区域

21、ansys导入flac的时候,如何划分一下group

答:在ansys中对不同group用不同的材料号(mat)定义,再用ansys2flac之类的程序转换成flac的.dat 文件就可,group自动生成。

22、fix x y z range x -0.1 0.1 ..........................a

fix x range x -0.1 0.1................................b

请问a式与b式有何区别?

答:a 表示在x=0 这个平面是固定的

b 表示在x=0 这个平面只x方向不能发生运动。

23、如何知道每个单元的ID?

答:用鼠标双击单元的表面,可以知道单元的ID和坐标。

24、如何进行切片?

答:plo set plane ori (点坐标) norm (法向矢量)

plo con sz plane (显示z方向应力的切片)

这两行命令,用来显示指定面上的位移变化云图(把第二行改改,还可以显示应力云图,等其他);

plot con syy y向应力云图

plot con szz outline on z向应力云图加显示网格

plot con szz effective on z向有效应力

plot con szz inter 1e4 云图显示增量(后面的值越小,图上颜色条带就越细,)

plot con szz min -10e4 显示最小值,图上小于这个数的值都用同一色表示

plot con szz max 10e4 显示最大值,图上大于这个数的值都用同一色表示

plot fip outside on 显示力的箭头

现在看边界,如果是不动面,用fix x range…如果边界带速率,或位移用ini…

set grav 0 0,-9.81

ini dens 1000

设置重力就一定要设置密度,不考虑重力就不要设计密度。两者共存的,设计程序的时候一定要记的。

set mech force 50

solve

用SET命令设定了最大不平衡力的上限值为50N,即:计算的最大不平衡力一旦小于此值,我们便人为模型达到了平衡状态。求解过程终止。设置这个目的是在一定精度要求下,加快计算(值越大,算的量越少,花的时间也越少)。

25、如何在程序中进行暂停,并可恢复计算?

答:在命令中加入pause命令,用continue进行继续。

在我们分步求解中想得到某一个过程中的结果,不用等到全求完,还可以在分布求解错误的时候就进行改正,而不是等到结果出来。

26、如何跳过某个计算步?

答:在计算中按空格键跳过本次计算,自动进入下一步

27、Fish是什么东西?Fish是否一定要学?

答:是FLAC3D的内置语言,可以用来进行参数化模型、完成命令本身不能进行的功能。Fish可以不用学,需要的时候查Mannual获得需要的变量就可以了。

28、如何调用一些可选模块?

答:config dyn (fluid, creep, cppudm)

29、range的命令:

①取圆球面的范围,就是同一个中心,不同半径之间夹的那一部分,用在给球面施加力,约束时用该命令,命令:

range annulus center xyz(中心坐标)radius r1 r2(两半径),想要表达

的是球面时,r1r2取值相差小点即可,如radius 2.9 3.1 这时范围就是半径为3的面。

②圆柱的环面施加力或约束时也用到该命令。

range cylinder end1 xyz end2 xyz radius r(end是表示柱体断面的中心点坐标)

range plane above 表示的是z大于0的上部结构

range plane blow 表示的是z小于0的下部结构

range dd a dip b origin xyz 表示的是走向角度a,倾向角度b 的面

dd表示,当面与xoy面相交时的垂线与y轴正向的夹角,顺为正,说白话,就是面的指向方向面是朝那个方向的意思。

dip面与xoy面的夹角,与z轴负向为正,origin表示面经过xyz点;range normal xyz 法线方向为xyz的面

range not 没试用过(范围外的东西,想想用到圆上取范围非常好)。

30、如何调用FISH文件?

答:新手调用FISH文件出错的原因:是:文件名为fishcall.fis.txt(因为在记事本里这个txt的后缀是默认的)。修改方法是:将fishcall.fis.txt里面的内容全部复制到新的记事本里,再按保存,保存时候将保存类型改为所有文件(*,*),这时你便可在文件名栏内输入fishcall.fis,类型也就正确了。

31、问a式与b式有何区别?

答:fix x y z range x -0.1 0.1 ..........................a

fix x range x -0.1 0.1................................b

a 表示在x=0 这个平面是固定的;

b 表示在x=0 这个平面只x方向不能发生运动。

32、如何查看各个时段不平衡力的具体数值?

答:采用his来记录计算,包括位移应力等命令his unbal;

his gp(zone) zdis range (0 0 0) 或者id=?;

导出数据命令his write n vs m begin 时步end 时步+ file filename.his n表示纪录的id m表示时步;

要导出不平衡力的具体数值

his unbal

step 100000 or solve

his write 1 vs step begin 1 end 1000 file 123.his

使用上述命令就可以查看各个时步下的不平衡力的具体数值。

33、如何显示变形轮廓线的命令?

plo ske magf 10 其中10为放大系数

34、怎样查看模型的矢量图?

pl grid vel (disp) red

plo blo gro可以看到不同的group的颜色分布(看模型的样子);

plo gpfix red sk 看模型的边界情况

plo fap red sk 看模型的体力分布

plo con dis (xdis, ydis, zdis) 看模型的云图:位移

plo con sz (sy, sx, sxy, syz, sxz) 看模型的云图:应力

plo dis (xdis, ydis, zdis) 看模型的矢量图

plo info 看模型有多少单元、节点

plot grid 可以查看网格,plot grid num 可以查看节点号。

plot fix 查看边界条件

plot grid mark 查看预先留设的开挖边界

pl syy (sxx xdis ydis sig1..) fill;查看模型的云图。注意,带fill关键字就是查看云图,不带fill 关键字就是查看等直线图。

plo add ske 剖面的沉降云图上增加网格

plo add dis plane 剖面上的矢量

plo add axe 剖面上坐标值

35、怎样查看INTERFACE?

答:pl grid iface id red

print iface id ; id 是interface的编号

36、FLAC怎么调整视图?

答:ctrl+z 或shift+z ,然后点击要放大部位的左上角和右下角就可以放大某个部位,如果要缩小,双击屏幕。

37、判断模型中网格点是一个还是两个的方法。

答:显示模型网格点的ID,如果有两个ID号,说明是两个。节理面上的网格点应该有两个ID号。

38、flac中影响运行时间的因素

答:(1)单元材料,结构面之间的刚度对比很大;

(2)划分单元尺寸对比很大,尽量避免长细比大于5:1的细长单元。

39、简单命令解释:

答:1.plot add cont disp out on 时时显示云图

2.plot block group gpnum on 显示节点编号

3.plot inter red ske 看接触面的效果.

4.del range group 1 not 不删除group信息

5.del range group 2 删除group信息

6.ini z add ** range group ** (name)

7.interface 1 face range x(*,*)y(*,*)z(*,*)或者interface 1 face range plane orig(x y z 坐标)norm(法线方向)建立接触面

8.water table clear 清除水位线

9.pl set back white 设置背景

10.set plot bitmap size (800,510) 设置图片大小

11.plot set caption size 37 设置图例数字大小

12.plot set center 100 0 40 设置图片中心

13.fix x y z range x -0.1 0.1 表示在x=0 这个平面是固定的

14.fix x range x -0.1 0.1 表示这个平面只x方向不能发生运动

40、在固定面上施加位移时,fix与apply不能同时使用,应该用ini 和fix,才能施加上。

41、在进行三轴压缩时候,如何施加围压?

答:使用apply sxx =-1e5 szz=-1e5 range cyl end1 0,0,0 end2 0,2,0 radius 1,其中X和Z轴是在我们眼睛正对的面。

42、在进行三轴压缩时候,如何对轴向力进行位移控制?

答:使用ini yvel 1e-7 range y -0.1 0.1 ini yvel 1e-7 range y 1.9 2.1 即可,数值可以变化。

43、在FLAC3D计算中,如何记录程序中的值,如果不想时时记录该怎么弄?

答:用hist wtite n1 vs n2 file.txt,想间隔记录可用set hist_rep n

44、想记录接触面上的相关力学参数该怎么办?

答:hist inter i nstress /ndis/sstress/sdisp

45、接触面设置参数包括哪几个?

答:coh dial fric kn ks ten.

46、如何输出单元格的数据?

答;expgrid .flacsd

47、建模的过程中,或同一个文件中有重复应用的命令,就可以用宏命令了。

答:宏命令:macro 名称‘命令的内容’

例:macro shiping ’plot con zdip outline on’

用shiping 代替后面的引号里的东西。在建模中只要有相同的都可以用shiping代替,缩减了书写命令的时间,整体上也能让人看的更明白。注意,你命名的符号最好跟falc自带的命令不要重复,处理方法是,名称后带数字。

如shiping1;如果你想修改宏对象,改变命令的内容,在名称上加单引号就是替换的意思。例macro ’shiping1‘‘新的命令’。

48、group的用法:

①group直接加到模型的后面相当于给整个模型命名;

②group name range x xyy zz给一个范围的体命名。

例:在gen zone brick ------ size ---- group name

49、plot中add与set的区别

add原来有的加新的用add

set原来没有的,设置用set

plot create GravV

plot set plane dip=90 dd=0 origin=3,4,0

plot set rot 15 0 20

plot set center 2.5 4.2 4.0

plot add bound behind

plot add bcont szz plane

plot add axes

plot show 。

我们想显示别的图像,又不想把这个弄好的图像丢掉,则用plot create name建立一个图像,在建立新的图像时,plot create name1(新的名)显示以前的图像,

那么输入如下命令:plot current name。另一种方法,输入:plot show name

50、不同的区域定义不同的本构模型

model mohr range z=0,5

prop ClayeyGravel range z=0,5

在定义参数后面加个range范围,为了避免在输入命令时总要通过range+全局坐标域的方法来限定该命令执行的区域,我们可以先通过range命令来给不同的区域命名,然后就可以用range+区域名的

方法来限定范围了。这样就避免了每次输入命令要限定在该区域执行时,都要输入一遍坐标范围的麻烦。具体如何给区域命名,以及日后如何用区域名来限定该区域,可以看下面这个例子:

range name trench x=-1,1 y=0,4 z=-2,2

model null range trench

51、右手法则:建立模型时,各点的排放时有规律的。

方法如下:拿出右手伸直了4指合并指向就是p0到p1的方向,掌心指向就是p0到p2的方向,拇指与4指垂直的方向就是p0到p3的方向。

很多人说网格后的云图有带齿什么的,改进的方法就是重复用下面的命令

Gen ADJust

用此命令来微调网格, 使之离散平滑。该命令可以连续使用以增进平滑效果的。

52、如果想看模型在计算过程中的变化情况

Set movie avi step 1 file 1.avi;定义动画,动画记录的频率为1时步一频率(计算量大的时候就没必要1时步的记录,可以10,100时步的记录,减少电脑的使用):

Movie start;动画开始

附件里这个命令“hist write 5 vs 2 file dibiao.txt”能将结果按时步讲就算结果输出hist n= 5 :N(Nstep)=5指定了每迭代计算5次记录一次相关的值(如果不指定,则系统默认值为10);

hist unbal 命令的第二行指定记录最大不平衡力(the maximum unbalanced force);

hist gp zdisp 4,4,8 记录坐标值为(4,4,8)的节点Z方向的位移(这个用的多,查看收敛量时就是这个命令,上面两个个人认为用处不大,也很少用过)。

53、应变硬化/软化模型SS,如何选择参数表

Pro ftab 1 ctab 2 dtab 3

Table 1 0 45 .05 42 .1 40 1 40

Table 2 0 2e6 .05 1e6 .1 5e5 1 5e5

Table 3 0 10 .05 3 .1 0

答:对于SS模型来说,材料需要硬化或者软化,也就是体现在内聚力和摩察角的不断变大或变小。table 1就是在0, 0.05, 0.1, 1的应变/位移值上体现出内聚力的变化。table 2、3同理。点的选取决定了应力—应变曲线的形状,她的数量可以是任意的。

应力与应变之间的关系

塑性应变plastic strain 与参数之间的关系,自己随便定义

gen zone cyl p0 0 0 0 p1 1 0 0 p2 0 4 0 p3 0 0 1 size 12 30 12

gen zone reflect norm 1,0,0

gen zone reflect norm 0,0,1

model sspro den 2500 bulk 2e8 she 1e8 co 2e6 fric 45 ten 1e6 dil 10

pro ftab 1 ctab 2 dtab 3table 1 0 45 .05 42 .1 40 1 40

table 2 0 2e6 .05 1e6 .1 5e5 1 5e5

table 3 0 10 .05 3 .1 0fix x y z range y -.1 .1

fix x y z range y 3.9 4.1

ini yvel 2.5e-5 range y -.1 .1 ;施加恒定速度测试反力(应变控制)ini yvel -2.5e-5 range y 3.9 4.1

def ax_str

str = 0

pnt = gp_head

loop while pnt # null

if gp_ypos(pnt) < 0.1 then

str = str + gp_yfunbal(pnt) endif

pnt = gp_next(pnt)

endloop

ax_str = str / pi ; cylinder radius = 1

end

hist n 1

hist gp ydisp 0,0,0

hist ax_str

hist gp xdisp 1,1,0

plot hist -2 vs 1 ;axial stress vs axial disp.

step 5000

save beforeplzones.sav

; Plot of plastic region as zones with strain > 0.2

def ShowPlasticZones

zp = zone_head

loop while zp # null

if z_prop(zp,'es_plastic') > 0.2 ;塑性剪应变es_plastic; 塑性拉应变et_plastic

z_group(zp) = 'yield'

else

z_group(zp) = 'other'

endif

zp = z_next(zp)

endLoop

end

ShowPlasticZones

plo crea qqq

plo add surf red range group yield

plo add axes green

plo set rot 123 313 3

plo set mag 1.5

ret

54、查看网格塑性区

Pl block state

55、如何建立马蹄形隧道

new

gen zone radcyl size 5 8 8 10 &

p0 0 0 0 p1 10 0 2 p2 0 10 0 p3 0 0 10 &

p4 10 10 2 p5 0 10 10 p6 10 0 10 p7 10 10 10

; 第一部分

gen zone radcyl size 5 8 8 10 &

p0 0 0 0 p1 10 0 -10 p2 0 10 0 p3 10 0 2 &

p4 10 10 -10 p5 10 10 2 p6 10 0 -4 p7 10 10 -4

; 第二部分

gen zone brick size 5 8 10 &

p0 0 0 -10 p1 10 0 -10 p2 0 10 -10 p3 0 0 -2 p4 10 10 -10 &

p5 0 10 -2 p6 2 0 -2 p7 2 10 -2

; 第三部分

gen zone reflect orig 0 0 0 norm 1 0 0 ; 镜像

plo crea qqq

plo add surf red

plo sho

56、如何显示锚杆

Plot sel geom node on cid on

Flac3D命令--完整经典版

实例分析命令: 1. X ,Y ,Z 旋转 Shift+ X ,Y ,Z 反向旋转 Gen zone ……;model ……;prop ……(材料参数);set grav 0,0,-9.81(重力加速度) plot add block group red yellow 把在group 中的部分染成红色和黄色 plot add axes black 坐标轴线为黑色;print zone stress% K 单元应力结果输出 ini dens 2000 ran z a b (设置初始密度,有时不同层密度不同);ini ……(设置初始条件);fix ……(固定界面) set plot jpg ;set plot quality 100 ;plot hard file 1.jpg 图像输出(格式、像素、名称) plot set magf 1.0视图的放大倍数为1.0;plo con szz z 方向应力云图 2. ini z add -1 range group one 群one 的所有单元,在z 方向上向下移动1m ;然后合并 命令 gen merge 1e-5 range z 0此命令是接触面单元合并成一个整体,1e-5是容差 3. (基坑开挖步骤):Step 1: create initial model state (建立初始模型)Step 2: excavate trench (开挖隧道) 4. group Top range group Base not 定义(群组Base 以外的为)群组Top 5. plot blo gro 使得各个群组不同颜色显示 6. (两个部分间设置界面;切割法):gen separate Top 使两部分的接触网格分离 为两部分;interface 1 wrap Base Top 在(Base 和Top )这两部分之间添加接触单元;plot create view_int 显示,并创建标题view_int ;plot add surface 显示表面;plot add interface red 界面颜色红色 7. (简单的定义函数及运行函数)new ;def setup 定义函数setup ;numy = 8定义常 量numy 为8;depth = 10.0 定义depth 为10;end 结束对函数的定义;setup 运行函数setup 8. (隧道生成)上部圆形放射性圆柱及下部块体单元体的建立,然后镜像。 9. 模拟模型的材料问题时为什么要去定义某个方向上的初始速度?— 10. 渐变应力施加:apply nstress -1e6 gradient 0,0,1e5 range z 3.464,0 plane dip 60 dd 270 origin .1 0 0;施加法向应力:apply nstress -1e6 range plane dip 60 dd 270 origin .1 0 0 11. d ip dd 确定平面位置使用:(纠结) 12. p rint gp position range id=14647 输出节点坐标 13. a pply sxx -10e6 gradient 0 , 0, 1e5 range z -100 , 0在这个求解方程中,z 为变量,所以xx σ为:65=-1010+10xx z σ?? ;原点(0,0,0) 14. f ree x range x -.1 .1 z 6.9 10.1放松x=0 平面上,z=7,10 这一部分在x 方向的约 束(可以在此处产生破坏) 15. 体积模量K 和剪切模量G 与杨氏模量及泊松比v 之间的转换关系如下: =3(1-2v)E K G=2(1+v) E 16. 一般而言,大多数问题可以采用FLAC 3D 默认的收敛标准(或称相对收敛标准),即当体 系最大不平衡力与典型内力的比率R 小于定值10-5;(也可由用户自定义该值,命令:

FLAC3D常用命令

1. apply(缩写:app) 可用来定义边界条件及初始条件: 1)添加应力 格式1:apply szz -0.3395e6 range z -0.1 0.1 格式1:apply szz -0.3395e6 range group pile 格式3:apply szz -0.3395e6 range z -0.1 0.1 group pile 格式4:apply nstress 数值range z 2.9 3.1(或3)x 1 2 y 1 2 2)以一定速度施加位移边界 格式1:apply yvel -1e5 range y -1.9 2.1 ;施加y方向速度-1e5/step 3)添加边界条件 格式:apply szz <数值> grad <梯度> range <围> 示例1:apply szz -1e9 grad 0 0 8.3e5 range z 0 120 示例2:apply szz -0.6e6 range z 0.05 0.15 group pile 注:<数值>是梯度方向坐标0点的数值,可通过定义坐标围的上下值与梯度计算得到。 2. range(缩写:ran)

通过range功能,可以使命令作用在一定指定围的目标上;如果一个命令没有使用range来确定围,则命令对整个模型有效。 1)利用坐标指定一定的围 格式1:range z 0 1 格式2:range z 2.9 3.1 x 1 2 y 1 2 2)利用分组来指定围 格式:range group 1 3)以上两种的复合 格式:range z -0.1 0.1 group pile 4)利用id号来指定一定的围 格式:range id 0 10 该命令后跟起始id和结束id,这里的id可以是实体单元、网格、结构单元、接触面和节点的编号。 例:model elastic range id 1 10 ;指定id为1到10的单元为各向同性弹性本构。 5)命名一个围(需要先命名这个围) 格式:range name <自己起一个名字> <围> 示例:range name intersected_zones x 5 8 y 3 7

[实用参考]Flac3d-5.0常用命令集锦.doc

建模 1、调用文件: ①文件与工程在同一个文件夹,只写文件名即可:Ifthecalledfileislocatedinthesamefolderasthe FLAC3D projectfile,thenonlyt hefilenameneed beenteredwiththe CALL command. ②不在同一个文件夹,全路径:Otherwise,thefilemaybecalledbyspecifyingitscompletepath(e.g.,c:\myfol der\file.dat). Undo;撤销上一条命令 2、创建旋转缩放视图 3、建模命令 modelmechmohr;莫尔库伦模型 modelmechelastic;弹性模型 setgrav0,0,-9.81;重力加速度negative z-direction.(垂直向下!常用的) 下下面面这这代代码码,,是是沿沿着着--y y方方向向的的重重力力加加速速度度,,注注意意区区别别!!!!!!!! genzonebricksize6,8,8p0-10,-10,-20...;省略号表示写不下后面继续 p110,-10,-20... p2-10,10,-20... p3-10,-10,0 plotzone

genzonebricksize6,8,8p0-10,-10,-20...;不规则六面体 p110,-10,-20p2-10,10,-20... p3-10,-10,0p410,10,-20... p5-10,10,10p610,-10,0... p710,10,10 plotcurrentplotPlot01 plotclear plotzone Undo;撤销命令 setlogfile127G1001.tGt setlogontruncate setlogoff listzoneprinrangeG01y01z01;显示指定范围内各单元的主应力,结果如下 Hist命令: ①命令编号按顺序从1开始:eachhistoryisnumberedsequentiallyfrom1asitisenteredviathe HISTORY co mmand. ②查找显示所有的his命令:ReturntotheFlac3D>promptandtype listhist foralistingofthehistoriesandtheircorrespondingnumbers. histnstep5;每5步记录1次。默认是10步记录1次

FLAC3D常见命令与使用技巧

FLAC3D常见命令与使用技巧 1、FLAC3D常见命令: 1.FLAC3D是有限元程序吗?答:不是!是有限差分法。 2.最先需要掌握的命令有哪些? 答:需要掌握gen, ini, app, plo, solve等建模、初始条件、边界条件、后处理和求解的命令。 3.怎样看模型的样子?答:plo blo gro可以看到不同的group的颜色分布 4.怎样看模型的边界情况?答:plo gpfix red 5.怎样看模型的体力分布?答:plo fap red 6.怎样看模型的云图?答:位移:plo con dis (xdis, ydis, zdis)应力:plo con sz (sy, sx,sxy, syz, sxz) 7.怎样看模型的矢量图?答:plo dis (xdis, ydis, zdis) 8.怎样看模型有多少单元、节点?答:pri info 9.怎样输出模型的后处理图? 答:File/Print type/Jpg file,然后选择File/Print,将保存格式选择为jpe文件 10.怎样调用一个文件?答:File/call或者call命令 10.如何施加面力?答:app nstress 11.如何调整视图的大小、角度?答:综合使用x, y, z, m, Shift键,配合使用Ctrl+R,Ctrl+Z等快捷键 12.如何进行边界约束?答:fix x ran(约束的是速度,在初始情况下约束等效于位移约束) 13.如何知道每个单元的ID?答:用鼠标双击单元的表面,可以知道单元的ID和坐标 14.如何进行切片? 答:plo set plane ori (点坐标) norm (法向矢量) plo con sz plane (显示z方向应力的切片) 15.如何保存计算结果?答:save +文件名. 16.如何调用已保存的结果?答:rest +文件名;或者File / Restore 17.如何暂停计算?答:Esc 18.如何在程序中进行暂停,并可恢复计算?答:在命令中加入pause命令,用continue进行继续 19.如何跳过某个计算步?答:在计算中按空格键跳过本次计算,自动进入下一步

flac3d常用命令

1、最先需要掌握的命令有哪些? 答:需要掌握gen, ini, app, plo, solve等建模、初始条件、边界条件、后处理和求解的命令。 2、怎样输出模型的后处理图? 答:File/Print type/Jpg file,然后选择File/Print,将保存格式选择为jpe文件。 3、怎样调用一个文件? 答:File/call或者call命令 4、如何施加面力? 答:app nstress 5、如何调整视图的大小、角度? 答:综合使用x, y, z, m, Shift键,配合使用Ctrl+R,Ctrl+Z等快捷键。 6、如何进行边界约束? 答:fix x ran (约束的是速度,在初始情况下约束等效于位移约束)。 7、如何知道每个单元的ID? 答:用鼠标双击单元的表面,可以知道单元的ID和坐标。 8、如何进行切片? 答:plo set plane ori (点坐标) norm (法向矢量) plo con sz plane (显示z方向应力的切片) 9、如何保存计算结果? 答:save +文件名 10、如何调用已保存的结果? 答:rest +文件名;或者File / Restor 11、如何暂停计算? 答:Esc 12、如何在程序中进行暂停,并可恢复计算? 答:在命令中加入pause命令,用continue进行继续。 在我们分步求解中想得到某一个过程中的结果,不用等到全求完,还可以在分布求解错误的时候就进行改正,而不是等到结果出来。 13、如何跳过某个计算步? 答:在计算中按空格键跳过本次计算,自动进入下一步 14、Fish是什么东西?Fish是否一定要学?

答:是FLAC3D的内置语言,可以用来进行参数化模型、完成命令本身不能进行的功能。Fish可以不用学,需要的时候查Mannual获得需要的变量就可以了。 15、FLAC3D允许的命令文件格式有哪些? 答:无所谓,只要是文本文件,什么后缀都可以。 16、如何调用一些可选模块? 答:config dyn (fluid, creep, cppudm) 17、如何在圆柱体四周如何施加约束条件? 可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2 radius r2 not,其中r2

FLAC3D命令流(整理版)

实用标准文档 1、怎样查看模型? 答:plot grid 可以查看网格,plot grid num 可以查看节点号。 2、请问在圆柱体四周如何施加约束条件? 答:可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2 radius r2 not,其中r2

FLAC3D 3.0 C 常用命令

gen zone brick gro 1 ratio 1.1 1 1 size 15 1 10 p0 0 0 19.5 p1 20 0 19.5 p2 0 1 19.5 p3 0 0 29.5 建模. mo null range group 7 开挖 attach face检查节点 gen merge 1e-3融合节点 plo blo gro;按组画图 plo blo den;按密度画图 plo con zdis;Z向位移画图 plo con sz;Z向应力画图 set mech ratio 1e-3;设置计算收敛 plo con ssi disp vel ;剪应变增加滑移线 pl add disp;位移矢量图合成位移 plo sel recoer;可以显示应力 ini y add 2 在地壳每增加100m深度,压力将增加约2.75Mpa his gp disp id 1851 pl con disp; his write 7 vs step begin 1 end 10000000000 file 顶板.txt;输出记录数据 pl bl st n; pl bl st plo fap red sk;显示体力 plotitems------add-----vetor----apply body force plo add ve apply body force ini szz 1000 range z 13 14 x -1.5 1.5 y 0 15 施加局部调整力;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;出图;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; set plot bmp plot set mag 2.44 rotation 0 0 0 plot set back white plo con sz plo add sel geom pile plot contour ssi ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;出图;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 保存及调用 sol save kaiwa1.sav new res kaiwa1.sav

FLAC3D 实例命令流1

第1部分命令流按照顺序进行 2-1定义一个FISH函数 new def abc abc = 25 * 3 + 5 End print abc 2-2使用一个变量 new def abc hh = 25 abc = hh * 3 + 5 End Print hh Print abc 2-3对变量和函数的理解 new def abc hh = 25 abc = hh * 3 + 5 End set abc=0 hh=0 print hh print abc print hh new def abc abc = hh * 3 + 5 end set hh=25 print abc set abc=0 hh=0 print hh print abc print hh 2-4获取变量的历史记录 new gen zone brick size 1 2 1 model mohr prop shear=1e8 bulk=2e8 cohes=1e5 tens=1e10

fix x y z range y -0.1 0.1 apply yvel -1e-5 range y 1.9 2.1 plot set rotation 0 0 45 plot block group def get_ad ad1 = gp_near(0,2,0) ad2 = gp_near(1,2,0) ad3 = gp_near(0,2,1) ad4 = gp_near(1,2,1) end get_ad def load load=gp_yfunbal(ad1)+gp_yfunbal(ad2)+gp_yfunbal(ad3)+gp_yfunbal(ad4) end hist load hist gp ydis 0,2,0 step 1000 plot his 1 vs -2 2-5用FISH函数计算体积模量和剪砌模量 new def derive s_mod = y_mod / (2.0 * (1.0 + p_ratio)) b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio)) end set y_mod = 5e8 p_ratio = 0.25 derive print b_mod print s_mod 2-6 在FLAC输入中使用符号变量 New def derive s_mod = y_mod / (2.0 * (1.0 + p_ratio)) b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio)) end set y_mod = 5e8 p_ratio = 0.25 derive gen zone brick size 2,2,2 model elastic prop bulk=b_mod shear=s_mod print zone prop bulk print zone prop shear

FLAC3D命令流(整理版)

1、怎样查看模型? 答:plot grid 可以查看网格,plot grid num 可以查看节点号。 2、请问在圆柱体四周如何施加约束条件? 答:可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2 radius r2 not,其中r2

FLAC3D常用命令总结

1、模型建好如何检验所建模型是否有问题 注意:第一步建模一定不要建太大的模型,可以建非常小的模型,确保模型的准确性,这样可以尽快开始后边的步骤,等后边计算分析步骤快速做完验证没有大问题,再将准确的模型建好换上,重新计算得到更加准确的结果。 2、如何检验应力边界、位移边界、加载速率等是否准确 Plot add gpfix:看位移边界 Plo add fap:看应力边界,看加载方向是否准确 Plot add vel:看速率,加载速率是否准确 3、如何查看运算结果 Plo con szz outline on:看z向应力云图,并显示边界网格 Plo add disp:看位移 Plo con zdisp outline on magf 5:看z向位移云图,变形扩大5倍 Plo add bo :添加边界 Plo blo state:看是否屈服 Plo add stensor:查看大主应力方向 Plo con smin:小主应力 Plo con smax:大主应力 Plo con ssi(shear strain increment):查看剪切应变增量云图 Plo bcont smin:查看单元小主应力 4、如何做切面并查看切面结果 在编辑“Edit“菜单中设置切面位置,在上述3命令后加上plane(pl)即可。如:Plo con smin pl:查看切面小主应力 5、后处理 将模型导入到tecplot中做切面,加等值线等,对结果进一步处理,得到更漂亮的一些结果。 其他重要命令总结: 1、如何在圆柱体四周如何施加约束条件? 可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2 radius r2 not,其中r2

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

flac3d5.0常用命令集锦

建 模 1、调用文件: ①文件与工程在同一个文件夹,只写文件名即可:If the called file is located in the same folder as the FLAC3D project file, then only the file name need be entered with the CALL command. ②不在同一个文件夹,全路径:Otherwise, the file may be called by specifying its complete path (e.g., c:\myfolder\file.dat ). Undo ;撤销上一条命令 2、创建 旋转 缩放视图 3、建模命令 model mech mohr ;莫尔库伦模型 model mech elastic ;弹性模型 set grav 0, 0, -9.81 ; 重力加速度 negative z -direction. (垂直向下!常用的) 下下面面这这代代码码,,是是沿沿着着--y y 方方向向的的重重力力加加速速度度,,注注意意区区别别!!!!!!!! gen zone brick size 6,8,8 p0 -10, -10, -20 ... ;省略号表示写不下后面继续

p1 10, -10, -20 ... p2 -10, 10, -20 ... p3 -10, -10, 0 plot zone gen zone brick size 6,8,8 p0 -10, -10, -20 ... ;不规则六面体 p1 10, -10, -20 p2 -10, 10, -20 ... p3 -10, -10, 0 p4 10, 10, -20 ... p5 -10, 10, 10 p6 10, -10, 0 ... p7 10, 10, 10 plot current plot Plot01 plot clear plot zone Undo ;撤销命令 set logfile 127X1001.txt set log on truncate set log off list zone prin range x 0 1 y 0 1 z 0 1 ;显示指定围各单元的主应力,结果如下

FLAC3D命令流(整理版)

精心整理1、怎样查看模型? 答:plotgrid可以查看网格,plotgridnum可以查看节点号。 2、请问在圆柱体四周如何施加约束条件? 答:可以用fix...rancylinderend1end2radiusr1cylinderend1end2radiusr2not,其中r2

Flac3D常见问题整理

1.1常见问题及其解答Gen separate 不能被识别答:原因是FLAC3D版本不行,我用3.0的版本不能。 1. FLAC3D是有限元软件吗?答:不是,是有限差法软件。 2. FLAC3D最先需要掌握的命令有哪些?答:需要掌握gen, ini, app, plo, solve等建模、初始条件、边界条件、后处理和求解的命令。 3. 怎样看模型的样子?答:plo blo gro可以看到不同的group的颜色分布。 4. 怎样看模型的边界情况?答:plo gpfix red sk 5. 怎样看模型的体力分布?答:plo fap red sk 6. 怎样看模型的云图?答:位移:plo con dis (xdis, ydis, zdis) 应力:plo con sz (sy, sx, sxy, syz, sxz) 7. 怎样看模型的矢量图?答:plo dis (xdis, ydis, zdis) 8. 怎样看模型有多少单元、节点?答:print info 9. 怎样输出模型的后处理图?答:File/Print type/Jpg file,然后选择File/Print,将保存格式选择为jpg文件。 10. 怎样调用一个文件?答:使用菜单File/call 或者call 命令。 11. 如何施加面力?答:app nstress ran 12. 如何调整视图的大小、角度?答:综合使用x, y, z, m, Shift键,配合使用Ctrl+R,Ctrl+Z等快捷键。 13. 如何进行边界约束?答:fix x ran (约束的是速度,在初始情况下约束等效于位移约束) 14. 如何知道每个单元的ID?答:使用鼠标双击单元的表面,可以知道单元的ID和坐标。 15. 如何进行切片?答:plo set plane ori (点坐标) norm (法向矢量) plo con sz plane (显示z方向应力的切片) 16. 如何保存计算结果?答:save filename(文件名可自定义) 17. 如何调用已保存的结果?答:使用菜单File/call或者命令rest filename(文件名可自定义)。 18. 如何暂停计算?答:运行中使用Esc命令。 19. 如何在程序中进行暂停,并可恢复计算?答:在命令中加入pause命令,键入continue命令后可恢复计算。 20. 如何跳过某个计算步?答:在计算中按空格键可跳过本次计算,自动进入下一步。 21. FISH是什么?答:是FLAC3D的内置语言,可以用来进行参数化模型、完成命令本身不能进行的功能。 22. FISH是否一定要学?答:可以不用,需要的时候查Manual获得需要的变量就可以了。 23. FLAC3D允许的命令文件格式有哪些?答:只要是符合FLAC3D格式要求的文本文件,无论是什么后缀名,都可以为FLAC3D调用。 24. 如何调用一些可选模块?答:使用命令config dyn (fluid, creep, cppudm)。 25. 如何使用gauss_dev对符合高斯正态分布的材料参数进行赋值?答:假定某材料的摩擦角均值为40度,标准差是2,则命令如下:prop friction 40 gauss_dev 2 26. FISH函数中是否能调用“.sav”文件?答:不能。FLAC3D中规定,new和restore命令不允许出现在FISH函数中,因为new和restore 命令会将原有存储信息清除掉。 27. initial 与apply 有何区别?答:initial初始化命令,如初始化计算体的应力状态等;apply边界条件限制命令,如施加边界的力、位移等约束等。initial的应力状态会随计算过程的发生而发生改变,一般体力需要初始化,而apply施加的边界条件不会发生变化。 28. FLAC3D动力分析中是如何计算永久变形的?答:FLAC3D采用动态运动方程求解动力方程,因此采用弹塑性本构模型可以计算永久变形。而土动力学常用的粘弹性模型由于没有考虑土体的塑性,因此不能计算永久变形。 29. 对于初学者而言,是学习FLAC还是FLAC3D?答:FLAC有较好的图形化操作界面,而FLAC3D目前只能通过命令流来操作,从学习难度上来说,FLAC要简单一些,不过复杂的三维问题还是需要使用FLAC3D才能解决。FLAC和FLAC3D的某些命令和分析方法类似,读者在学习过程中可以相互借鉴。 30. interface建模命令中的dist关键词是否表示接触面的厚度?答:FLAC3D 中的interface 是没有厚度的,dist 关键词表示的是接触面建模时选择范围时的容差,表示该范围内的“面”上将被赋予interface 单元。 31. 初始应力场计算中位移场和速度场是否都要清零?答:是的。一般,FLAC和FLAC3D中位移场和速度场的清零命令都是同时使用的。 32. 加了fix边界,再使用apply施加应力边界有效吗?答:无效。fix和apply都是边界条件,两者不能混用,fix的作用是固定节点的速度,只要用户不更改这个速度,在计算中都会保持不变。 33. solve age后面跟随的时间是真实的时间吗?答:FLAC和FLAC3D在动力、渗流、流变模式下才有真实的时间,时间的单位默认为秒,也可以根据读者使用的量纲进行调整。

相关文档