FLAC3D学习笔记(自己总结版)

合集下载

flac3d常见问题总结

flac3d常见问题总结

flac3d学习有一段时间,过一段时间没学究忘了很多,所以学习最好不要放下来。

对自己总结,也是学习的一种。

flac3d命令很多,用到的不多,就那么几个,基础的就不多说了进入正题:个人认为如果学习flac3d最好把flac的命令进行总结一下。

做模型就好比拼盘:要地应力,就把地应力的那段命令摘入,要出图,加入plot的相关命令,要出动画,加个动画命令,所以总结好命令后,以后做模型,只要把命令组一条条的对应放入,一个程序就出来了,后期调试一下,改相关参数就可以了。

接下来,我把自己弄好的整理一下,按照我上面的思路进行建模什么人建模都会有自己的喜好,下面说一下我自己建模第一步就是建立一个全新的txt文件(不论命令大小都是如此),这样的好处是,模型可以修改方便快捷。

而且还可以自我查错建立新的txt后,第一行命令就是new,加new的目的是为了防止其他命令的影响(相当于刷新)再执行其他命令前刷新一下。

不用想,接下来就是建模了,建立模型,不同人有不同的方法,有的人喜欢建完后在对模型开挖最终得到自己想要的模型。

model null 等;有的人喜欢用各种带缺角的组合成最终的模型。

具体建模看各自的喜好,我觉得,不同点是建模的网格划分有区别,用带缺角的组合模型网格划分更好最好把常用的集中模型记下来组成各种句子,以后用的时候直接插入例如:gen zone brick/radbrick size *,*,*,* ratio *,*,*,*建模的过程中,或同一个文件中有重复应用的命令,就可以用宏命令了,宏命令macro 名称‘命令的内容’例:macro shiping ’plot con zdip outline on’用shiping 代替后面的引号里的东西。

在建模中只要有相同的都可以用shiping代替,缩减了书写命令的时间,整体上也能让人看的更明白注意点是,你命名的符号最好跟falc自带的命令不要重复,我的处理方法是,名称后带数字如shiping1如果你想修改宏对象,改变命令的内容,在名称上加单引号就是替换的意思例macro ’shiping1‘‘新的命令’这些很多课本里都有讲,不在叙述很多时候我们要对单一的对象进行操作,例如进行模拟运算后,只想单独的显示一部分的内容,单一的土层,锚杆,等就要用到groupgroup给对象命名,例:在gen zone brick ------ size ---- group name(name随便取,不要跟flac的已有的命令重合就行)这里的意思就是对这个体进行了命名接下来想把这一块模型挖掉加model null range group namegroup的用法:1。

(新)Flac3D5.0笔记

(新)Flac3D5.0笔记

导入dat、txt文件的方法
导入.sav文件的方法
输入命令流:Restore 文件名.sav
导入.f3prj文件的方法
视图窗口关闭后,如何再次呈现输入命令plot zone
~
当命令流输错可从这里撤销
点亮相应命令流后才可撤销
透明度的调整
保存项目文件
保存文件的重命名做切片
]
倾向和倾角
法向和过一个点
删除切片
Ctrl+R为查看模型后还原
显示接触面,双击I nterface显示接触面
接触面属性项被激活后,可以更改属性
隐藏网格显示
输出网格

