文档库 最新最全的文档下载
当前位置:文档库 › flac 命令流 参考 实用

flac 命令流 参考 实用

flac 命令流 参考 实用
flac 命令流 参考 实用

;****************************************

group命令

group soil range z 1 2 ;定义group

prop bulk 7.8e6 shear 3.0e6 coh 10e3 fric 15 ran group soil ;给group赋值

model null range group soil

model elastic range group soil

plot block group range group dam ;只显示dam

range命令

range name trench x 0 1 y 0 4 z 0 2

model null range trench

model null range x=2,4 y=2,6 z=5,10

range name Big_Brick x -3 3 y -2 2 z -1 1

model elastic range Big_Brick

prop bulk 1e8 shear 1e8 range Big_Brick

range name Layer1 plane dip 0 dd 0 ori 0 0 0 above

range name Layer2 plane dip 0 dd 0 ori 0 0 0 below

range cylinder end1 x1 y1 z1 end2 x2 y2 z2 radius r

cylindrical range with one end of the cylinder axis (end1) at location (x1, y1, z1), the other end (end2) at location (x2, y2, z2), and with a cylinder radius of r '由(x1, y1, z1) 、(x2, y2, z2)两点确定旋转轴

macro命令

macro Sand 'bulk 1e8 shear 0.5e8 coh 0 tens 0 fric 35'

macro Clay 'bulk 1e7 shear 0.3e7 coh 1e7 tens 0 fric 0'

prop sand range Layer1

prop clay range layer2

macro Pt0 'p0 0 0 0'

macro Pt1 'p1 add 10 0 0'

macro Pt2 'p2 add 0 10 0'

macro Pt3 'p3 add 0 0 10'

macro Model_Size 'size 4 5 6'

Big_Brick

macro 'Pt0' 'p0 15 15 15'

gen Big_Brick ; this will cause an error

group range macro 命令

Using different object types to do the same job

using a RANGE object ...

range name Big_Brick x = (-3,3) y = (-2,2) z = (-1,1)

model null range Big_Brick

using a GROUP object ...

group Big_Brick range x = (-3,3) y = (-2,2) z = (-1,1)

model null range group Big_Brick

using a macro object ...

macro Big_Brick 'x = (-3,3) y = (-2,2) z = (-1,1)'

model null range Big_Brick

gen zone brick size 10,10,10

macro SiltySand 'bulk 1.5e8 shear 0.3e8'

macro ClayeyGravel 'bulk 1.5e8 shear 0.6e8 fric 30 coh 5e6 ten 8.66e6'

model elas range z 5 10

prop SiltySand range z 5 10

model mohr range z 0 5

prop ClayeyGravel range z 0 5

;****************************************

视图操作:x y z m

ctr+r 还原

ctr+p 保存图片

ctr+z 鼠标选择

ctr+g 彩图变为灰色图

shift + (x y z m)旋转缩放

edit---copy to clipboard----粘贴到word

;****************************************

ini xdis 0 ydis 0 zdis 0

set mech force=50 '最大不平衡力小于50n,停止计算

;****************************************

hist命令

hist reset '清除已有历史信息

set hist_rep 1 '每一个时步记录一次

hist n=5 '每5个时步记录一次

hist write 1 3 vs 2 begin 150 end 375 file xx.txt

hist gp zdisp 4,4,8

hist id=3 gp zdis 1 1 3 'id为监测变量的编号,默认的是从1开始编号。建议对监测变量进行编号,以便后处理调用

plot his 2 3 vs 4 'plots histories 2 and 3 versus history 4; history 4 plots along the abscissa.

pl his xla 'string' ylab 'string' '设置x y轴的名称

pl his xmaximum ?? xminimum ?? '设置x轴的最大最小刻度

pl his ymaximum ?? yminimum ?? '设置y轴的最大最小刻度

pl his both 'line+mark

;****************************************

log命令

set logfile xx.log

set log on

print ……

……

set log off

;****************************************

切片

pl set plane ori 0 1.5 0 norm 0 1 0 '定义剖面位置

pl con zd plane '显示变量

pl add ske

pl add dis plane

pl add axe

pl con sxx outline on ;查看水平应力云图,outline on表示显示模型的边界,默认为off

;****************************************

print gp dis range id 517 any id 533 any '输出2个节点的变形值any表示‘并集’

; 指定边界条件

