flac3d中文使用指导.docx
- 文档编号:16846733
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:63
- 大小:1.41MB
flac3d中文使用指导.docx
《flac3d中文使用指导.docx》由会员分享,可在线阅读,更多相关《flac3d中文使用指导.docx(63页珍藏版)》请在冰点文库上搜索。
flac3d中文使用指导
快速入门
(GETTINGSTARTED)
制作:
xxxx
2010年12月
2.1安装启动程序
2.1.1系统要求
安装运行flac3d需要的系统最低配置如下:
处理器:
时钟频率至少为1GHZ,处理器的主频越高,那么flac3d的计算速度将越快。
硬盘:
安装软件至少需要12MB的硬盘空间。
如果装载了在线的用户手册,那么还需16MB的空间。
(注意默认情况下,安装软件时会自动装载用户手册)。
除此之外,还需要至100MB的硬盘空间来存储分析计算时生成的各种文件。
内存-启动软件至少需要3MB的内存。
在建模过程中,软件所占用的内存,会不断的发生变化(见表2.1)WINDOW操作系统还限定了软件建模时占用的内存不能超过2GB。
显示器:
推荐1024×768分辨率,16位彩色显示器。
操作系统:
FLAC3D是32位操作系统的应用程序,所以基于intel技术的WINDOWS98及以上操作系统均支持软件的安装和使用。
输出设备:
默认情况下,系统图形会输出到系统打印机上。
也可以复制到剪贴板上,或者保存为格式化的文件,这里所说的格式包括:
加强型图元文件格式和位图文件(PCX/BMP/JPEG)。
用户可以使用setplot命令来指定输出的形式及格式。
2.1.2软件的安装
(略)
2.1.3组件
软件的可执行文件为“F3300.EXE”。
FLAC3D是使用VC++7.0编写的。
除了可执行程序外,还需要两套动态链接库(DLL文件),一套用来接入和存取各种各样的图形;另一套提供内置的各种本构模型。
2.1.4应用程序和图形处理设备
在使用FLAC3D时,各种应用软件和图形处理设备会起到很大的辅助作用。
编辑器:
任何以ASCII码为标准格式的文本编辑器都可以用来创建FLAC3D的数据文件。
但是必须要注意一些“先进”的文档编辑器(如WordPerfect,Word等软件),这些编辑器会把格式说明信息编译成标准输出格式,这些说明信息并不能被FLAC3D识别,所以导入这类文档时会出现错误。
FLAC3D输入的数据文件必须是标准ASCII码形式的文件。
图形输出设备:
FLAC3D支持很多种类型的图形处理设备,默认情况下,生成的图形可以“Plothardcopy”命令来连接到系统默认的打印机以便输出。
(或者通过FLAC3D主窗口中FILE菜单栏下的print-view来设定)“Plotclipboard”命令可以将显示的图形,存放到WINDOWS剪贴板上(没有任何文件生成)。
该图形接着就可以以加强型图元文件格式被粘贴到其它兼容该格式的WINDOWS应用程序中去。
“Setplotmetafile”命令可以将图形以加强型图元格式存盘,以便作为计算的参考或日后插入到文档中去。
通过命令:
Setplot+关键词(pcx,bitmap,bmp或者jpg)可以存储为许多图像格式(pcx,bmp,jpeg等)。
输出的这些位图的分辨率由命名行:
Setplot
当然也可以使用Setplotavi或者Setplotdcx以及Setplotmovie命令将显示图形输出为视屏格式。
无论是黑白的还是彩色的postscript打印机,都需要通过“Setplotpostscript”命令来指定。
打印图形将存储为文件,这样支持postscript格式的图形处理程序就可以读入并进行修改了。
2.1.5启动软件
双击可执行文件“F3300.EXE”便启动了程序,接着会弹出一个FLAC3D的主窗口。
在主窗口的最下面附带了一个命令窗口,我们可以把命令直接输入到命令窗口中来执行相关命令,命令窗口最初显示的提示符为:
“FLAC3D>”。
当软件启动后,它占用的系统内存是随着用户的操作而不断变化的(比如说,在建模过程中,系统所占用的内存会越来越多)。
我们可以在命令窗口中输入printmemorysystem命令来查看现阶段程序已占用的内存及操作系统还可为软件提供的总内存。
如果你在操作过程中发现命令失效(并不是命令错误),那么一定是系统可分配的内存太少了,软件所占用的内存过多。
这个时候,最好退出并重启软件,以释放内存。
表2.1列出了一般建立摩尔库伦材料模型的单元数与软件占用的内存之间的大致对应关系。
表2.1FLAC3D内存使用情况表
单元数占用内存量(MB)
2000020
3000068
40000161
50000314
60000541
2.1.6版本号说明
(略)
2.1.7程序的初始化
刚打开FLAC3D软件,它首先会在当前文件夹下寻找“FLAC3D.INI”文件,如果没有找到,它就会到安装目录下寻找。
它的作用是存放用户设定的程序初始化模式的命令。
以便每次打开软件都载入用户的初始设置。
如果“FLAC3D.INI”文件不存在,软件继续运行而不会提示出错信息,注意一点:
一些存储在“FLAC3D.INI”里的命令,如果并不是设置初始化的命令,有可能导致错误的信息。
2.1.8运行FLAC3D
Flac3d命令驱动模式包括两种方式:
交互模式(在命令窗口中输入命令行);命令流模式(将命令行保存在数据文件中,通过读入该文件执行相关命令)。
如果输入的命令存在错误,那么窗口中将会出现错误提示。
命令流文件一般通过文本编辑器创建和修改(见2.14节),虽然命令流文件可以定义为任何文件名,但是最好设定其扩展名为“.dat”,以防止和flac3d其它类型的文件相混淆。
要读入命令流文件可以使用以下命令:
callfile.dat其中,file.dat指的是用户定义的命令流文件的文件名。
一旦读入文件,你会发现软件会将当前在文件中读入的命令行,显示在屏幕上。
如果命令流文件保存在当前文件夹下*,那么在call命令后面只需输入完整的文件名即可,否则还应在文件名前面加上文件的完整路径(比如:
c:
\我的文件夹\file.dat)。
除这种方法外,我们也可以菜单操作读入文件:
依次点file-call按钮(见2.12节)为方便起见,我们可以为应用程序创建快捷键,右键点击“F3300.exe”不放,并拖动到相应的创建快捷键的位置,松手后会弹出一个对话框,选中“在当前位置创建快捷方式”,这样就生成了一个快捷方式。
双击该快捷方式就可以启动软件。
创建快捷方式的目的并不只在于方便打开应用程序,我们右键新创建的
快捷方式,选择“属性”,接着在弹出的对话框中将“起始位置”这个文本框中内容删除并点击左下角的确定按钮。
这样当你双击该快捷方式启动应用程序时,系统默认的“当前文件夹”就是快捷方式所在的文件夹了。
我们可以将快捷方式和输入文件放在同一目录下,这样就方便了文件的输入。
2.2一个简单的计算教程——常用命令的使用
这一部分主要是为那些刚接触FLAC3D,跃跃欲试的新用户准备的。
在这一部分,将通过一个简单的例子来帮助用户学习一些求解问题的基本知识。
例题的主要问题描述如下:
在一块土体中一次性开挖一个2m×4m×4m的沟渠,并对沟渠周围土体的变形作监测和分析。
为了给用户提供方便,在安装目录中“\Tutorial\Beginner”文件夹下的“TUT.DAT”数据文件里包含了本例题使用的所有命令。
我们采用交互式的方法在FLAC3D中运行该算例。
(即:
用键盘输入命令行,在命令行输入完成后按回车键,然后直接查看输入命令后的结果)首先让我们打开FLAC3D软件,打开后,便可以看到FLAC3D的主窗口,在主窗口下方,是命名窗口,命令窗口的初始提示符为“FLAC3D>”。
建立初始的有限差分网格的命令为GENERATE*:
GENZONEBRICKSIZE688这个命令会在软件中建立一个X方向有6格,Y方向有8格,Z方向有8格的三维长方体网格。
在我们建立的这个模型中,Z方向为竖直方向。
我们可以用PLOT命令进入绘图模式,在该模式中可以观察所建立的网格。
一旦输入PLOT命令,那么接下来所要输入的命令都必须为PLOT子命令,绘图窗口默认定义为一个名为“BASE/0”的窗口,我们可以看到这时提示符变成了“PlotBase/0>”。
为了显示彩色的网格体和模型的坐标系,就需要输入如下的命令行:
例2.2创建和使用新视窗
createTrench(创建了一个叫做“TRENCH”的视图窗口)
addsurfaceyellow(表面显示黄色)
addaxesblack(显示黑色的坐标轴)
show(在屏幕上显示)
新创建的视窗自动的设置为当前活动视窗。
按键盘上的x、y、z键(小写状态)可使得当前视图绕着XYZ轴旋转(大写状态时旋转方向相反)使用m(M)键则可以对视图进行放大(缩小),方向键则可以控制视图进行平移。
当然反方向旋转也可以使用shift+控制键实现(其原理就是大小写之分)对视图的其它一些操作和控制,可以参考命令手册部分的表1.2。
注意:
我们也可以通过PLOT命令直接指定放大的倍数和视角。
每一个视图窗口的左边都会有该视图的详细信息:
CENTER(中心);ROTATION(旋转角度);DIST(距离);MAG(放大倍数)等。
我们现在通过交互模式建立我们想要的视图,而这些视图的数据信息其实还可以转变成数据文件,这样在其它视图中想要得到类似的视图效果,就可以通过命令输入相同的数据。
(实现过程见例题2.3)我们现在在例题2.2的基础上再建立一个视图窗口通过输入以下命令来创建一个新视图。
例2.3指定视窗显示数据
createTrench2
addsurfaceyellow
addaxesblack
setrotationxyz
setcenterxyz
setdistd
setmagnificationm
show
新例题2.3中多输入了加了黑体字的部分(红色部分的数字等同于例题2.2中经用户调整后显示在屏幕左侧中对应的数据),该部分等同于用键盘控制视图,2.3和2.2的两个视图应该是一模一样的。
还是来看例子2.2:
在Trench视窗中我们建立了一个6×8×8(m)坐标原点在(0,0,0)的网格。
网格的尺寸,原点,以及网格的密度都是可以通过GEN+关键词的命令来更改的。
这个问题将在稍后再作介绍。
现在我们要给整个模型空间定义本构模型和具体材料参数。
在本例中我们定义为摩尔—库伦弹塑性本构模型。
反回到“Flac3D>”命令模式(如在PLOT模式中,按回车键即可返回)并输入:
modelmohr
这个命令就定义了该网格体的本构模型为摩尔-库伦模型。
网格中的每块区域都可能需要定义成不同的本构模型和赋予不同的材料参数。
但是如果MODEL命令后没有特别指定命令作用的区域,则系统默认为作用的范围为整个模型。
为了提高塑性解答的精度,每一个单元都会自动的被细分为两组四面体的子网格(参见理论与背景部分的第一章)。
想知道计算这个问题需要占用多少的内存,可以输入以下命令:
printmemsavmemsys
输入命令后软件便会提供一张在现阶段内存的统计列表。
我们这个例子在现阶段大概需要占用0.6MB的内存来存储数据,大约需要4.2MB的内存来进行模型的计算。
接着在命令窗口中输入材料属性赋值命令:
propbulk=1e8shear=0.3e8fric=35
propcoh=1e10tens=1e10
以上的命令定义了材料的体积模量(PA)、剪切模量、内摩擦角、粘聚力和抗拉强度。
用户会发现粘聚力和抗拉强度值取得很大,这样取值的目的是为了模拟得到模型在自重作用下的初始应力状态*。
取值很大是防止了模型在初始加载分析时就达到塑性极限。
一旦你拥有了很多的模拟经验,你就会知道这样做的原因是很明显的。
在该样例中,土体仅受自重,在命令行中输入如下命令来加载重力:
setgrav0,0,-9.81(重力加速度,单位:
m/s2)
inidens=1000(密度,单位:
Kg/m3)
命令行中:
SET命令设置了重力加速度,INI定义了初始网格的质量密度(只有考虑重力的情况下才需要定义密度,在静力问题中,如果我们忽略重力,那么就无需定义密度,这点与FLAC不同)。
接着我们用如下命令来定义模型的边界条件:
fixxrangex-0.10.1
fixxrangex5.96.1
fixyrangey-0.10.1
fixyrangey7.98.1
fixzrangez-0.10.1
(注释:
有许多方法都可以模拟达到模型的初始平衡状态,比如可以先给模型赋予弹性本构模型来计算初始应力状态,再重新定义为摩尔-库伦模型来分析计算模型的开挖、加载及各种条件的改变过程;还可以直接赋予摩尔-库伦模型,然后采用solveelastic命令来分阶段求解。
)
fixxrangex5.96.1
fixyrangey-0.10.1
fixyrangey7.98.1
fixzrangez-0.10.1
以上的命令固定了模型的五个面(连杆支承),边界一旦被“FIX”(固定)后,在被固定的方向就不会发生位移和产生速度。
FIX命令在例题中起到了如下作用:
1、固定了边界面X=0,X=6上的所有节点X方向的位移,因为这两个边界面分别在range关键词所指的范围内;(命令的前两行)
2、固定了边界面Y=0,Y=8上的所有节点Y方向的位移;(第三、第四行的命令)
3、命令的最后一行固定了底部边界面(Z=0)Z方向的位移。
如果我们想在迭代计算过程中记录一些有用的变量或参数的变化,从而来判断分析是否已经达到平衡状态或者模型已经发生垮塌,就需要使用到HISTORY(HIST)命令。
在本算例中,我们接着在命令窗口输入如下命令:
histn=5
histunbal
histgpzdisp4,4,8
命令的第一行:
指定了参数记录的步频:
N(Nstep)=5指定了每迭代计算5次记录一次相关的值(如果不指定,则系统默认值为10)。
命令的第二行指定记录最大不平衡力(themaximumunbalancedforce)命令的第三行指定记录坐标值为(4,4,8)的节点Z方向的位移。
在计算时记录最大不平衡力是一个很好的习惯,如果最大不平衡力接近一个很小的值,并且位移记录值不再发生变化,那就表明计算已经到达了平衡状态。
现在已经准备好了求解模型初始状态的必要条件。
由于FLAC3D计算的结果为显式的动态解,我们通过设定计算所需的时间步来控制计算的进程,模型的动能会慢慢衰减为零,这样就得到了我们所要的静态解。
为了使单元体获得重力场,我们需要设定计算的时间步来求解模型在自重的作用下初始平衡状态。
软件中SOLVE命令就是按一定精度自动求解平衡状态的命令。
了解了这些知识,我们接着回到例题中来,在命令窗口中输入如下命令:
setmechforce=50
solve
这样,软件便开始了问题的求解,在求解过程中,会在程序窗口中显示计算的时间步数以及对应的最大不平衡力的值,当最大不平衡力小于所设定的上限值(本例题中我们用SET命令设定了最大不平衡力的上限值为50N,即:
计算的最大不平衡力一旦小于此值,我们便人为模型达到了平衡状态。
)求解过程终止*。
因为我们之前没有关闭绘图窗口,你会发现显示在窗口中图像不断的被更新。
如果我们先关闭了绘图窗口,那么求解所需的时间会更短。
在我们的模型中,计算停止在351步**,对于一般主频为1GHZ的奔腾电脑,完成这样的计算仅需要短短的几秒钟时间。
我们可以通过查看最大不平衡力以及所记录节点Z方向的位移采样图来分析,模型是否达到了平衡状态。
在命令窗口中输入:
plot
hist1
输入完命令后便可以在窗口中显示HIST1(最大不平衡力)的采样记录图。
按回车键,再输入如下命令:
hist2
可以查看所记录节点Z方向的位移采样图了。
最大不平衡力采样图(图2.3)中显示最大不平衡力接近于零,位移图(图2.4)中可以看出位移已经趋于一个固定值。
这两个采样结果均表明系统已经达到了平衡状态。
上面两个采样图都是在FLAC3D默认视图窗口(BASE/0)中显示的。
任何图形如果没有定义新的视图窗口,都会直接在默认视图中加以显示,这并不会对已建立的自定义视图窗口产生影响。
默认视图窗口就像一个“抓拍”器,能立即让你观察到你所需要的视图。
图2.3最大不平衡力记录图
图2.4节点(4,4,8)z方向位移记录图
注意:
输入的采样记录,系统按输入顺序从“1”开始一直往下编号,这就是为什么输入hist1命令显示的是最大不平衡力的采样记录图,输入hist2命令可显示Z方向的位图采样图的原因了。
当采样参数较多,自己又不记得输入的顺序时,可以在“FLAC3D>”提示符状态下输入:
printhist命令来显示所有采样参数对应的编号(称为id号)。
接着我们通过下面几行PLOT命令来建立一个比较复杂的新视图,以检查重力场是否已经施加到模型中:
plotcreateGravV
plotsetplanedip=90dd=0origin=3,4,0
plotsetrot15020
plotsetcenter2.54.24.0
plotaddboundbehind
plotaddbcontszzplane
plotaddaxes
plotshow
注意以上命令均在“FLAC3D>”提示符状态下输入,如果先输入plot命令,进入“plot”相关的提示符状态,那么命令中所有的plot均可删除。
执行以上命令后,便会出现一个名叫GravV的视窗,并且系统指定它为当前显示窗口。
我们在命令中已经定义了当前视图的剖面:
倾角为90度(dip=90),倾向为0度(dd=0),通过点(3,4,0)。
在命令中我们还定了视角(plotsetrot15020;plotsetcenter2.54.24.0)并且使用bound(boundary)命令来增加边界线框,线框只在平面的后面显示(由关键字behind定义,注可简写为BE)。
plotaddbcontszzplane命令的作用是在当前平面中绘出垂直应力分布图,图形如图2.5所示。
图2.5初始平衡状态z向应力剖面图
现在,最好保存以上得出的初始状态,便于在将来任何时候返回到该状态,重新设定相关参数来做相应的研究。
按回车键返回到“FLAC3D>”提示符状态,输入下面的命令:
savetrench.sav
这样一个名叫trench的SAV类型文件就在当前文件夹下生成了。
到此,我们在模型中已经新建了两个视图窗口。
我们可以用plotprint命令来列出所有的视图名称,当前视图前会有“==>”这样的标志以示区别。
也可以用plotprintview命令来显示当前视窗的详细信息。
在以上命令后加上视窗名或者其对应的id号,就可以显示相应视窗的详细信息,包括:
所有的视图设置;记录了
哪些参数。
如果想从GravV视图返回到早先创建的Trench视窗,那么输入如下命令:
plotcurrentTrench。
实现以上目的还有另一种方法,输入:
plotshowTrench。
只要你知道你想设置为当前视图的视图名,你就可以通过以上两种方法实现。
当然也可以采用菜单操作:
当鼠标输入光标指示在命令窗口时,在主窗口中有一个PLOT菜单,在该菜单中罗列了所有用户定义的视图,鼠标点到你想看到的视图,点选SHOW子选项,你就把该视图设置成了当前视图。
我们再进行下一步工作,在土体中开挖沟渠,首先输入命令:
propcoh=1e3tens=1e3
这个命令重新定义了整个模型材料的粘聚力和抗拉强度为1000Pa,这样的取值其实已经能够保证在初始状态中不出现错误了(未开挖前),但是我们应该总是要通过一些计算步数的计算来检查在初始状态可能出现的失稳垮塌。
为了模拟开挖,我们只需把要开挖部分的网格体的本构模型设置成空模型(null)即可,
命令如下:
modelnullrangex=2,4y=2,6z=5,10
开挖部分(即模型材料为NULL)是通过限定x,y,z方向区域的办法来选取的。
由于粘聚力比较小,而且沟渠壁没有支护,因此开挖后应该会发生土体垮塌的现象。
我们想要模拟的是现实过程,那么通过上面的简单分析,设定计算为大变形是合情合理的,设定的命令如下:
setlarge
我们需要看到的仅是开挖这个过程引起的位移变化。
而不是从加载重力到开挖整个过程的位移变化,所以,系统中所有网格节点的位移应该全部清零*命令如下:
inixdis=0ydis=0zdis=0
我们故意取了较小的粘聚力值,以保证模型发生破坏。
这样一来,我们就不能用SOVE+最大不平衡力上限值(判断达到平衡的条件)这样的命令方式来求解问题了,因为模拟的计算将永远不收敛而不能达到平衡状态。
我们可以通过限定每次计算的时间步数来控制模拟过程,从而了解在坍塌发生时的有关情况,这里才真正体现了显式求解方法的精髓。
计算过程永远不会慢慢趋于平衡,这也是有别于一般工程师所熟悉的隐式求解线性方程组的过程。
在FLAC3D中要求得这类解,就要用到STEP命令,在本例题中输入:
step2000,这样FLAC3D就会执行2000时间步的计算。
(对于主频为1GHZ的奔腾电脑,这个过程都花不了一分钟的时间)
然后我们要通过查看相关图形,来检查到现阶段为止的计算结果。
现在我们
先来查看位移的等值线图,输入如下命令:
(注释:
这个步骤不会影响到模型的计算,只是方便于用户查看需要的结果,因
为在迭代计算过程中,没有用到位移。
)
plot
createDispCont
copyGravVDispContsettings
addcontdispplanebehindshadeon
addaxes
show
在命令中我们拷贝了之前定义的GravV视图的设置为当前定义视图的设置(具体来说就是平面的定位设置)。
在出现的位移等值线图中(图2.6)你会发现,在开挖部分的周围一些网格开始发生变形。
在图中你还可以看出因开挖,地面发生沉降的区域*。
图2.6开挖计算2000步后的位移等值线图
本例题暂时就到此结束,在接下来的内容中我们将介绍FLAC3D的其它一些知识,来解决本例题模型一些更复杂的问题,包括怎样对开挖的沟渠进行加固。
我们建议初学者采用边看教学手册边操作的模式来学习接下来的知识。
如果你对FLAC3D的命令已经比较熟悉了,那可以转到3.3章节来了解FLAC3D在求解问题时还需了解的其它细节信息。
(注释:
考虑到加快例题的计算时间,我们取的开挖土体边界很小,在实际情况中,开挖可能是在很大的一块地面上进行的。
那么自然的,我们认为定义的边界会对计算结果产生影响。
)
2.3基本术语
FLAC3D使用的术语与一般的有限差分程序或者有限元程序是一致的,为了使用户能够清晰的了解这些术语,现图文并茂加以说明,图2.7中标示了flac3d中的基本术语。
FLAC3DMODEL——用户在FLAC3D软件里建立的一个物理模型,用户通过输入命令的方式来定义模型所处的各种状态,已完成对真实问题的数值模拟过程。
ZONE——单元体,也叫ELEMENT,是分析现象(如:
应力应变关系)时发生变化的最小空间区域,空间单元可以有不同的形状(如:
六面体、楔体、锥体、四面体等),模型的网格是由这些最基本形状的单元体组成的。
每一个单元都自动再细分为两套Sub-zone*,这个和用户建模无关,一般不需
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- flac3d 中文 使用 指导