首页 理论教育FLAC3D本构模型二次开发:文件修改与调试

FLAC3D本构模型二次开发:文件修改与调试

【摘要】:FLAC3D本构模型的二次开发工作主要包括修改头文件和程序文件、程序调试和生成动态链接库文件四部分。

FLAC3D本构模型的二次开发工作主要包括修改头文件(.h文件)和程序文件(.cpp文件)、程序调试和生成动态链接库文件(.DLL)四部分。主要内容如下:

①在usermodel.h头文件中声明新的本构模型派生类,修改派生类的私有变量和成员函数,修改模型的ID(>100)名和版本;

②修改模型结构:在usermodel.cpp中通过修改UserModel::Usermodel(bool bRegister):Constitutive model函数;

③模型参数赋值:修改Const char**UserModel::Properties( )函数实现;

单元状态指示:修改Const char**UserModel::States( )函数实现;

初始化参数及状态指示器,并对派生类声明中的私有变量进行赋值:修改Const char**UserModel::Initialize( )函数实现;

⑥通过修改Const char**UserModel::Run( )函数来实现应变增量计算得新的应力增量,从而获得新的应力,主要工作是定义一个屈服函数F来判断模型是否进入屈服状态,定义一个含水量参数dWater对蠕变参数进行含水修正,同时定义一个时间全局变量,然后对每一个时间步进行累加得到真实时间以进行黏性系数的折减;

⑦存储计算结果:修改Const char**UserModel::SaveRestore( )函数实现。