fix x range x -0.1 0.1 any x 5.9 6.1 any '这个表示在x=0和x=6.0方向上固定x方向的位移。any的意思是表示"且"的意思,也就是说本来要写两行语句的:fix x range x -0.1 0.1,fix x range x 5.9 6.1,现在用any就可以只写一条语句。

fix y range y -0.1 0.1 any y 5.9 6.1 any

;****************************************

;****************************************

fish 主要语句

if ………… then

…………

else

…………

endif

command

…………

endcommand

loop n(1,21)

…………

endloop

loop while …………

…………

endloop

caseof …………

…………

case n1

case n2

…………

endcase

;****************************************

运算

= # > < >= <=

负数在运算时,要加(),以免和减号- 混淆

degrad 'π/180

pi 'π

ngp '节点总数

nzone '单元体总数

;****************************************

单元/节点遍历

p_z = zone_head

loop while p_z # null

…………

p_z = z_next(p_z)

endloop

p_gp = gp_head

loop while p_gp # null

…………

p_gp = gp_next(p_gp)

endloop

;****************************************

string连接(保存文件)

save_file=string(n)+'_step.sav'

D3DECFile = 'D3dec_Model.dat'

FlacFile = 'Flac3D_Model.dat'

file_name='7-6_add'+string(n)+'.sav'

save file_name

cal flacfile

table操作详见ftd128(59/114))

table 1 name load_settlement '创建新表格

xtable(n,s)=…… 对编号为n的表的第s行、x列进行赋值

ytable(n,s)=…… 对编号为n的表的第s行、y列进行赋值

plot table 1 line

plot table 1 both '点、线同时显示

常用编辑文本文件的方法进行表的读入与调用

第1行:表的名称

第2行:x1 y1

第3行:x2 y2

……

空行' 注:在表的文本文件最后,需要有一个回车换行符,否则会出现"error reading file xxx.dat"的错误,

完成的文件需要读入操作才可以供flac3d调用。采用table read 命令进行读入:

table 1 read xxx.dat

读入后,可以使用plot table 和print table命令查看生成的表文件

apply xvel 1.0 hist table 1 range x 5.9,6.1 y 0,6 z 0,2 '1.0表示表格中的y向数据的因子

TABLE n x1 y1 . . .

erase erases all entries in table n.

insert

name 'string' 'changes the name of table number n to 'string'. The table ID number is not changed.

read filename 'reads file, filename (in the format described below), and places it in table n.

;****************************************

将FLAC中节点以及节点对应的坐标全部输出到txt文件中?以及将每个节点的应力输出

set log on

print gp pos

set log off

;****************************************

open close 用法

;close 当前文件关闭,返回值为0表示成功关闭

open(filename,wr,mode) '先打开文件,然后可以读,可以往里写内容

;===filename可以是带双引号的字符串,也可以是变量名。

;===wr必须是个整数:0-只读打开,文件要求存在;1-文件为写入打开,已经存在的文件将被覆盖(overwritten)。2-文件为写入打开,存在的文件被改写(appended to)

;===mode必须为一个整数值,0-读写fish变量,只有整型,浮点型和字符串的数据类型被传输,不传递变量名。1-读写ASCII数据。可读入一行数据,行之间用CR/LF分开。每行最大80字符。

;===2-设定为binary读模式,任何文件都以binary的读取模式打开.

;===返回值:0表示文件打开成功;1-表示文件名不是字符串;2-文件名是一个空字符串;3-wr或mode不是整型;4-mode参数错误(不是0或1);5-wr参数错误(不是0或1);6-不能打开所要读取的文件,比如文件不存在;7-文件已经打开;8-不是fish模式的文件

;read(ar,n) ---放入数组。读取n个记录放入数组ar,每个记录要求是一行ASCII数据,或者是一个FISH变量。数组至少有n个元素大小。

;====返回值0表示无误;-1:表示读取错误,比如到了文件的末尾;n-表示读入n行后,恰好到了文件的末尾。

;****************************************

read(ar, n) 将n个记录写到数组ar ,详细:

read(ar, n) reads n records into the array ar. The array ar must be an array of at least n elements. The returned value is:

0 requested number of lines were input without error

-1 error on read (except end-of-file)

n positive value indicates that end-of-file was encountered after

reading n lines

write(ar, n) 将数组ar的前n个记录写到文件,详细:

