一个FLAC的PPT本构模型
土木工程数值模拟(FLAC3D)课件第1章
对于对称的模型也可以采用镜像命令:
gen zone reflect norm -1 0 0 origin 0,0,0
网格单元间的连接
采用FLAC3D进行计算,所建立的模型需是一个 连续的整体,否则计算结果将出现较大的误差甚至 无法进行计算。对于在建立模型时,各关键点的坐 标是准确无误输入且各公共面的网格数和大小均完 全一致的模型,无需进行任何操作,模型即自动完 成相互间的连接。
对所有单元
应力—应变关系 (本构模型)
2020/7/10
节点力 单元积分 新的应力
10
简单实例
gen zone brick size 6 8 8 model mohr prop bulk 1e8 shear 0.3e8 prop fric 35 coh 1e3 tens 1e3 set grav 0,0,-9.81 ini dens 2000 fix x range x -0.1 0.1 fix x range x 5.9 6.1 fix y range y -0.1 0.1 fix y range y 7.9 8.1 fix z range z -0.1 0.1 hist unbal hist gp zdisp 4,4,8 solve save t1.sav rest t1.sav model null range x 2,4 y 2,6 z 5,10 set large initial xdis 0.0 ydis 0.0 zdis 0.0 step 1000 save t2.sav
这是通过radtun和 radcyl来组合生成所 需要的模型。它们两者的生成关键点的 描述存在较大的区别。
对于这两种基本的 网格,其公共面上的 关键点的对应关系更 需校核好,否则将出 现杂乱错误的网格。
土木工程数值模拟(FLAC3D)课件第2-7章
第二章 网格划分
第二章 网格划分
Generate <关键字> zone 产生三维空间的单元体 surface 产生三维空间的面 point 在三维空间定义参考点以帮助单元体和面的生成 merge 使Gen zone产生的相邻网格合并连接在一起
2020/7/10
土木工程数值模拟(FLAC)
主要语句
条件语句 IF 条件表达式 [THEN] … [ELSE] … ENDIF
FISH中条件运算符没有“并”、“或”、“否”这样的符号
表达“1<aa<2”的条 件
if aa > 1.0 if aa < 2.0
执行语句
endif endif
主要语句
循环语句 LOOP var (exp1, exp2)
内部矩形巷道贴满单元体单元格 数6、12、8,体外环绕放射状网 格单元7
上机内容:直墙半圆拱
2020/7/10
土木工程数值模拟(FLAC)
10
第二章 网格划分
建立任何网格都要从两个方面考虑:一是重要区域精确解 所需要的单元体密度;二是网格边界定位对结果的影响。应 力、应变变化大的区域往往单元体密度大。
内部矩形巷道边长分别是3m 6m 4m, 单元格数size也是3、6、4
2020/7/10
土木工程数值模拟(FLAC)
9
第二章 网格划分
利用参数fill来生成需填充的网格
gen zone radbrick p0=(24,-20,0) & p1=(34,-20,0) & p2=(24,-10,0) & p3=(24,-20,10) & dimension 3 6 4 & size 6 12 8 7 & fill group inner
1.FLAC基本简介与本构关系
第一讲FLAC技术的基本原理和应用范围1、FLAC基本简介与本构关系1.1 FLAC程序简介FLAC(Fast Lagrangian Analysis of Continua,连续介质快速拉格朗日分析)是由Cundall和美国ITASCA公司开发出的有限差分数值计算程序,主要适用地质和岩土工程的力学分析。
该程序自1986年问世后,经不断改版,已经日趋完善。
前国际岩石力学学会主席C. Fairhurst 评价它:“现在它是国际上广泛应用的可靠程序”(1994)。
根据计算对象的形状用单元和区域构成相应的网格。
每个单元在外载和边界约束条件下,按照约定的线性或非线性应力—应变关系产生力学响应,特别适合分析材料达到屈服极限后产生的塑性流动。
由于FLAC程序主要是为岩土工程应用而开发的岩石力学计算程序,程序中包括了反映岩土材料力学效应的特殊计算功能,可解算岩土类材料的高度非线性(包括应变硬化/软化)、不可逆剪切破坏和压密、粘弹(蠕变)、孔隙介质的固—流耦合、热—力耦合以及动力学行为等,另外,程序设有界面单元,可以模拟断层、节理和摩擦边界的滑动、张开和闭合行为。
支护结构,如砌衬、锚杆、可缩性支架或板壳等与围岩的相互作用也可以在FLAC中进行模拟。
此外,程序允许输入多种材料类型,亦可在计算过程中改变某个局部的材料参数,增强了程序使用的灵活性,极大地方便了在计算上的处理。
同时,用户可根据需要在FLAC中创建自己的本构模型,进行各种特殊修正和补充。
FLAC程序建立在拉格朗日算法基础上,特别适合模拟大变形和扭曲。
FLAC采用显式算法来获得模型全部运动方程(包括内变量)的时间步长解,从而可以追踪材料的渐进破坏和垮落,这对研究工程地质问题非常重要。
FLAC程序具有强大的后处理功能,用户可以直接在屏幕上绘制或以文件形式创建和输出打印多种形式的图形。
使用者还可根据需要,将若干个变量合并在同一副图形中进行研究分析。
1.2 本构模型FLAC程序中提供了由空模型、弹性模型和塑性模型组成的十种基本的本构关系模型,所有模型都能通过相同的迭代数值计算格式得到解决:给定前一步的应力条件和当前步的整体应变增量,能够计算出对应的应变增量和新的应力条件。
FLAC、FLAC3D-英文讲义01-PPT演示幻灯片
01:00 - 02:00
02:00 - 03:00 03:00 – 03:15 03:15 - 04:15 04:15 – 05:00
Training Schedule
October 27, 2008 (afternoon)
Overview of FLAC/FLAC3D features and capabilities – Overview of capabilities in geo-engineering – Theoretical basis – General operation procedures Grid generation for FLAC models – New virtual-grid generation tools – Automatic re-meshing capability during cycling Break Structural element topics – Connecting structural elements to represent multiple support – Simulating pre-tensioning Stress initialization techniques – Techniques for initializing stress in non-uniform grids
phreatic surface calculation; two-phase flow. 6. Structural element models for soil-structure interaction – cables, piles,
beams, liners, shotcrete, soil reinforcement, etc. 7. Dynamic analysis capability; full groundwater coupling. 8. Creep analysis, with viscoelastic and viscoplastic models. 9. Thermal analysis, with coupling to solid & fluid.
FLAC,FLAC3D基础与应用
图形窗口
图形菜单 图形控制 命令窗口
24
环境设置
设置工作内容
25
环境设置
主要设置编辑文字 大小
26
软件介绍
● Fast Lagrangian Analysis of Continua ● 美国Itasca咨询公司开发2D程序(1986) ● 1990年代初引入中国 ● 有限差分法(FDM) ● 3D版本:DOS版→2.0 →2.1 →3.0 →3.14.05.0
边界flac3d的求解过程47平衡方程动量方程应力应变关系本构模型gauss定律单元积分应变率速度节点力新的应力对所有的网格节点对所有单元flac3d中的本构模型开挖模型null3个弹性模型各向同性弹性横观各向同性弹性正交各向同性弹性8个弹塑性模型druckerprager模型morhcoulomb模型应变硬化软化模型遍布节理模型双线性应变硬化软化遍布节理模型修正剑桥模型和胡克布朗模型48flac3d中的本构模型49岩石各向同性的岩石材料胡克布朗模型粘土变形和抗剪强度是体变的函数修正剑桥模型轻胶结的粒状材料在压力作用下导致永久体积减小轻胶结的粒状材料在压力作用下导致永久体积减小双屈服面塑性模型层状材料破坏后研究具有非线性材料硬化或软化的层状材料双线性应变硬化软化遍布解理模型软化遍布解理模型松散沉积地层中的开挖具有强度各向异性的层状材料即板岩遍布解理模型破坏后研究失稳过程立柱屈服顶板崩落失稳过程立柱屈服顶板崩落存在非线性硬化
资料来源:武汉ITASCA咨询公司
9
FLAC能做什么?
● 地质工程
○ 构造运动过程、断裂过程、水文地质等;
● 地震工程
○ 板块运动、地震与振动工程等;
● 建筑/结构工程:
○ 建筑结构动力稳定、建筑材料力学特征研究(如混凝土变形、 强度特征)。
flacd结构单元教程ppt文档
• 土工格栅(geogrid)
通过连接实现岩土体或结构与其它结构发生
• 衬砌单元(liner)
相互作用。
➢ 注意:结构节点并不是简单地与实体网格的
节点(gridpoint)建立联系,也不能建立node
与gridpoint之间的link
2、结构单元的建模方法
➢ 梁单元
sel beam id 1 beg 4 0 -1 end 5 0 -2 nseg 4
sel beam id=1 begin=( 6, 0, 0) end=( 9, 0, 0) nseg=3
; ======================================================
; Assign beam properties
sel beam id=1 prop emod=2e11 nu=0.30 &
2、结构单元的建模方法—线型结构单元
先建立节点再联接成单元的方法;
2、结构单元的建模方法—壳型结构单元
➢ 壳单元
2、结构单元的建模方法—壳型结构单元
def set_vals global ptA = 25.0 * sin( 40.0*degrad ) ; global ptB = 25.0 * cos( 40.0*degrad ) end @set_vals generate zone cylinder p0=( 0.0, 0.0, 0.0 ) &
; Print out beam responses.
list sel beam force
list sel beam moment
list sel node disp range id=7
return
第一讲 FLAC简介2
• Region i j 为标记结点所围住的 区域将被初始化。i,j 为标记区域 中的任一个单元 • Var xv, yv 在一定范围内的参数的 变差值, xv和yv为x-方向和y-方向 的变差值。 • 范 围 可 以 有 形 式 I=i1, j1 J=j1, j2, 其中 i 和 j 的先后次序无关。
• Friction • SHear •X •Y • PP • JFric • JCoh • JAngle
摩擦系数 剪切模量 X-坐标 Y-坐标 孔隙压力 节理摩擦力 节理粘结力 节理角度
• NUYx • NUZx • SIG1 • SIG2 • SXX • SYY • SXY • Theta 夹角
• Disp 位移矢量 • E_p 塑性应变的轮廓线 (只限于 应变软化材料) • Grid 画出 • 画出纪录在第 nhis 个历史上的变 量值 • PP 孔隙压力的等值线 • RF 以矢量形式画出的固定结点的 反力 • STAte 画出单元中心当前的屈服 状态
• STress • SXX • SYY • SXY • Velocity • WAter • XDisp • YDisp
• 彻体节理 • • • • • • 理角 •
(1) (2) (3) (4) (5) (6) (7)
剪切模量 体积模量 密度 粘结力 (整体材料) 摩擦力 (整体材料) 节理粘结力 节理摩擦力 (8) 节
(9) 整体材料的剪胀角
• 应变-硬化/软化 • (1)剪切模量 (2)体积模量 (3) 密度 • (4) 初始摩擦角 (5) 初始粘结力 • (6) 摩擦角和塑性应变的关系表的表号 • (7) 粘结力和塑性应变的关系表的表号 • (8) 剪胀角和塑性应变的关系表的表号 • 如果表号给 0, 则取关键词 COHESION, DILATION 或 FRICTION 所给出的值。
FLAC原理、实例与应用指南第四讲(简)概要
在天然及人工边坡上造成危害,有时 对坝基、坝肩及浅埋隧洞等工程亦有 影响,但一般在施工中予以清基处 理
结构面类型(按力学成因分类)
1、张性结构面是由拉应力形成的,如羽毛状 张裂面、纵张及横张破裂面、岩浆岩中的 冷凝节理等
特点:张开度大、连续性差、形态不规则 、面粗糙,起伏度大及破碎带较宽,易被充 填,常含水丰富,导水性强
一般与岩层产状 一致,为层间结 构面
海相岩层中此类结构面分 布稳定,陆相岩层中呈交 错状,易尖灭
层面、软弱夹层等结构面较为平整;不 整合面及沉积间断面多由碎屑泥质物构 成,且不平整
国内外较大的坝基滑动及滑坡很多由此类结构 面所造成的,如奥斯汀、圣·弗朗西斯、马尔 帕塞坝的破坏,瓦依昂水库附近的巨大滑坡
结构面连续性分级表描述中等连续性310高连续性1020很高连续性20结构面间距分级表描述间距mm极密集的间距20很密集的间距2060密集的间距60200中等的间距200600宽的间距6002000很宽的间距20006000极宽的间距6000常见岩石的变形模量和泊松比岩石名变形模量10mpa泊松比岩石名称变形模量10mpa泊松比初始弹性初始弹性花岗岩5100203片麻岩11002203551001025千枚岩7107150103板岩0203安山岩5105120203页岩1350204辉长岩71171501202砂岩0581100203辉绿岩8118150103砾岩0580203玄武岩6106120103551002035石英岩62062001025白云岩02035大理岩02035常见岩石的抗压强度岩石名称抗压强度mpa岩石名称抗压强度mpa岩石名称抗压强度mpa辉长岩180300辉绿岩200350页岩10100花岗岩100250玄武岩150300砂岩20200180300石英岩150350砾岩10150100250大理岩100250板岩60200安山岩100250片麻岩50200千枚岩片10100白云岩8025020200常见岩石的抗拉强度常见岩石的抗拉强度岩石名称抗拉强度mpa岩石名称抗拉强度mpa岩石名称抗拉强度mpa辉长岩1536花岗岩725页岩210辉绿岩15351530砂岩425玄武岩10301025砾岩215石英岩1030安山岩1020520大理岩720片麻岩520千枚岩片110白云岩1525板岩715几种岩体用不同试验方法测定的弹性模量?岩体的变形模量比岩块的小而且受结构面发育程度及风化程度等因素影响十分明显
第二讲_FLAC实例
Gr
900,900 M m Pr mem
单 位
正负号方向
•(1)应力-正号代表张力,负号代表压力 •(2)剪应力详见下图,图中所示剪应力为正号
•(3)应变-正应变表示伸长,负应变代表压缩 •(4)剪应变-剪应变的正负号与剪应力相同 •(5)孔隙压力-孔隙压力永远为正 •(6)重力-正号的重力物质往下拉,负号的重 力将物质 往上提。
标示距离及深度资料。 步骤2:换算输入资料成同一单位 将现有地层资料,如 Density,Bulk modulus,Young`s modulus, tension,cohesion, friction Angle 等资料,换算成同一单位。 附注 :需谨慎检查输入资料之单位,如因 单位 不同而造成过大或过小的值,将会造 成 FLAC无法计算,而产生ERROR讯息。
例 一
;call
ex1.txt grid 6,5 m m plot grid number plot grid gnum
;call
ex2.txt ;Function to calculate K and G from E and nu. ;Remember to set e_mod and p_ratio !!!
例
例3
;Modeling
题
of an
collapse unsupported trench ; create model new grid 5,5
;
assign material model and properties model mohr prop bulk=1e8 shear=.3e8 fric=35 prop dens=1000 coh=1e10 ten=1e10 ; print and plot grid print x y
FLAC、FLAC3D-英文讲义01-PPT
4. Generic grid generation tool to facilitate grid creation
New Features in FLAC3D Version 3.1
*partial list of models created by (or developed for) code users
01:00 - 02:00
02:00 - 03:00 03:00 – 03:15 03:15 - 04:15 04:15 – 05:00
Training Schedule
October 27, 2008 (afternoon)
Overview of FLAC/FLAC3D features and capabilities – Overview of capabilities in geo-engineering – Theoretical basis – General operation procedures Grid generation for FLAC models – New virtual-grid generation tools – Automatic re-meshing capability during cycling Break Structural element topics – Connecting structural elements to represent multiple support – Simulating pre-tensioning Stress initialization techniques – Techniques for initializing stress in non-uniform grids
一个FLAC的PPT__本构模型
其中:
d d 偏应力张量 和偏应变张量 的本构 关 式中:
总应力:
球应力张量 关系
iso
和球应变张量 kk 的本构
Model visc(H-N)
三. 源程序分解
const char *UserViscousModel::Initialize(unsigned,State *) { G 求解系数:dGD2V= ; dG2 = 2.0 * dShear; 2 if (dViscosity <= 0.0) dGD2V = 0.0; 1. 如果粘滞系数 <=0, dGD2V=0; else dGD2V = 0.5 * dShear / dViscosity; 2. 否则dGD2V为真值。 return(0); } const char *UserViscousModel::Run(unsigned uDim,State *ps) { if ((uDim!=3)&&(uDim!=2)) return("Illegal dimension in UserViscousModel"); double dD = dGD2V * (ps->bCreep ? ps->dTimeStep : 0.0); if (dD > 0.5) return("Timestep too large for UserViscousModel"); 求解系数:dD= 1. 如果蠕变指标为真,则 返回真值; 2. 否则dD=0。
常用模型信息传递指针变量
返回目录模型源程序分解来自返回目录静力本构
(Mohr-Coulomb)
MC本构
① ②
①-剪切屈服 ②-拉伸屈服
1. 屈服函数
FLAC3D岩土软件-本构模型
ini pp 1e5
第二十九页,共48页。
3 材料参数的附加关键字
有三个附加关键字来修订材料参数赋值,必须紧跟在参数值后
第三十页,共48页。
4 材料变形参数
第三十一页,共48页。
第三十二页,共48页。
5 材料的强度参数 内聚力、摩擦角和抗拉强度
第三十三页,共48页。
第三十四页,共48页。
德鲁克一普拉格模型的强度参数。l以通过内聚力和内摩擦角得到,例如,假设德鲁克一普拉格
第五页,共48页。
德鲁克-布拉格 带有非相关流动法则的弹性/塑性 模型:剪切屈服应力是平均应力的函数
t A
kf
B
ft=0
C
s
st
kf /qf
德鲁克-布拉格 破坏准则
第六页,共48页。
摩尔-库仑 带有非相关流动法则的弹性/塑性模型: 根据最
大及最小主应力进行判断
s3
ft=0
B
C
c
2c
st tan f
plot hist -2 vs 1 ;axial stress vs axial disp.
endif
pnt = gp_next(pnt) endloop
step 5000
save beforeplzones.sav
ax_str = str / pi ; cylinder radius = 1
end
else
z_group(zp) = 'other' endif
zp = z_next(zp)
endLoop end ShowPlasticZones
plo crea qqq plo add surf red ge group yield plo add axes green plo set rot 123 313 3 plo set mag 1.5
FLAC 3D快速入门(手册翻译版——一米)
快速入门(GETTING STARTED)版本:flac3d 3.0版(FTD127)翻译:一米2009.06声明现在市面上关于FLAC3D软件的教材寥寥无几,在学习的过程中,主要还是参考软件本身的使用手册,虽然读英文版手册有些吃力,但是它论述非常详细,我觉得是用户最好的教材。
我在边看手册的时候边做了翻译,目前为止翻译完成了本部分的内容(略去了部分内容和例子),还翻译了命令手册的前半部分内容,等翻译完成了,也会和网友共享,但是像本人这类英语水平一般的人做这样的翻译工作是比较辛苦的,我也不确定是否有毅力完成命令手册下半部分的内容。
虽然这样的工作比较艰难,但我觉得还是学到了不少东西,手册是最原始,最翔实的基础教材,看明白了手册,运用软件才会游刃有余。
由于本人专业水平和英语能力的限制,存在问题是在所难免的,有的地方甚至可能曲解了原意。
考虑到时间因素,译文的措辞没有细细斟酌,还请网友谅解。
如果发现译文中的错误,还请广大读者斧正。
一米2 快速入门这一部分将向初次使用flac3d 的用户介绍软件的基本使用方法。
主要有以下内容:软件的安装与启动;用软件分析解决问题的步骤,在每一步的操作中,都有简单例题来说明该步骤具体是如何操作的。
如果你对软件比较熟悉,但是现在很少用它来处理问题,那么这部分的内容(尤其2.7 节)能很好的帮你回顾软件操作的要点。
本部分3.3 节全面详细的介绍了如何进行问题的求解。
Flac3d 支持命令驱动和图形菜单驱动两种模式*。
在本手册中大部分的算例都采用了命令驱动模式。
我们认为这种模式能给用户提供操作软件最清晰的思路。
在1.1 节中我们就已经提到了命令驱动模式使得flac3d 在分析求解工程问题时成为了一个功能强大的“多面手”。
然而这种模式让新用户,或者长时间未接触软件的老用户用起来有点不那么容易。
命令行必须用键盘输入,可以直接输入到软件的命令窗口,或者先保存为数据文件,再通过软件的相关命令进行读取。
FLAC-FLAC3D基础与应用(结构单元)PPT课件
1
FLAC3D中的结构单元
• 有限单元 • 梁(beam)单元
beam
cable
• 锚索(cable)单元
• 桩(pile)单元
○ 锚杆: rockbolt
• 壳(shell)单元
shell geogrid
• 格栅(geogrid)单元
○ 土工织物;土工格栅
pile
liner
2
结构单元的应用
• Link可以与任何位置的
grid进行联系,而不一定
要与grid的坐标一致。 群桩 = 插秧
7
默认的连接属性
建模SEL结构模型时,程序自动建立结构 node与zone的连接 (node-zone links)
8
Node-Node Links
• SEL nodes 之间不会自动生成联系. • 必须手动设置node之间的联系 (e.g., beam and cable) 这
13
隧道与土体的相互作用
• 半圆隧道直径3.25m
• 上覆土层厚度5m
ht • 计算范围3r
r
• 土体弹性计算
○ (K=30MPa, G=10MPa)
hb
• 参数化编程
○ 几何尺寸
B
○ 模型参数
○ 网格形状
14
计算步骤
模型网格 计算结果
初始应力生成 施加管片
15
管片的连接
• 冷连接
○ 弯矩和剪力不能直接在环与环 间传递,只能通过其相邻的介 质传递
• 土与结构的相互作用
○ 桩基;基坑;边坡锚固 ○ 地下硐室的支撑结构;采矿;盾构 ○ 土工织物;土工合成材料
• 结构不宜复杂
○ 岩土工程软件,不宜单纯的结构分析
flac学习吐血经验
gen zone b size 40 10 25 p0 0 0 78.85 p1 400 0 78.85 p2 0 200 78.85 p3 0 0 132.6 group
泥岩4.
gen zone b size 40 10 4 p0 0 0 132.6 p1 400 0 132.6 p2 0 200 132.6 p3 0 0 136.79 group
prop d 2400e-6 bu 1250 sh 577 i=1,20 j=11,20
mod m(弹塑性Mohr-Coulumb准则)
prop d 1800e-6 bu 12.5 sh 5.77 c 0 fri 20 ten 0.015 reg i,j
1.7赋给模型边界条件
(1)固定边界(结点)Fix x i=1, j=1,21 Fix y i=1,21 j=1
(2)施加边界力(结点) apply yf -10 i=1,21 j=21
或apply syy -10 i=1,21 j=21
或apply xf -5 i=21, j=1,21
或apply sxx -5 i=21, j=1,21
(3)赋单元内应力(单元)
ini sxx -10 i=1,20 j=1,20
天然焦
gen zone b size 40 10 2 p0 0 0 72.35 p1 400 0 72.35 p2 0 200 72.35 p3 0 0 75.15 group
岩浆岩
gen zone b size 40 10 2 p0 0 0 75.15 p1 400 0 75.15 p2 0 200 75.15 p3 0 0 78.85 group
plot
Show
add surface color
最新FLAC3D5.00培训教程教学讲义ppt课件
1.2.6 control panel
1.2.6 control panel
1.2.6 control panel
1.2.6 control panel
1.2.6 control panel
1.2.6 control panel
1.2.6 control panel
1.2.7 state record
长 的 时 间 隧 道,袅
FLAC3D5.00培训教程
FLAC3D 5.00 界面
1、界面概况
1、界面概况
布局
1.1.1 the title bars
每个面板显示的时候都会有相应的 标题栏显示
1.1.1 the title bars
关闭
隐藏
最大最 小
1.1.1 the title bars----“*” 号
1.1.2 the toolbar;
程序运行或停止——三种状态下工具条的显示 工具条会随着面板的切换而改变!工具条可以随意移动!
1.1.3 the menus
1.1.3 the menus
Options Dialog:
◦ General: Destroy Button, System Title Colors ◦ Editor: Font, Colors, Highlighting, New File Header ◦ Display: local and global defaults. ◦ Movie: central control. ◦ Console: Dialogs, fonts.
1.2.2 console—快捷键
重新加载上一条或下一条命令!!!
1.2.3 listing
1.2.3 listing
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
初始化各式 中的常数
const char *UserMohrModel::Run(unsigned uDim,State *ps){ if ((uDim!=3)&&(uDim!=2)) return("Illegal dimension in Mohr constitutive model"); if(ps->dHystDampMult > 0.0) HDampInit(ps->dHystDampMult); /* --- plasticity indicator: */ /* store 'now' info. as 'past' and turn 'now' info off ---*/ if (ps->mState & mShearNow) ps->mState = (unsigned long)(ps->mState | mShearPast); ps->mState = (unsigned long)(ps->mState & ~mShearNow); if (ps->mState & mTensionNow) ps->mState = (unsigned long)(ps->mState | mTensionPast); ps->mState = (unsigned long)(ps->mState & ~mTensionNow);
返回目录
double UserModel::GetProperty()和void UserModel:: SetProperty()函数 const char * UserModel::Initialize()函数 参数和状态指示器的初始化,并对派生类声明中定义的 私有变量进行赋值 const char * UserModel::Run(unsigned nDin,States *ps) 函数 由应变增量计算得到应力增量,从而获得新的应力 const char * UserModel::SaveRestore()函数 对计算结果进行保存。 程序的调试 在VC++的工程设置中将FLAC3D软件中的EXE文件路径加 入到程序的调试范围中,并将FLAC3D自带的DLL文件加 入到附加动态链接库(Additional DLLs)中,然后在 Initialize()或Run()函数中设置断点,进行调试; 在程序文件中加入return()语句,这样可以将希望得 到的变量值以错误提示的形式在FLAC3D窗口中得到。
返回目录
自定义本构模型的基本方法
头文件(usermodel.h)中进行新的本构模型派生类的声明 修改模型的ID(>100)、名称和版本 修改派生类的私有成员:私有变量和成员函数 C++文件(usermodel.cpp)中修改模型结构 (UserModel::UserModel(bool bRegister): ConstitutiveModel) const char **UserModel::Properties()函数 模型的参数名称字符串:用于在模型中显示 const char **UserModel::States()函数 计算过程中的状态指示器:单元屈服状态
常用模型信息传递指针变量
返回目录
模型源程序分解
返回目录
静力本构
(Mohr-Coulomb)
MC本构
① ②
①ቤተ መጻሕፍቲ ባይዱ剪切屈服 ②-拉伸屈服
1. 屈服函数
剪切屈服
2. 塑性势函数
非关联
拉屈服
关联
剪切屈服修正
写成线性函数S:
拉伸屈服修正
写成线性函数S:
const char *UserMohrModel::Initialize(unsigned uDim,State *) { if ((uDim!=2)&&(uDim!=3)) return("Illegal dimension in UserMohr constitutive model"); dE1 = dBulk + d4d3 * dShear; dE2 = dBulk - d2d3 * dShear; dG2 = 2.0 * dShear; double dRsin = sin(dFriction * dDegRad); dNPH = (1.0 + dRsin) / (1.0 - dRsin); dCSN = 2.0 * dCohesion * sqrt(dNPH); if (dFriction) { double dApex = dCohesion * cos(dFriction * dDegRad) / dRsin; dTension = dTension < dApex ? dTension : dApex; } dRsin = sin(dDilation * dDegRad); dRnps = (1.0 + dRsin) / (1.0 - dRsin); double dRa = dE1 - dRnps * dE2; double dRb = dE2 - dRnps * dE1; double dRd = dRa - dRb * dNPH; dSC1 = dRa / dRd; dSC3 = dRb / dRd; dSC2 = dE2 * (1.0 - dRnps) / dRd; dBISC = sqrt(1.0 + dNPH * dNPH) + dNPH; dE21 = dE2 / dE1; return(0); }
内
容
必要性
试验总结的本构模型 特定条件下的本构模型 交叉学科的本构模型
二次开发环境
自定义本构模型的功能 自定义本构模型的基本方法 常用模型信息传递指针变量 模型源程序分解
二次开发环境
FLAC3D采用面向对象的语言标准C++编写
本构模型都是以动态连接库文件(.DLL文件)的形式提供 VC++6.0(SP4)或更高版本的开发环境 优点
自定义的本构模型和软件自带的本构模型的执行效率
处在同一个水平
自定义本构模型(.DLL文件)适用于高版本的FLAC(2D)、
3DEC、UDEC等其他Itasca软件中
返回目录
自定义本构模型的功能
主要功能:对给出的应变增量得到新的应力 辅助功能: 模型名称、版本 读写操作 模型文件的编写 基类(class Constitutive Model)的描述 成员函数的描述 模型的注册 模型与FLAC3D之间的信息交换 模型状态指示器的描述