如果点击了透明,将不显示Information
只要不点击透明,则显示Information
等同于
点击显示节点坐标
fish简介
@之前要有(空格)
而在之间没有(空格)
~
按下列步骤取消fish语言前要加@
点击fish
软件的刷新
如何显示软件最终的安全系数
显示软件节点.
查看应力及最大剪应力的步骤
:
查看位移云图的步骤
输出云图
设置出图边宽
设置分辨率可设为1080
Reflect镜像restore调用之前的计算结果
Origin原点normal法向量(该点与原点的坐标差)
`
对于结构单元如桩,若点击Zone将不出现任何模型
按如下步骤才可显示
使用该命令后保存的文件与说建模的文件保存在同一文件夹
查看约束反力的步骤
查看分组的步骤
;
位移云图的显示颜色相反如何调整
连接两个不同尺寸的单元。

FLAC3D常用命令总结

FLAC3D常用命令总结

FLAC3D常用命令总结第一篇: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 end1end2 radius r2 not,其中r22、如何能把一个PLOT的图像数据导出来以便用其他软件绘图?答:用set log on 命令,把数据导出来,转到excel里处理一下,然后用surfer或者什么作图软件绘制就行了。

(新)Flac3D5.0笔记(注释)

(新)Flac3D5.0笔记(注释)

FLAC3D5.0导入dat、txt文件的方法
FLAC3D5.0导入.sav文件的方法
输入命令流:Restore 文件名.sav
FLAC3D5.0导入.f3prj文件的方法
视图窗口关闭后,如何再次呈现?输入命令plot zone
当命令流输错可从这里撤销
点亮相应命令流后才可撤销
透明度的调整
保存项目文件
保存文件的重命名
做切片
倾向和倾角
法向和过一个点
删除切片
Ctrl+R为查看模型后还原
显示接触面,双击I nterface显示接触面
接触面属性项被激活后,可以更改属性隐藏网格显示
输出网格
如果点击了透明,将不显示Information
只要不点击透明,则显示Information
等同于
点击显示节点坐标
fish简介
之前要有(空格)之前加是Flac3D3.0和5.0区别而在之间没有(空格)
按下列步骤取消fish语言前要加
点击fish
软件的刷新如何显示软件最终的安全系数
显示软件节点.
查看应力及最大剪应力的步骤
查看位移云图的步骤
输出云图
设置出图边宽
设置分辨率可设为1080 Reflect镜像restore调用之前的计算结果
Origin原点normal法向量(该点与原点的坐标差)
对于结构单元如桩,若点击Zone将不出现任何模型
按如下步骤才可显示
使用该命令后保存的文件与说建模的文件保存在同一文件夹
查看约束反力的步骤
查看分组的步骤
位移云图的显示颜色相反如何调整
连接两个不同尺寸的单元。

FLAC3D学习

FLAC3D学习

FLAC3D学习1.FLAC3D的基本知识介绍岩土工程结构的数值解是建立在满足基本方程(平衡方程、几何方程、本构方程)和边界条件下推导的。

由于基本方程和边界条件多以微分方程的形式出现,因此,将基本方程近假发改用差分方程(代数方程)表示,把求解微分方程的问题改换成求解代数方程的问题,这就是所谓的差分法。

差分法由来已久,但差分法需要求解高阶代数方程组,只有在计算机的出现,才使该法得以实施和发展。

FLAC3D (FatLagrangianAnalyiofContinua)由美国Itaca公司开发的。

目前,FLAC有二维和三维计算程序两个版本,二维计算程序V3.0以前的为DOS版本,V2.5版本仅仅能够使用计算机的基本内存(64K),所以,程序求解的最大结点数仅限于2000个以内。

1995年,FLAC2D已升级为V3.3的版本,其程序能够使用护展内存。

因此,大大发护展了计算规模。

FLAC3D是一个三维有限差分程序,目前已发展到V2。

1版本。

FLAC3D的输入和一般的数值分析程序不同,它可以用交互的方式,从键盘输入各种命令,也可以写成命令(集)文件,类似于批处理,由文件来驱动。

因此,采用FLAC程序进行计算,必须了解各种命令关键词的功能,然后,按照计算顺序,将命令按先后,依次排列,形成可以完成一定计算任务的命令文件。

FLAC3D是二维的有限差分程序FLAC2D的护展,能够进行土质、岩石和其它材料的三维结构受力特性模拟和塑性流动分析。

调整三维网格中的多面体单元来拟合实际的结构。

单元材料可采用线性或非线性本构模型,在外力作用下,当材料发生屈服流动后,网格能够相应发变形和移动(大变形模式)。

FLAC3D采用的显式拉格朗日算法和混合-离散分区技术能够非常准确发模拟材料的塑性破坏和流动。

由于无须形成刚度矩阵,因此,基于较小内存空间就能够求解大范围的三维问题。

FLAC3D采用ANSIC++语言编写的。

1对模拟塑性破坏和塑性流动采用的是“混合离散法”。

学习Flac心得

学习Flac心得

学习flac3d的心得:经过几天的学习,我学会了很多关于flac3d的基础知识,我先从基本的符号入手,知道了很多词语的意思,如xdis-x的位移,xvel-x的速度,fri-摩擦角,bu sh coh -代表不同的模量,还有很多基本的词语.然后从最简单的如何生成网格学习,学会了简单网格的生成,如怎么生成立方体(长,宽,高为95 85 75),步鄹如下:gen zone bri p0 0 0 0 p1 95 0 0 p2 0 85 0 p3 0 0 75 p4 95 85 0 p5 0 85 75 p6 95 0 75 p7 95 85 75 size 2 3 4 ratio 1.2 1.2 3 如何在flac3d的软件显示立方体只需要在命令行输入plot block group 这样的命令.还有可以在图形上显示射线的,步鄹如下:gen zone rad 下面的如上所述,但是我对球体的形成还是不懂,再者我学习了解决实际工程问题的步鄹,第一,根据题目中的条件在纸上按比例画出图形,第二,计算出初始的应力平衡,第三,根据画出的图形在flac3d生成,第四,对生成的图形进行赋值还有定义dens ,grav等已知量,第五,进行数据的处理,得出想要的结果.最后我学习对数据的后处理,可以用图形得到各层的受力的情况,还可以得到很多对实际工程有用的数据.如输出xx轴的受力输入命令:plot con sxx(不显示网格) plot con sxx ou on(显示网格).下面例题:NewGen zon bri size 2 2 4Model mohrProp bu 3e7 sh 1e7 coh 1e10 fri 15Fix z ran z 0Fix z ran z 2Fix x ran x 0Fix x ran x 1Fix y ran y 0Fix y ran y 4Ini dens 3000Set grav 9.8Ini sxx -3e4 grad 3.7777e3 0 0 ran z 0 1 Ini syy -4e5 grad 4.6666e4 0 0 ran z 0 1 Ini szz -6e7 grad 5.8888e6 0 0 ran z 0 1 App nstress -4e7 ran z 1Hist id=1 gp zdis 0 0 0Hist id=2 gp zdis 1 0 0Hist id=3 gp xdis 0.5 0 0Hist id=4 gp ydis 2.5 0 0Hist id=5 zone szz 0.5 2.5 1Hist id=6 zone syy 0.5 1 1Hist id=7 zone sxx 0.5 3 1Save 1-1.savSolve。

FLAC3D学习笔记(自己总结版)

FLAC3D学习笔记(自己总结版)

FLAC3D学习笔记(自己总结版)一、建立模型笔记1键盘上的键的功能:X,Y,Z分别控制所建立的模型围绕X,Y,Z三个轴做逆时针旋转、如果打开大小写锁定键,分边按XYZ时建立的模型会做顺时针旋转、+号的功能是加大模型旋转的角度,-号的功能是减小模型旋转的角度。

2键盘上的上下左右四个键可以实现图形的向上向下,向左和向右的移动、3当在一个区域建立多个模型的时候,有时候为了镜像单个模块儿,需要预先编组,编组的方法如下:gen zon tunint p0 0 0 0 p1 010 0 p255 0 p3 0 05 p6 0105 dim sq2 sq21 sq2111 group(编组)z1(组名为:z1)&fill group tunnel4镜像整个模型的方法:首先判断即将镜像的模型在原模型的哪个方向(即三个轴的方向),然后在轴所在的方向上去两个点、其中一个是原点(origin(xyz))、5镜像部分模型的方法: gen zone reflect normal (x,y,z)origin (x,y,z)range group z1就可以了、6特别要注意的一点:交叉巷道的巷道充填和巷道的网格是两个组,所以在镜像的时候不要忘了给充填部分镜像、7 group radcyl range group cylint not (编组的时候不包括cylint)7 快捷键总结Ctrl+Z 局部缩放的功能。

Ctrl+R的功能是恢复到初始状态。

8模型建立的方法:方法1:利用默认值生成网格,各个默认值:(1)p0的默认值是(0,0,0),网格的每边的单元格数size默认值是10,网格每边的长度默认值为size的值、方法2:利用4个点的坐标来生成矩形网格、p0~p3 size方法3:利用edge来确定边长生成矩形网格、方法4:利用参数ratio来确定单元体几何边画边生成矩形网格、方法5:利用参数add(相对坐标)来生成矩形网格、方法6:利用八个点的左边来生成矩形网格、9、用户自定义模型的方法我来贡献一点自己的成果:; U" j/ ?7 L+ a0 uFLAC3D的二次开发环境提供了开放的用户接口,在软件安装文件中包含了软件自带所有本构模型的源代码,且给出了Mohr-Coulomb模型和应变软化模型的编译示例,因此可以方便地进行本构模型的修改与开发。

FLAC3D学习笔记

FLAC3D学习笔记
sel link id=100 2 targe zone ;在ID为2的节点上新建ID为100的链接
print sel link attach ;查看链接情况
interface 1 wrap Material Bin range plane ori 0 0 0 normal 1 -1 0 above
ini xdis ydis zdis 0 ;将位移重新设为0,不将平衡阶段发生的位移记录在内
pl block group ran pile ;调整scale和grid point ID's查看节点号或历史记录查看
hist unbal ;记录不平衡力,默认ID为1
hist id 2 gp zd 0 0 0 ;历史记录并在图上展示计算过程
cylinder end1 (0,1.8,0.1) end2 (0,1.8,-20.1) radius .29 not
;生成庄端接触面
interface 2 face range cylinder end1 (0,1.8,-19.9) end2 (0,1.8,-20.1) radius .31
gen zone copy 0 1.8 0 ran x 0.9 2.7 ;将单元复制到(0,1.8,0)以原点为基点
gen zone reflect normal 0 1 0 ori 0 1.8 0 ran y 1.8 2.7 ;normal为对称面法线(或倾向倾角dip,dd)ori 0 1.8 0面过这点
property K G friction cohesion tension dilation(摩尔-库伦模型有6个参数,不赋值的默认0)
modle elastic
property K G (弹性模型只有两个参数)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、建立模型笔记1键盘上的键的功能:X,Y,Z分别控制所建立的模型围绕X,Y,Z三个轴做逆时针旋转.如果打开大小写锁定键,分边按XYZ时建立的模型会做顺时针旋转.+号的功能是加大模型旋转的角度,-号的功能是减小模型旋转的角度。

2键盘上的上下左右四个键可以实现图形的向上向下,向左和向右的移动.3当在一个区域建立多个模型的时候,有时候为了镜像单个模块儿,需要预先编组,编组的方法如下:gen zon tunint p0 0 0 0 p1 0 10 0 p2 5 5 0 p3 0 0 -5 p4 5 10 0 &p5 5 5 -5 p6 0 10 -5 p7 5 10 -5 dim sq2 sq2 1 sq2 1 1 1 group(编组) z1(组名为:z1) &fill group tunnel4镜像整个模型的方法:首先判断即将镜像的模型在原模型的哪个方向(即三个轴的方向),然后在轴所在的方向上去两个点.其中一个是原点(origin(xyz)).5镜像部分模型的方法: gen zone reflect normal (x,y,z) origin (x,y,z) range group z1就可以了.6特别要注意的一点:交叉巷道的巷道充填和巷道的网格是两个组,所以在镜像的时候不要忘了给充填部分镜像.7 group radcyl range group cylint not(编组的时候不包括cylint)7 快捷键总结Ctrl+Z 局部缩放的功能。

Ctrl+R的功能是恢复到初始状态。

8模型建立的方法:方法1:利用默认值生成网格,各个默认值:(1)p0的默认值是(0,0,0),网格的每边的单元格数size默认值是10,网格每边的长度默认值为size的值.方法2:利用4个点的坐标来生成矩形网格.p0~p3 size方法3:利用edge来确定边长生成矩形网格.方法4:利用参数ratio来确定单元体几何边画边生成矩形网格.方法5:利用参数add(相对坐标)来生成矩形网格.方法6:利用八个点的左边来生成矩形网格.9、用户自定义模型的方法我来贡献一点自己的成果:FLAC3D的二次开发环境提供了开放的用户接口,在软件安装文件中包含了软件自带所有本构模型的源代码,且给出了Mohr-Coulomb模型和应变软化模型的编译示例,因此可以方便地进行本构模型的修改与开发。

为了方便起见,下面的说明以建立UserModel模型为例。

(1) 在模型头文件(usermodel.h)中进行新的本构模型派生类的声明,修改模型的ID(为避免与已有模型冲突,一般要求大于100)、名称和版本,修改派生类的私有成员,主要包括模型的基本参数及程序执行过程中主要的中间变量。

( ? p6 u' J5 Q3 y( a(2) 在程序C++文件(usermodel.cpp)中修改模型结构(UserModel::UserModel(bool bRegister): Constit -utive Model)的定义,这是一个空函数,主要功能是给(1)中定义的所有私有成员赋初值,一般均赋值为0.0。

(3) 修改const char **UserModel: roperties()函数,该函数包含了给定模型的参数名称字符串,在FLAC3D的计算命令中需要用到这些字符串进行模型参数赋值。

(4) const char **UserModel::States()函数是单元在计算过程中的状态指示器,可以按照需要进行修改指示器的内容。

(5) 按照派生类中定义的模型参数变量修改double UserModel::GetProperty()和void UserModel:: SetProperty()函数,这两个函数共同完成模型参数的赋值功能。

' U; e G' W" Q# R4 q/ @9 G" h(6) const char * UserModel::Initialize()函数在执行CYCLE命令或大应变模式下对于每个模型单元(zone)调用一次,主要执行参数和状态指示器的初始化,并对派生类声明中定义的私有变量进行赋值。

值得注意的是,Initialize()函数调用时没有定义应变分量,但可以调用应力分量,但不能对应力进行修改。

9 n# e8 |' c- B/ q, B B5 m(7) const char * UserModel::Run()是整个模型编制过程中最主要的函数,它对每一个字单元(sub-zone)在每次循环时均进行调用,由应变增量计算得到应力增量,从而获得新的应力。

在计算过程中,要根据单元应力情况对单元状态指示器进行赋值。

当进行塑性模型编制时,需对达到塑性的应力状态进行修正。

2 [/ ~. U( A"G. b3 @6 ]. `(8) 修改const char * UserModel::SaveRestore()中的变量,修改方法同(2)和(5),该函数的主要功能是对计算结果进行保存。