write(ar, n) writes n records from the first n elements of the array ar. The array ar must be an array of at least n elements. The returned value is:

0 requested number of lines were output without error

-1 error on write

n positive value (in ASCII mode) indicates that the nth element was not a string

parse(s, i) This function scans the string s and decodes the ith item

pre_parse(s, i) This function scans the string s and returns an integer value according to the type of the ith item, as follows.

0 missing item

1 integer

2 float

3 string missing (unable to interpret as int or float)

type(e) 数据类型函数,1=整型,2=浮点,3=字符串,4=指针,5=数组

;****************************************

Interface 的变量命令参见ftd128.pdf(53/114)

interface 1 face range ^^^^^^^^^^^^^^^^^^^^^^^^^^

Interface 变量

Interfaces may be identified with the following functions.

i_find(id)————address of the interface with ID id; returns null if not found (pointer)

i_id(p_i) ————ID of the interface at address p_i (integer)

The interfaces may also be scanned starting at i_head and stepping through the list using i_next.

i_head————address of the first interface in the list of interfaces (pointer)

i_next(p_i)————address of the pointer to the next interface in the list (pointer)

wrap

For example, the following command would find the twinned faces between group "rock" and group "soil," and put interface elements on these "rock" faces. Only faces with centroid within the range x 50.0 75.0 would be considered.

interface 1 wrap rock soil range x 50.0 75.0

Structural Elements 的变量命令参见ftd128.pdf(64/114)

;****************************************

nd_pos( np, p, dof ) position p (p ∈{1,2} denotes current or reference position, respectively; dof-component, dof ∈{1,2,3}). The reference position is the configuration for which stiffness matrices have been formed and does not change during a small-strain analysis. The current position is updated after each timestep. During a large-strain analysis, the reference position is set equal to the current position during each large-strain update.

例子:xt0 = nd_pos(_nd, 2, 1)

yt0 = nd_pos(_nd, 2, 2)

zt0 = nd_pos(_nd, 2, 3)

nd_id(np) ID number of node np. Each node has a unique ID number.

;****************************************

详细的gp zone 命令参见ftd128.pdf(40/114)

p_gp =gp_near(x,y,z) 'address of gridpoint closest to (x, y, z)

p_z =z_near(x,y,z) 'address of zone closest to (x, y, z)

gp_head

zone_head

gp_next(p_gp)

z_next(p_z)

p_gp=find_gp(id) 'address of gridpoints with ID number id

p_z=find_zone(id) 'address of zone with ID number id

gp_group(p_gp, ind) ????

gp_region(p_gp, ind) ????

gp_zdisp(p_gp):地址为p_gp的节点的z向变形

gp_xpos(p_gp) 'x-coordinate of gridpoint px=gp_xpos(p_zp) gp_xpos(p_zp)=k*px gp_xvel(p_gp) 'x-velocity at gridpoint

gp_near(x,y,z) '得到靠近坐标(x,y,z)的节点地址

gp_id(p_gp) '节点ID号,是整数maxdisp=gp_id(p_gp)

print gp pos ran id 59 '输出59号节点的坐标位置(2.0,2.0,3.0)

注意:节点指针的循环是从ID号最小的地址开始的。

zone 函数

z_sig3(p_z) '最小主应力z_sig1(p_z) '最大主应力

z_prop(p_z,'young') 'z_prop(p_z,'young')=2e6

z_group(p_z) 'zone group name 是单元所在的组名变量(string)

z_id(p_z) 'zone ID number (integer)

z_model(p_z) ' string类型

z_prop(p_z,string) '可以赋值,可以取值

z_xcen(p_z) 'zone的质心的x坐标

z_sxx(p_z) 'zone的xx-stress

stid=2131

z_p=find_zone(stid)

xtable(3,m)=z_id(z_p)

ytable(3,m)=-z_szz(z_p)

;****************************************

def install

pnt = zone_head

loop while pnt # null

y_mod = y_zero + cc * sqrt(z_depth)

z_prop(pnt, 'shear') = y_mod / (2.0*(1.0+P_ratio))

z_prop(pnt, 'bulk') = y_mod / (3.0*(1.0-2.0*P_ratio))

pnt = z_next(pnt)

end_loop

end

set p_ratio=0.25 y_zero=1e7 cc=1e8

install

plot block prop bulk

;****************************************

