FLAC3D命令流挺实用DOC.docx
- 文档编号:3517667
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:24
- 大小:203.70KB
FLAC3D命令流挺实用DOC.docx
《FLAC3D命令流挺实用DOC.docx》由会员分享,可在线阅读,更多相关《FLAC3D命令流挺实用DOC.docx(24页珍藏版)》请在冰豆网上搜索。
FLAC3D命令流挺实用DOC
1、怎样查看模型?
答:
plotgrid可以查看网格,plotgridnum可以查看节点号。
2、请问在圆柱体四周如何施加约束条件?
答:
可以用fix...rancylinderend1end2radiusr1cylinderend1end2radiusr2not,其中r2 命令流如下: fixxrangeend1100end2140rad1end1100end2140rad1 3、怎么能把一个PLOT的图像数据导出来以便用其他软件绘图? 答: 用setlogon命令,把数据导出来,转到excel里处理一下,然后用surfer或者什么作图软件绘制就行了。 4、用命令建立模型后,如何显示点的坐标? 答: 使用ploblogrogpnumon命令 5、关于gauss_dev对性质进行高斯正态分布的问题? 答: 根据手册上的说明: 下面的命令设定一个平均摩擦角为40度,标准方差是±5%。 则命令如下: propfriction40gauss_dev2 问题: 请问gauss_dev2中的2是如何计算的? 如果把±5%改为±10%,则命令应如何写? 40×5%=2 6、reflect问题 问: genzoneradbrick&p0(0,0,0)p1(10,0,0)p2(0,10,0)p3(0,0,10)&size3,5,5,7&ratio1,1,1,1.5&dim142fill plotsurf genzonereflectdip0dd90(对xy面做镜像) genzonereflectdip90dd90(对yz面做镜像) (1)dd表示y轴正向顺时针到那条射线的夹角,dip表示对称参照面与xy平面的夹角,对称参照面与xy平面的夹角在xy平面的投影是一条射线。 首先应该按照dd的方向大体确定这个面的朝向,dd指的是从y轴正方向按顺时针(clockwise)方向转向所要确定面的法线方向 在xy平面上的投影的夹角,然后再确定dip,dip指的是从xy平面转向所要确定的平面的角.(及z轴负方向转过角度) (2)命令: reflectnormalxyzoriginxyz(根据法线和过一点建的面)最常用,至于实际使用过程中有人问道: normal-100与normal100的区别,我试过两者的效果是一样的,没区别,虽然方向不同,但表达的是同一个面。 reflectddadipboriginxyz这个就是用里建立斜面镜像的。 有一点注意了,镜像的时候如果是模型镜像的话,相当于在建立一个模型,故,在reflect的前面要加建模的关键字,genzonereflect…… 7、关于两种fix是否有区别? fixzrangez-0.10.1 fixxrangex-0.10.1anyx1.92.1any fixyrangey-0.10.1anyy1.92.1any 和 fixzrangez-0.10.1 fixxrangex-0.10.1 fixxrange1.92.1 fixyrangey-0.10.1 fixyrangey1.92.1 答: 是一样的,any表示并列连接关系,及and的意思。 8、initialapplyset的区别 答: initial初始化命令,初始化计算应力状态,定义材料参数、重力等;apply边界条件限制命令,如施加边界的力、位移等约束等;set用于设置计算的模式,控制计算过程。 Ini施加的初始力在计算过程中是会变的,一般体力需要初始化,而apply施加的力、边界条件不会随着计算变化。 set命令作用于整个网格(赋值全局变量),ini则初始化指定范围内网格点、域的偏移量。 初始应力不仅仅是重力引起的。 9、Tension-pshear-ptension-nshear-n表示的含义 答: 在计算的循环里面,每个循环中,每个zone都依据failurecriterion处于不同的状态,shear和tension分别表示因受剪和受拉而处于塑性状态.n表示now,p表示previous,即分别表示在现在和以前的循环当中处于塑性状态。 10、history保存数据,print显示 在错误的命令流中“原点位移.dat”文件中只有: “Step1Y-Displace” 而没有保存下数值,怎么回事? 我怎么才能获得table中的数据? 输入'printtabeln'能得到table中的数据 (正确) histgpydisp0,0,0 histzonesyy0,1,0 histzonesyy1,1,0 step3000 histwrite1file原点位移.dat histwrite2file中部单元应力.dat histwrite3file边缘单元应力.dat histwrite1table1 histwrite2table2 histwrite3table3 histwrite23vs1file单压.dat (错误) histgpydisp0,0,0 histzonesyy0,1,0 histzonesyy1,1,0 histwrite1file原点位移.dat histwrite2file中部单元应力.dat histwrite3file边缘单元应力.dat histwrite1table1 histwrite2table2 histwrite3table3 histwrite23vs1file单压.dat step3000 11、plot显示x、y坐标图 histn1 histgpydisp0,0,0 histax_str histgpxdisp1,1,0 step1500 plothist2vs-1;axialstressvsaxialdisp. plothist3vs-1;circumferentialdisp.vsaxialdisp 答: 那2是不是代表histgpydisp0,0,0,而-1指得是histgpydisp0,0,0为什么不是1而是负值? 1)在plothistmvsn的形式里,m代表y轴,n代表x轴(不管m,n的正负); 2)"-"表示对其值作"mirror",如果大家使用AUTOCAD的话就明白"mirror"的含义了,比如上面的hist1gpydisp的值是0~100,那么vs-1就变成-100~0.以此类推. 3)要这么做主要是为了符合岩土工程的习惯需要,例如桩载荷试验曲线,沉降曲线等都不是画在第一象限内。 12、关于water.fis的命令注释(设置地下水位) 答: (1)water.fis的功能是设置地下水位面,在二维计算中,通过watertable命令即可设置水位线,在三维计算中由于地下水位是面,因此需要作一些插值运算,以便形成水位面。 这个FISH程序包含三个函数parm,aux1和aux2。 parm用来设定水位的边值,即设置水位的区域,aux1插值计算等值线的点,aux2调用aux1的计算结果,使用FLAC3D命令形成水位面。 (2)首先设置参数值,然后定义一个table. defparm nptab1=7 nprof=10 end parm table1(120)(18.2512.5)(2517)(3521)(5024)(7525)(15025) 产生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的作用是在table1的基础上产生出另外个table,table的ID从11到17,每个table有10个数据集。 alfa的计算方法是为适合(fit)曲面而采用的坐标点算法。 defaux1 loopn(1,nptab1) rr=xtable(1,n) zz=ytable(1,n) loopk(1,nprof) case_ofk 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) case1 xtable(n+10,k)=rr ytable(n+10,k)=-40.0 case2 xtable(n+10,k)=rr ytable(n+10,k)=0.0 end_case end_loop end_loop end aux1 当执行这个FISH函数后,生成(nptab1+10,nprof)组数据,这些数据为Aux2调用。 注意: 本段程序产生的数据是为那个特定的曲面边坡制作的,不是一个generalpurpose的LIB 5)FISH函数aux2的作用是使用WATERTABLEface命令产生水面,把table1的ytable值作为z坐标,aux1产生的数据作为x,y坐标。 defaux2 command setgrav00-10 waterdens1000 end_command loopn(1,nptab1-1) loopk(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 WATERTABLEfacexx1,yy1,zz1xx2,yy2,zz2xx3,yy3,zz3 WATERTABLEfacexx1,yy1,zz1xx3,yy3,zz3xx4,yy4,zz4 end_command end_loop end_loop end aux2 13、FLAC结果数据的导出 plsetbackwhite;设置背景 setplotbitmapsize(800,510);设置图片大小 plotsetcaptionsize37;设置图例数字大小(default=35范围10-50) mainwinsize11position00.8;commandwindow plotsetwindowsize0.80.8position0.10.0;graphicswindow plotsetcenter100040 根据情况更改 14、一段fish命令的解释 defaux1定义函数 loopn(1,nptab1)开始一个循环,从1循环到变量nptab1 rr=xtable(1,n)从table1的x列中读第n个数付给变量rr zz=ytable(1,n)从table1的y列中读第n个数付给变量zz loopk(1,nprof)开始第二个循环,从1循环到变量nprof case_ofk下面是一个选择结构,利用变量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) case1当k=1的时候执行下面语句 xtable(n+10,k)=rrtablen+10的x列第k个值等于变量rr ytable(n+10,k)=-40.0tablen+10的y列第k个值等于变量-40 case2当k=2的时候执行下面语句 xtable(n+10,k)=rrtablen+10的x列第k个值等于变量rr ytable(n+10,k)=0.0tablen+10的y列第k个值等于变量0 end_case结束选择结构 end_loop结束第二个循环 end_loop结束第一个循环 end函数定义结束 aux1执行什么定义的函数 15、有关命令的解释 (1)applynvel0.1planedip60dd270rangeleft_boun apply施加边界条件,plane法向速度为0.1,plane面的位置: 倾角60(在xoy平面从-Z轴方向逆时针旋转),dd走向270度,从+y方向绕z轴顺时针旋转; (2)iniszz-5e4grad00-1e4 ini初始边界条件,szz=-5e4+x*0+y*0+-z*-1e4,注: -5e4是range范围起点坐标的SZZ值,x,y,z所施加应力网格点的坐标。 16、渗流示例 ;------------------------------参数部分 bulkmodulus,K390MPa体积模量(土质比较硬) shearmodulus,G280MPa剪切模量 soildrydensity,ρd1200kg/m3土的密度 waterdensity,ρw1000kg/m3水的密度 walldensity,ρwal1500kg/m3档土墙的密度 permeability,k10−12m2/Pa-s渗透系数 porosity,n0.3孔隙率 fluidbulkmodulus,Kf2.0GPa流体的体积模量 ;-----------------------以下是命令流 ;------------------------------------------------------ ;Excavationinasaturatedsoil ;------------------------------------------------------ configfluid;设置流体算法 ;---geometricalmodel---建立模型 genzonebrickp11200p20120p30012size121212rat111 groupsoil;设置土组 groupexcavaterangex04y04z05;设置开挖范围组 groupwal1rangex45y05z07;设置档土墙1组 groupwal2rangex04y45z07;设置档土墙2组 groupwallrangegroupwal1anygroupwal2any;档土墙1和2合并为一个档土墙组 ;---fluidflowmodel---流体模型 modelfl_iso;各项同性流体 propperm1e-12poro0.3;设置渗透系数和? ? 比or? ? 率 inifdensity1e3;初始化水密度 inifmod2.0e9ftens-1e-3;初始化水的体积模量及? ? modelfl_nullrangegroupexcavate;开挖部分没有水流 modelfl_nullrangegroupwall;档土墙不渗水 inipp0grad001e4;初始化孔隙水压力 fixpprangez-0.10.1;约束应该是整个模型的底部吧? fixpprangex-0.14.1y-0.14.1z4.95.1;开挖部分也给约束住了,而其他的地方不管 ;---mechanicalmodel---力学模型 modelelas;弹塑性 propbul3.9e6shea2.8e6;设置体积模量和剪切模量,这两个必须,有一次我只设置了体积模量,就错的一塌糊涂 modelnullrangegroupexcavate;力学模型的开挖 inidensity1.2e3;初始化密度,应该是土的密度 inidensity1.5e3rangegroupwall;初始化墙(档土墙)的密度, fixxrangex-.1.1;施加约束,据说差分法约束0的时候,必须取一个-0.1<0<0.1,范围 fixxrangex11.912.1;施加约束,或者叫做边界条件 fixyrangey-.1.1;施加约束 fixyrangey11.912.1 fixzrangez11.912.1 ;initialtotalstresses出世总应力 iniszz0grad00-1.5e4;z方向的应力大一些 inisxx0grad00-1.2e4;水平方向的,小一些 inisyy0grad00-1.2e4; applynstress0grad00-1.2e4rangex0.04.0y3.94.1z0.05.0 applynstress0grad00-1.2e4rangex3.94.1y0.04.0z0.05.0 applynstress-7.5e4rangex0.04.0y0.04.0z4.95.1 ;---setting---设置 setgravity0010;设置重力加速度 ;---initialstate---;初始化状态 solveforce1;checkinitialequilibrium求解平衡 ;---histories---记录 sethist_rep40;记录步为40 histfltime;记录时间 histgppp006;记录某点的孔隙水压力 histgpxdis400;水平位移 histgpxdis402;记录水平位移 histgpxdis420 histgpzdis005;记录竖向位移 histgpzdis205 histgpzdis405 histgpzdis225 histgpzdis425 histgpzdis445 histgpzdis1001 histgpzdis1002 ; ;---excavation---开挖 setfluidoff;关闭水 ;applyporepressureatwalls在墙上施加孔隙水压力 applynstress0grad00-1.e4rangex0.04.0y3.94.1z0.05.0 applynstress0grad00-1.e4rangex3.94.1y0.04.0z0.05.0 applynstress-5.e4rangex0.04.0y0.04.0z4.95.1 solve;force1;求解 saveexc1.sav;保存 ; ;---drainage---排水 applyremovenstress;撤掉刚才的压力 defrelaxsetup;定义一个释放函数的参数 step0=step end relaxsetup;调用 defrelax;定义一个释放函数 rstep=step-step0 ifrstep relax=1.0-(float(rstep)/float(ncyc)) else relax=0.0 endif end;结束 setncyc=1000;先赋值,随后调用 applynstress0grad00-1.e4histrelax& rangex0.04.0y3.94.1z0.05.0 applynstress0grad00-1.e4histrelax& rangex3.94.1y0.04.0z0.05.0 applynstress-5.e4histrelax& rangex0.04.0y0.04.0z4.95.1 cycncyc solve;求解 saveexc2.sav;保存 ; ;---percolation---渗透 setfluidon;设置水算法 fixpp0rangex-0.14.1y-0.14.1z4.95.1;施加孔隙水压力 cyc9000;循环 saveexc3.sav;保存 plotcreateexcav;建立一个显示的视图一下内容都是显示内容 plotsetrot2000195 plotsetcent666 plotsetdist39.18 plotsetma
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FLAC3D 命令 实用 DOC
![提示](https://static.bdocx.com/images/bang_tan.gif)