(9) 程序的调试有两种方法。

①在VC++的工程设置中将FLAC3D软件中的EXE文件路径加入到程序的调试范围中,并将FLAC3D自带的DLL文件加入到附加动态链接库(Additional DLLs)中,然后在Initialize()或Run()函数中设置断点,进行调试;②在程序文件中加入return()语句,这样可以将希望得到的变量值以错误提示的形式在FLAC3D窗口中得到。

10、网格剖面的画法方法:首先在命令行里输入edit11、想知道有多少单元体和节点?方法:用命令print info12、绘制塑形区域命令是什么?方法:Plot block state shear ;获得剪切屈服的单元,包括shear-n和shear-pPlot block state tension-p ;获得过去拉伸屈服的单元Plot block state now ;获得当前处于塑性状态的单元,包括shear-n 和tension-nPlot block state past ;获得过去处于塑性状态的单元,包括shear-p 和tension-p13、step后面的数字是怎么确定的?答:14、开挖模型的命令Model null range group 组名Model null range group x x1,x2画圈的正负号是啥意思?答:正号表示10的正的几次方.而负号表示负的几次方.11、关于ratioratio代表单元体尺寸变化率,关于只需要记住一点:不同模型的两个尺寸相等的面,采用相同的集合变化率,网格才会重合,ratio对于减少单元的数目有很好的效果。