用户自定义的节点、单元额外变量

config zextra n '首先进行单元额外变量的配置

config gpextra m '首先进行节点额外变量的配置

gp_extra(p_gp,n)

z_extra(p_z,n)

;--- test of stress rotation ---

config gpextra 2

call fishcall.fis

gen zone brick size 1 1 1

mo el

prop she 300 bu 300

def ini_coord

pnt = gp_head

loop while pnt # null

gp_extra(pnt,1) = sqrt((gp_xpos(pnt)-xc)^ 2+(gp_zpos(pnt)-zc)^ 2) gp_extra(pnt,2) = atan2((gp_xpos(pnt)-xc),(zc-gp_zpos(pnt)))

pnt = gp_next(pnt)

endloop

end

set xc=0 zc=0

ini_coord

;****************************************

title命令

title 'Tutorial Examples'

plot set title text 'Mesh for trench example'

应力梯度

ini dens 2000

ini szz -40e3 grad 0 0 20e3 ran z 0 2

ini syy -20e3 grad 0 0 10e3 ran z 0 2

ini sxx -20e3 grad 0 0 10e3 ran z 0 2

set grav 0 0 -10

ini xdis=0 ydis=0 zdis=0

hist gp xdisp 1,0,0

hist gp zdisp 0,0,2

apply syy = -20e6 grad 0,0,20e5 range y -20.1,-19.9 z 0,10

With this command, a yy-stress component is applied to boundary faces located between y = -20.1 and -19.9. The yy-stress varies linearly with z from σyy = 0 at z = 10 to σyy = -20e6 at z = 0.

S=S(0)+gx*x+gy*y+gz*z ' gx gy gz 分别对应grad 0,0,20e5 中的三个分量

;****************************************

基本形状网格

gen zone brick size 6,8,8 p0 -10, -10, -20 &

p1 10, -10, -20 &

p2 -10, 10, -20 &

p3 -10, -10, 0

plot surf

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 surf

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 'The fill keyword fills the brick region with zones

plot surf

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

gen zone reflect dip 90 dd 90

gen zone reflect normal (xv yv zv) origin (xv yv zv)

;

; identify the trench

gen zone radc &

dim 3 3 3 3 &

ratio 1 1 1 1.2 &

size 3 8 8 5 &

edge 10 &

p0 100 95 100 &

fill

gen zone reflect dip 90 dd 90 ori 100 100 100

gen zone reflect dip 0 dd 0 ori 100 100 100

;****************************************

cable

sel cable beg 1.0,0.4,1.5 end 5.0,0.4,1.5 nseg 4

sel cable beg 1.0,0.4,0.5 end 5.0,0.4,0.5 nseg 4

sel cable beg 1.0,1.2,1.5 end 5.0,1.2,1.5 nseg 4

sel cable beg 1.0,1.2,0.5 end 5.0,1.2,0.5 nseg 4

sel cable prop emod 2e9 ytens 1e8 xcarea 1.0 &

gr_coh 1e10 gr_k 2e9 gr_per 1.0

;****************************************

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 hold hist 1 vs -2 'plot hist m vs n中m代表y轴;n代表x轴;负值是对其值的镜像pl sk magf 20 'sk 显示模型的外围网格线

pl con szz ou on magf 20

;****************************************

if x_pos = 10.0 then

new = get_mem(2)

mem(new) = head

head = new

endif

**************************************

举个例子

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

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地址链条,方便以后使用。

在调用时,用ad=head,就将最后一个循环开辟的两个变量的第一个变量的地址赋予ad,进行调用时,后找到的zone 地址将被先调用,最后一直循环到最先开辟的两变量,因最先开辟的两变量的第一个变量的地址为null,因此可以控制循环结束。

;****************************************

ini state 0 ' 是把单元初始化为弹性状态,在施加初应力时可能使得某一部分单元进入了塑性状态。因此把它改回弹性。

;****************************************

id,cid是什么意思?

id是指在整个结构中的编号,而cid是指在某一类比如说cable中的编号。拿cable 中的一个单元来说,它既有自己在整个结构中的cd,又有自己在cable中的cid

;****************************************

movie命令

rest 6-1.sav

app nstress -100e3 ran z 2.9 3.1 x 1 2 y 1 2

plot set rot 20 0 30

plot con szz ou on magf 10

plot add hist 1

