FLAC,FLAC3D基础与应用-陈育民分析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 几个建议 6. 使用“?” FLAC3D的命令很多,在初学者看来,记住数量可观的各种命令及语句格式是一件很困难的事情,事实也的确如此。幸运的是,FLAC3D在命令窗口中提供了“?”功能,无论在命令的什么位置都可以插入“?”字符,让系统告诉你接下来可以应该输入的是哪些关键字或变量。 RUN FLAC3D * 几个建议 7. 夯实知识基础 FLAC和FLAC3D的计算结果和中间时步表现出一些不合实际的结果,需要读者具有足够的专业和数学知识进行判断与解释。因此,决定FLAC和FLAC3D使用水平高低的决定性因素取决于使用者的专业素养、工程经验和数理知识。因此加强专业知识、数学和力学的学习,夯实知识基础十分重要。 * 几个建议 8. 相互交流,取长补短 FLAC和FLAC3D命令、关键词和变量繁多,个人学习难免顾此失彼,因此加强交流,与他人共享学习经验是提高FLAC和FLAC3D应用水平的一个捷径。互联网的出现,为大家提供了一个讨论和共享的平台,读者可以在相互间的交流、争论中取长补短,共同提高。 * FLAC/FLAC3D并非无所不能 长期动力问题模拟 动三轴试验、动扭剪试验的模拟 列车荷载、车辆荷载的长期作用 复杂网格模型的建立(前处理)不方便 流固耦合问题需要简化处理,简单的固结问题用FLAC来分析时会异常复杂 谢谢! 敬请批评指正! * * * * * * * Ts 分析的时间 Tc 扩散的时间 * * * * * * * * * * * * * * * * * * * 自定义本构模型 * 自定义本构模型的基本方法 必要性 试验总结的本构模型 特定条件下的本构模型 交叉学科的本构模型 二次开发环境 自定义本构模型的功能 自定义本构模型的基本方法 * 二次开发环境 FLAC3D采用面向对象的语言标准C++编写 本构模型都是以动态连接库文件(.DLL文件)的形式提供 VC++2005或更高版本的开发环境 优点 自定义的本构模型和软件自带的本构模型的执行效率处在同一个水平 自定义本构模型(.DLL文件)适用于高版本的FLAC(2D)、3DEC、UDEC等其他Itasca软件中 * 自定义本构模型的功能 主要功能:对给出的应变增量得到新的应力 辅助功能: 模型名称、版本 读写操作 模型文件的编写 基类(class Constitutive Model)的描述 成员函数的描述 模型的注册 模型与FLAC3D之间的信息交换 模型状态指示器的描述 * 自定义本构模型的基本方法 头文件(usermodel.h)中进行新的本构模型派生类的声明 修改模型的ID(100)、名称和版本 修改派生类的私有成员 C++文件(usermodel.cpp)中修改模型结构 (UserModel::UserModel(bool bRegister): ConstitutiveModel) const char **UserModel::Properties()函数 模型的参数名称字符串 const char **UserModel::States()函数 计算过程中的状态指示器 * 自定义本构模型的基本方法 double UserModel::GetProperty()和void UserModel:: SetProperty()函数 const char * UserModel::Initialize()函数 参数和状态指示器的初始化,并对派生类声明中定义的私有变量进行赋值 const char * UserModel::Run() 函数 由应变增量计算得到应力增量,从而获得新的应力 const char * UserModel::SaveRestore()函数 对计算结果进行保存。 程序的调试 在VC++的工程设置中将FLAC3D软件中的EXE文件路径加入到程序的调试范围中,并将FLAC3D自带的DLL文件加入到附加动态链接库(Additional DLLs)中,然后在Initialize()或Run()函数中设置断点,进行调试; 在程序文件中加入return()语句,这样可以将希望得到的变量值以错误提示的形式在FLAC3D窗口中得到。 * 相关文件 * mohr.h mohr.cpp 一个例子(Duncan-Chang) * 其他成功的例子 南京水科院双屈服面模型 * 双屈服面 中心截面沉降云图 水平位移云图 小主应力云图 主要结论 FLAC的动力反应分析非常复杂,用户在进行动力分析之前要具有熟练的静力分析基础 FLAC的动力计算需要花费很多时间,主要原因是由于有限差分法本身需要较小的时间步,因此建议在进行动力分析前首先进行简单模型的分析 “小例子”虽然会额外花费一定时间,但对于熟悉边界条件、荷载施加、阻尼选择等内容来说非常必要 第四讲 FLAC(

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档