12、地震波的模拟命令流set dyn onset dyn multi onset largefree x y z range z -35.1 -34.9 ;去掉模型底部原有的静力条件apply nquiet squiet dquiet ran z -35.1 -34.9 ;静态边界条件table 1 read crvel20.txtapply szz -1.524293e7 hist table 1 ran z -35.1 -34.9 ;加动力载荷apply syz -1.26984e7 hist table 1 ran z -35.1 -34.9apply ff;设置阻尼set dyn damp rayleigh 0.05 7.14set dyn time=0/thread-769057-1-1.html/thread-769129-1-4.html参考资料二、材料参数、边界条件,初始条件1要特别注意fix x y z range z <范围>与fix z range z <范围>之间的差别,前者是x、y、z三方向的位移全被限制,后者只限制了z方向的位移。

[fix x range (范围)命令的功能是保持网格节点在x轴方向制定的参数(速度、压力和温度)不变,range为指定的范围]Fix x y z range x -0.1 0.1 表示x=0是一个平面,且是固定的Fix x range x -0.1 0.1 表示x=0是一个平面,只是x的方向不能发生运动。

2、plot hist m vs n 其中m代表y轴,n代表x轴。

3、sxx sxy syy这都是指那个方向:SXX是x方向的正应力,SYY是y方向的正应力, SXY是指法向指向x轴方向平面(也就是yz面)上的y方向剪应力。