set movie avi step 1 file 6-5.avi

movie start

solve

movie finish

;****************************************

CONFIG keyword

The following keywords apply.

cppudm C++ user-defined models (only available with the C++ user-defined model option)

creep creep material analysis (only available with creep model option)

dynamic fully dynamic analysis (only available with dynamic model option)

fluid fluid-flow analysis (see see Section 1 in Fluid-Mechanical Interaction (FLAC3D Manual)) gpextra n

n extra gridpoint variables for FISH use (see FISH REFERENCE)

thermal thermal analysis (only available with thermal model option)

zextra n

n extra zone variables for FISH use (see FISH REFERENCE)

;****************************************

结构单元

SEL keyword value

cable

cable begin . . . end . . .

id

nseg

pretension

property

cable keyword

pretension value

applies given pre-tension force to all cableSELs in the range and with an ID number of id; if id is not given, then all cableSELs in the range are considered. A positive pre-tension force places a cableSEL into tension. The given force is added to the current force being carried by each cableSEL.

property keyword value . . .

assigns the specified property to all cableSELs in the range and with an ID number of id; if id is not given, then all cableSELs in the range are considered. The following properties are available.

densitydensity (needed if dynamic mode or gravity is active)

emod Young's modulus

gr_coh grout cohesive strength (force) per unit length

gr_fric grout friction angle (degrees)

gr_k grout stiffness per unit length

gr_per grout exposed perimeter

slide large-strain sliding flag

slide_tol large-strain sliding tolerance

thexp thermal expansion coefficient

xcarea cross-sectional area

ycomp compressive yield strength (force)

ytens tensile yield strength (force)

;****************************************

dim 内部区域的尺寸edge fill

gen zone radcylinder size 5,10,10,5 &

p0 (0,0,0) p1 add (400,0,0) p2 add (0,200,0) p3 (0,0,200) &

dim (20,20,20,20) fill

not

del range group 2 not '模型中只保留group 2 ,其他的都删除

;****************************************

out(s) 在屏幕上显示s的字符信息,s必须是字符类型。执行成功,返回0,否则为1. in(s) 键盘输入函数。等待用户键盘输入

;****************************************

FLAC命令流

