2024年1月30日发(作者:)

5.3混凝土时间效应数值计算模型的开发

5.3.1啧射混凝土及模筑混凝土时间效应参数计算

具体计算方法见第四章,计算结果如下:

1、喷射混瀕土弹性模量表达式,

E(r) - 25«卩7.465已昭》0・532呷

2、 喷射混厳土徐变系数表达式,

於》0.8卜佥品才]+ 0.172卩_严5卜。」2[—8-]

0.832€“叫7 +1.482^_00007*3)卩-/如郭切卜0.108

3、 模筑混榮土弹性模量变化取用CEB・FIP MC1990模式规范$

E(T)■ Ec(2&)y/pt

其中:庆“0观-顾)

4、模筑浪凝土徐变系数表达式:

3). 0.8

卜】.二(4.2息7 +0"2

阡严V 乜

1

+

0・4730叫7 [1弋皿杯冷十卩弋心00545^)] +0.1^

5.3.2 FLAC3D软件基于OH■的用户自定义模型UDM简介

FLAC3D软件2.1以后的版本是采用面向对象的语言标准C卄编写.其 本构模型都是以动态连接库文件(DLL文件)的形式提供,且都提供了用户自 定义模型UDM的接口,用户可以在VC++6.0(SP4)或更高版本的开发环境中 编写自己的模型.模型的主要功能是对给出的应变増量得到新的应力.

UDM文件中主要包括了基类、成员函数等开发环境,用户可以根据需 要对相应部分做出修改,生成自己需要的模型,并将其编译成DLL文件(动 态连接库文件),它可以在任何•需要的时候载入° 模型文件的编写主真编写步骤:

1、在头文件(iwermodeLb)中进行新的本构模型派生类的声明 修改模型的型数(必须大于100)、名称和版本以及派生类的私有成员。

2、 在C++文件(usermodclxpp)中修改模型结构

a) cosist char **UserModcl::Propertics0函数

修改模型的参数名称字符串;

b) const char ••UserModelriStates0函数

修改计算过程中的状态指示器;

cjdovble VscrModel::GetPropcrtyO和 void UscrModcl;; SetPropcrty()g 数 对參数的读取及相关计算;

d)coiist char * UserModeh:lnitializeO函数 进行參数和状态指示器的初始化,并对派生类声明中定义的私有变量进行赋 值;

c) con$t char • UserModd;:RunO 函数

由应变增灵计算得到应力增量,从而获得新的应力,主要对自定义本构模型的 本构关系,以及屈服判断等进行设置修改;

f)const cbar • UserModel::SaveRestore0函数

对计算结果进行保存.

3、 程序的调试

在VC++的H程设置中将FLAC3D软件中的EXE文件路径加入到程序的 调试范围中,井将FLAC3D自带的DLL文件加入到附加劫态链接库 (Additional

DLLs)中,然后在Initialize或Run()函数中设置断点,进行调试; 在程序文件中加入retumO语句,这样可以将希望得到的变量值以错误提示的 形式在FLAC3D窗口中得到。

5. 3. 3混凝土计算模型的开发

本章按照上述步骤,编写了 useraddelas.h及文件,根据 时步在每次计算过程中求解等效弹性模量。将上述文件加入到UDM文件, 并对其进行编译,生成了 文件,并和FLAC3D软件DLL文件 放入同一文件夹中即可使用。

5. 3.4自定义模型文件的载入和运行

用户定义的模型加载到FLAC3D之前,首先必须用config cppudm命令设 置以接受DLL.然后,当模型的DLL文件通过给岀的命令model load useraddelas运行时

被载入。此后,FLAC3D及FISH语言将能够识别模型名 及其特性名。至此,用户自定义的模型useraddelas就可以想FLAC3D内嵌模 型一样被调用,进行数值模拟计算。

5. 4数值模拟模型的建立

5. 4.1数值计算模型的选择

因本章计算需考虑喷射混凝土的时间效应,因此对围岩选择流变模型,

FLAC3D软件可以用来模拟呈现流变性质的材料特性一即时间相关的材料特 性。FLAC3D软件中有如下流变模型卩叭