4、history命令Hist unbal 监测不平衡力,并保留记录Hist gp zdisp 4,4,8 监测网格坐标点(4,4,8)在z轴方向的记录,并保留记录.Plot his -2 -3 vs 1 其中的符号表示图形的方向及位置的不同,1代表hist代码中的第一条记录,2代表hist代码中的第二条记录,3代表hist代码中的第三条记录.一次类推.补充:在记录历史记录的时候可以自己定义记录的编号:如his id 12 gp zdisp 4,4,4绘制图形: 如plot his 125、在fish函数中如:(1)p_gp=gp_head (意思是指向节点表) 那么后面肯定有一个:p_gp=gp_next(p_gp) (意思是查找下一个节点的ID号)(2)pnt=zone_head ;zone_head指向单元体表pnt=z_next(pnt) ;查找下一个单元体表6、sel del link range id 23sel link id=23 23 target node tgt_num(代表目标节点的ID号)1,7、想知道一个节点的x y z 三个分量则用它:;已知IDdef getgpxyzgp1=find_gp(1)gp1x=gp_xpos(gp1)gp1y=gp_ypos(gp1)gp1z=gp_zpos(gp1)endgetgpxyzprint gp1x gp1y gp1z8、交集就是range group a group b指的是a和b的公共部分;并集就是range group a any group b any指的是a和b两个部分;Not指的是出了什么什么之外。

三、求解1、FLAC计算的过程中想终止pause,想要继续,continue2、收敛的准则:第一:相对收敛准则:一般而言,大多数问题可以采用FLAC3D默认的收敛标准(或称相对收敛标准),即当体系最大不平衡力与典型内力的比率R小于定值10-5(也可由用户自定义该值,命令:SET mech ratio <value>)时,计算即行终止。

相关文档
最新文档