FLAC命令流 ;**************************************** group命令 group soil range z 1 2 ;定义group prop bulk 7.8e6 shear 3.0e6 coh 10e3 fric 15 ran group soil ;给group赋值model null range group soil model elastic range group soil range命令 range name trench x 0 1 y 0 4 z 0 2 model null range trench model null range x=2,4 y=2,6 z=5,10 range name Big_Brick x -3 3 y -2 2 z -1 1 model elastic range Big_Brick prop bulk 1e8 shear 1e8 range Big_Brick range name Layer1 plane dip 0 dd 0 ori 0 0 0 above range name Layer2 plane dip 0 dd 0 ori 0 0 0 below macro命令 macro Sand 'bulk 1e8 shear 0.5e8 coh 0 tens 0 fric 35' macro Clay 'bulk 1e7 shear 0.3e7 coh 1e7 tens 0 fric 0' prop sand range Layer1 prop clay range layer2 macro Pt0 'p0 0 0 0' macro Pt1 'p1 add 10 0 0' macro Pt2 'p2 add 0 10 0' macro Pt3 'p3 add 0 0 10' macro Model_Size 'size 4 5 6' macro Big_Brick 'gen zone brick Pt0 Pt1 Pt2 Pt3 Model_Size' Big_Brick macro 'Pt0' 'p0 15 15 15' gen Big_Brick ; this will cause an error

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;(也可由用户自定义该值,命令:

flac 命令流 参考 实用

;**************************************** group命令 group soil range z 1 2 ;定义group prop bulk 7.8e6 shear 3.0e6 coh 10e3 fric 15 ran group soil ;给group赋值 model null range group soil model elastic range group soil plot block group range group dam ;只显示dam range命令 range name trench x 0 1 y 0 4 z 0 2 model null range trench model null range x=2,4 y=2,6 z=5,10 range name Big_Brick x -3 3 y -2 2 z -1 1 model elastic range Big_Brick prop bulk 1e8 shear 1e8 range Big_Brick range name Layer1 plane dip 0 dd 0 ori 0 0 0 above range name Layer2 plane dip 0 dd 0 ori 0 0 0 below range cylinder end1 x1 y1 z1 end2 x2 y2 z2 radius r cylindrical range with one end of the cylinder axis (end1) at location (x1, y1, z1), the other end (end2) at location (x2, y2, z2), and with a cylinder radius of r '由(x1, y1, z1) 、(x2, y2, z2)两点确定旋转轴 macro命令 macro Sand 'bulk 1e8 shear 0.5e8 coh 0 tens 0 fric 35' macro Clay 'bulk 1e7 shear 0.3e7 coh 1e7 tens 0 fric 0' prop sand range Layer1 prop clay range layer2 macro Pt0 'p0 0 0 0' macro Pt1 'p1 add 10 0 0' macro Pt2 'p2 add 0 10 0' macro Pt3 'p3 add 0 0 10' macro Model_Size 'size 4 5 6'

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 2-7 控制循环 New def xxx sum = 0 prod = 1 loop n (1,10)

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基础命令流解释

;模型镜像 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

[实用参考]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命令流(整理版)

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

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.如何跳过某个计算步?答:在计算中按空格键跳过本次计算,自动进入下一步

FLACD命令流挺实用

F L A C D命令流挺实用 Revised final draft November 26, 2020

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

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……

flac视频如何快速转换为wav格式

flac和mp3很相似,都是音频编码的一种音频压缩编码。在将fac 转换wav,我们就可以根据flac的特性很容易将音频文件转换成无损格式。flac如何转换成wav的呢?下面我们就来看下这款简单的格式转换器是如何转换文件的。 一、准备转换工具——视频转换器 1、首先下载迅捷视频转换器,我们直接到官网下载界面上,我们可以很清楚看到下载的显眼位置。我们就点击下载到电脑上。 2、下载之后,我们在安装的过程中如遇到要选择些项目,比如在安装路径时,你可以选择在电脑的其他硬盘上建立一个文件夹然后存放在哪里,或者默认也可以。

二、运行软件添加文件 1、运行直接使用,双击桌面上快捷图标或者就是安装完成后也可启动转换器。来到主界面,我们点击左上角“视频添加”按钮,然后将要转换的flac文件添加到视频转换器上。 2、还有一种简单的添加方法,看到软件界面中间的“+”号了吗?

点击它也可以弹出文件选择窗口,或者也可以直接将文件拖入界面中。 三、设置输出参数 1、选择输出格式 点击右上方“输出格式”右边的倒三角符号。弹出格式选项,来到“音频”项上,我们很快就可以找到wav格式文件,这个视频格式转换器还有格式搜索功能。在搜索框上,输入要转换的格式就可以快速找到。

2、设置输出品质 1)音频文件在选择格式的时候,一般在转换器上在相对应的格式下都有一个默认的值。如果想要输出文件效果变得更好的。那么就要来到参数的设置项上。点击右边的自定义按钮。 2)到参数设置界面上,我们可以看到音频设置项上,有音频编码

器、比特率、采样率等设置。音频比特率和采样率越大,声音的效果就越好,文件也就越大;音频比特率和采样率越小,声音效果就越差,文件也就越小。 3、设置输出目录 等到设置好参数之后,我们现在接着就是来到下面的输出目录设置,我们就到主界面下方,点击输出目录右边的文件夹按钮,然后就在弹出的对话框上选择存放文件的地方。

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

flacd软件隧道支护与开挖命令流

f l a c d软件隧道支护与开 挖命令流 The latest revision on November 22, 2020

;----------------------------------------------------- ; ---- Excavation and Support for a Shallow Tunnel --- ;----------------------------------------------------- new ;新建项目 set fish autocreate off title 'Excavation and Support for a Shallow Tunnel' ;定义题目 ; generate primitive components of grid ; concrete liner - upper tunnel gen zon cshell p0 0 0 0 p1 7 0 0 p2 0 51 0 p3 0 0 5.5 & dim 5 5 5 5 size 2 51 10 group zone 'concrete liner' ; ; upper tunnel gen zon cylinder p0 0 0 0 p1 5 0 0 p2 0 51 0 p3 0 0 5 & size 5 51 10 group zone tunnel range group 'concrete liner' not ; ; lower tunnel & liner gen zone brick p0 0 0 -4.5 p1 add 7 0 0 p2 add 0 51 0 p3 add 0 0 4.5 & size 7 51 3 ; ; surrounding rock (8 primitives) gen zon radcyl p0 0 0 0 p1 27 0 0 p2 0 51 0 p3 0 0 25 & dim 7 5.5 7 5.5 size 5 51 10 8 rat 1 1 1 1.3 ; gen zone brick p0 7 0 -4.5 p1 27 0 -15 p2 add 0 51 0 p3 7 0 0 & p4 27 51 -15 p5 7 51 0 p6 27 0 0 p7 27 51 0 & size 8 51 3 ratio 1.3 1 1 ; gen zone brick p0 0 0 -15 p1 add 27 0 0 p2 add 0 51 0 p3 0 0 -4.5 & p4 27 51 -15 p5 0 51 -4.5 p6 7 0 -4.5 p7 7 51 -4.5 & size 7 51 8 rat 1 1 0.7692307692307692 ; gen zon brick p0 0 0 25 p1 add 27 0 0 p2 add 0 51 0 p3 add 0 0 10 & size 5 51 2 ; gen zon bric p0 27 0 25 p1 add 17 0 0 p2 add 0 51 0 p3 add 0 0 10 & size 2 51 2 rat 2 1 1 ;

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

把ape、wav无损音乐转换为flac等格式

把ape、wav无损音乐转换为flac等格式M3、M6播放器支持的无损音乐格式有wav、flac、wma lossless,据说即将支持ape。四种格式 的体积从大到小依次是:wav,flac,ape,wma lossless。就体积而言wav是明显很大(是后面几种的两倍左右),而后面三种相差并不是很明显。 wav未经压缩,flac压缩时采用整数运算,ape采用浮点运算,所以播放起来最省电的是wav,其次是flac,最后是ape、wma lossless,这几种的关系是体积越小越费电,体积越大越省电。在体积和省电性上flac无疑是个较好的平衡点。 flac比ape有开源优势,在抗损伤方面比ape强(具体可参考flac的介绍文章),所以转换flac 有非常实用的现实意义。 之前写了一个用Advanced WMA Workshop转换格式的帖子,但是考虑到此软件不能导入cue,导致在转换时不能把整轨的ape文件分段,使用价值不高,所以在这里重新编写一个用foobar来转换格式的教程,本教程更加通俗易懂,易于操作,大家慢慢看。 本教程的优势:通俗易懂,软件也操作简便,功能丰富,可以载入cue,在转换格式的同时分段。大名鼎鼎的foobar播放器的音质与功能有口皆碑,如果以前不是用这个软件的话不妨从此换用此播放软件,一定不会令你失望! 1、下载foobar软件,推荐下载Foobar2000 V0.9.4.1 汉化增强版,推荐下载地址:天空软件园Foobar2000 V0.9.4.1 汉化增强版 2、下载完毕后,双击安装,如下图,点击“下一步”: 3、接着点击“我同意”: 4、选择安装路径,点击“下一步”: 5、接着是非常重要的一步,“组件安装类型”一定要选择“完全”,这样软件安装后才有“转换为flac”功能: 6、此后一直点击“下一步”,直至安装完成。运行该软件,黑黑的很酷吧: 7、找到要转换的原ape文件(或wav): 8、将其中的.cue文件用鼠标拖动到foobar的黑色界面里然后释放,马上就看到了该专辑的歌曲,选中所有歌曲,在其上右键单击出现功能菜单,鼠标选择到“转换”——“转换到”,如下图: 9、接着出现的对话框,在“编码预置”里选择“flac”!!然后点击“确定”: 10、接着找一个文件夹用来存放转换得到的flac文件,然后点击确定,开始转换: 11、转换中,请等待...... 12、等转换完成后,到之前设定的文件夹去找转换后的flac文件,任务完成。 推而广之,用同样的方法还可实现所有格式之间的互转,比如ape/flac→ape/flac(由整轨变为分轨)、wav→ape/flac、ape/flac→wav、wav/ape/flac→ogg、wav/ape/flac→mp3等等。方法是:在第9步中,不管原始文件是什么格式,把“编码预置”选为不同的编码器就可实现相应的转换,是不是特别简单! 如果你只是想把整轨的无损音乐转一下格式而不想分段,那么,在第8步中,把.ape文件拖到播放列表中,点右键转换就可以了。不要拖.cue文件。 关于无损音乐格式(flac、ape等)的下载,有很多途径,比如BT、电驴等,但由于种种原因

相关文档