本发明涉及岩土工程的仿真模拟研究领域,具体涉及一种基于Matlab的由Midas导入Flac3D的模型识别方法。

背景技术:

随着我国近几年经济的快速发展和基础设施等的大力投资,涉及复杂地质环境下的岩土工程层出不穷。随着岩土工程领域的不断进步,基坑工程、隧道工程等也呈现出了开挖深度更深、开挖面积更大、施工更加复杂的趋势,早在90年代初国内最深的基坑约为20m,目前深度达到30-40m的基坑也不在少数,隧道开挖方法也由简单的矿山法发展为多种多样的浅埋暗挖工法体系。在这种形势下,岩土工程对于设计者和施工者的专业要求更加严格。

随着计算机行业的迅猛发展,有限元仿真计算手段得到了广泛应用。Midas/GTS和Flac3D是两款岩土工程设计和研究领域应用较为普遍的数值模拟软件。Midas/GTS是一款韩国优秀的岩土力学分析软件,具有强大的模型前处理功能。Midas/GTS软件操作界面友好,可以灵活设置节点、建立几何构造、进行布尔运算等操作,不仅如此,还可通过接口导入CAD模型文件、.dxf文件和.fpn文件进行进一步编辑。软件中嵌入强大的网格拓扑计算功能,可以实现映射网格和自由网格的快速划分。但Midas/GTS也有其自身缺陷,其内核算法计算并不稳定,常常出现未知的计算错误。除此之外,由于其软件本身采用刚度矩阵迭代计算的隐式有限元算法,在处理复杂非线性模型方面显现出了能力不足,较易出现方程迭代失败而终止计算。Flac3D是针对岩土类介质进行连续介质力学问题分析的三维快速拉格朗日分析(有限差分)软件,包含丰富的弹、塑性材料本构模型,具有静力、渗流、蠕变、动力和温度分析的5种计算模式,为岩土工程力学分析的专业软件。Flac3D中采用的“混合离散法”可以准确地模拟岩土体的塑性剪切破坏以及介质的塑性流动。显示有限差分法不同于隐式有限元计算方法,由于显示法并不形成刚度矩阵,计算时步占用较少的内存,节约计算资源,并且计算时步很小,计算更加稳定,具有解决失稳、振动、坍塌等问题较强的适用性。然而Flac3D对于复杂模型的建立则显得十分困难,由于Flac3D软件操作界面较为简单,许多操作命令需要利用内置语音FISH进行写入,对于一个设计者或者研究者来说难度较大。即使掌握了FISH语言的使用方法,在Flsc3D中实现复杂几何的建立和模型的网格划分仍是一个难题,甚至无法实现。

因此,有必要将两款分析软件的优点进行结合,摒弃各自的不足,实现前期Midas进行几何建模、网格划分,后期Flac3D进行分析计算,为工程技术人员解决软件接口问题。

技术实现要素:

为解决上述问题,本发明提供了一种基于Matlab的由Midas导入Flac3D的模型识别方法,实现了Midas三维模型导入Flac3D中进行仿真计算的方法,解决了Midas与Flac3D的软件接口问题。

为实现上述目的,本发明采取的技术方案为:

一种基于Matlab的由Midas导入Flac3D的模型识别方法,包括如下步骤:

S1、利用Midas/GTS软件对三维实体模型进行建模:

根据需要建立的三维实体模型进行关键几何部件剖分与控制点参数提取,利用Midas/GTS的几何输入前处理模块对实体模型进行绘制,对不同的部件进行切割或合并等处理,同时,对于更为复杂的三维实体模型,采用CAD导入.dxf文件进行编辑;

S2、三维实体模型建好后,通过Midas/GTS自带的网格划分模块进行模型网格的划分,通过四面体网格生成器和混合网格生成器生成自由网格和映射网格,并实现不同部分间网格节点的耦合;网格划分完毕后对不同部分赋予不同的材料属性,便于后续导入Flac3D中更加容易分析;

S3、利用Midas/GTS软件对三维结构单元进行建模:在三维实体模型网格划分完毕的基础上,根据需要在相应位置吸取结构单元,或利用几何线(面)划分耦合结构单元,并赋予不同的材料属性;

S4、利用Matlab软件实现Midas的模型信息文本文件的转换:

Midas中三维仿真模型建立完成后,利用Midas工具中的模型信息表单功能以文本文件的形式输出模型的节点信息和单元信息;利用Matlab进行节点信息与单元信息读取与识别,经过Matlab编译的模型信息修改模块将模型的节点信息、单元信息、分组信息进行提取,并将其以Flac可导入的文件形式进行数据转换,得到转换模型文本文件;

S5、将实体网格和结构单元网格的文本文件改为后缀名为.Flac3d和.dat的Flac的可导入文件,在Flac的文件菜单中找到外部网格输入接口,按路径导入Flac中,显示各组网格,即可再对其进行后序的荷载及边界条件的施加。

本发明中由于Midas输出的网格信息与Flac3D中可导入的网格信息不相一致,其中代表网格类型的代码表示方法不同,并且每个类型网格的节点顺序也不相同,Matlab软件自身的编译功能强大,且具有庞大的函数库可以调用,可准确实现数据信息的转换。

本发明具有以下有益效果:

通过本发明的模型识别方法,可以实现Midas软件与Flac3D软件之间的无差错连接,既避免了工程技术人员以及科研工作者为研究Flac3D中FISH语言而耗费大量时间精力,又克服了Midas针对多非线性问题、涉及破坏、动力等的大变形问题的薄弱之处。

附图说明

图1为本发明实施例基于Matlab的由Midas导入Flac3D的模型识别方法的流程图。

图2为本发明实施例基于Matlab的由Midas导入Flac3D的模型识别方法中模型转换模块流程图。

具体实施方式

为了使本发明的目的及优点更加清楚明白,以下结合实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1和图2所示,本发明实施例提供了一种基于Matlab的由Midas导入Flac3D的模型识别方法,实现了从Midas软件三维模型导入Flac3D中的模型识别方法,共包括三维模型建模、模型文件转换和模型计算分析;具体的:包括如下步骤:

S1、利用Midas/GTS软件对三维实体模型进行建模:

根据需要建立的三维实体模型进行关键几何部件剖分与控制点参数提取,利用Midas/GTS的几何输入前处理模块对实体模型进行绘制,对不同的部件进行切割或合并等处理,同时,对于更为复杂的三维实体模型,采用CAD导入.dxf文件进行编辑;

S2、三维实体模型建好后,通过Midas/GTS自带的网格划分模块进行模型网格的划分,通过四面体网格生成器和混合网格生成器生成自由网格和映射网格,并实现不同部分间网格节点的耦合;网格划分完毕后对不同部分赋予不同的材料属性,便于后续导入Flac3D中更加容易分析;

S3、利用Midas/GTS软件对三维结构单元进行建模:在三维实体模型网格划分完毕的基础上,根据需要在相应位置吸取结构单元,或利用几何线(面)划分耦合结构单元,并赋予不同的材料属性;

S4、利用Matlab软件实现Midas的模型信息文本文件的转换:

Midas中三维仿真模型建立完成后,利用Midas工具中的模型信息表单功能以文本文件的形式输出模型的节点信息和单元信息;利用Matlab进行节点信息与单元信息读取与识别,经过Matlab编译的模型信息修改模块将模型的节点信息、单元信息、分组信息进行提取,并将其以Flac可导入的文件形式进行数据转换,得到转换模型文本文件;

S4、将实体网格和结构单元文本文件分别改为后缀名为.Flac3d和.dat的文件菜单中找到外部网格输入接口,按路径导入Flac中,显示各组网格,即可再对其进行后序的荷载及边界条件的施加.

本具体实施中所述的三维实体建模是建立在Midas软件平台的基础上,依据其自身嵌入的前处理程序,可以实现模型绘制、模型框架的导入、模型检查、单元划分、属性分组等。在三维实体模型建立过程中,利用Midas的工具包已有功能,对实体进行建立,可进行扩展、复制、扫略等便捷的建模操作,并且可利用软件检查功能对已建几何模型进行检查,对于重复点进行删除,短线和小面进行合并。生成三维实体模型后,根据网格模型划分网格,Midas中提供了四面体、六面体、楔形体、金字塔等丰富的实体网格单元类型,强大的网格拓扑计算功能可实现复杂非线性实体几何的网格自动化分,还可利用网格节点控制功能实现细部的网格优化。在实体网格划分完毕后,Midas可提供结构单元吸取单元、复制单元、扩展单元等方便快捷的结构单元建模方法。最后,按照不同的材料参数以及不同的工况赋予网格不同分组(注意:分组中不可带有空格)。

所述的模型文件转换模块如图2所示。首先由Midas软件导出模型的节点信息和单元信息。利用Matlab中的编译程序将节点信息文本文件和单元信息文本文件导入,并实现内容信息的分类。首先将节点信息的格式进行编译,依次写入节点的节点号与三维坐标号。然后将单元信息的格式进行编译,对于实体单元,首先将单元的类型进行分类:六面体,四面体,楔形体,金字塔。在Flac3D中,以上四种网格单元类型代码分别为:B8,T4,W6和P5。按照不同单元类型,将单元的节点顺序进行重新排列,以保证Flac3D软件的正确识别。识别不同网格单元的分组名称,利用循环语句将不同的网格单元归入不同分组中。对于结构单元,需根据已导入Matlab中的节点信息,重新编译结构单元节点信息格式,并将结构单元单元号、单元节点号、单元分组等信息进行提取并重新排列。最后输出Flac3D可识别的文本文件。

所述的模型计算分析模块,为Flac3D中现有的模块,在Flac3D中将格式转换完的本文文件进行导入,检查是否出现异常或建模错误。利用Flac3D的FISH语言对三维实体模型进行材料属性的赋予,边界条件和荷载的施加,并设立相应的工况,进行计算分析。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

FLAC3D可视化后处理matlab,一种基于Matlab的由Midas导入Flac3D的模型识别方法与流程...相关推荐

  1. 圆度计算MATLAB,一种基于MATLAB的圆度评定方法

    摘要:圆度的评定和计算,实质上是根据圆度的定义构造函数模型.再进行函 数优化求解的过程.提出一种基于MATLAB 的圆度评定方法,利用MATLAB 优化工具箱,为采用最小区域圆法.最小二乘圆法.最小外 ...

  2. 距离矢量算法matlab实现,一种基于最小费用距离模型的城市生态网络构建方法与流程...

    本发明涉及生态网络构建技术领域,特别是涉及一种城市网络的构建方法. 背景技术: 最小费用距离是网络分析的一种计算方法,这种方法被用于物种保护.自然保护区功能规划.动物栖息地的确定.区域生态安全格局设计 ...

  3. matlab 重叠峰分解 算法,一种基于粒子群算法的光谱重叠峰分解方法与流程

    本发明涉及一种基于粒子群算法的光谱重叠峰分解方法. 背景技术: 由于探测器能量分辨率等原因,峰位接近且峰宽较大的不同谱峰之间常常出现严重重叠干扰的现象,要对光谱作进一步较为准确.全面的成分定量和定性分 ...

  4. 同步压缩变换 matlab,一种基于同步压缩变换重构的幅值校正方法

    一种基于同步压缩变换重构的幅值校正方法 [技术领域] [0001] 本发明属于信号处理技术领域,具体设及一种基于同步压缩变换重构的幅值校正 方法. [背景技术] [0002] 时频分析方法是处理非平稳 ...

  5. matlab ssd检测,基于SSD神经网络的违章停车车辆实时检测方法与流程

    本发明属于图像识别和计算机视觉技术领域,尤其涉及一种停车车辆的检测方法,可用于城市环境中对违章停车车辆的检测. 背景技术: 随着现代社会经济的快速发展和城市化的普及,汽车作为一种重要的交通工具,其数量 ...

  6. matlab计算后验概率,基于深度神经网络后验概率算法的口语发音评测方法与流程...

    本发明涉及发音评测领域,特别涉及一种基于深度神经网络后验概率算法的口语发音评测方法. 背景技术: 常用的语音评测技术,比如用于英语口语教学中的语音评测,一般都是采用智能打分技术对学习者的口语进行评测, ...

  7. dbpedia知识图谱java_一种基于DBpedia的水务领域概念知识图谱构建方法与流程

    本发明涉及的是领域知识图谱构建技术领域,涉及到一种基于DBpedia的水务领域概念知识图谱构建方法,特别涉及到一种基于Jaccard相似度算法与随机游走相似度算法结合的协同过滤模型框架,用于补全概念模 ...

  8. bim 模型web页面展示_一种基于BIM模型的Web端轻量化展示方法与流程

    本发明涉及基坑结构模型技术领域,尤其涉及一种基于bim模型的web端轻量化展示方法. 背景技术: 建筑信息模型(buildinginformationmodeling,bim)技术在土木工程领域快速推 ...

  9. 空间注意力机制sam_一种基于注意力机制的神经网络的人体动作识别方法与流程...

    本发明属于计算机视觉领域,具体来说是一种基于注意力机制的神经网络的人体动作识别的方法. 背景技术: 人体动作识别,具有着非常广阔的应用前景,如人机交互,视频监控.视频理解等方面.按目前的主流方法,可主 ...

最新文章

  1. Android Studio 插件开发详解二:工具类
  2. easyui treegrid idField 所在属性中值有花括号(如Guid)当有鼠标事件时会报错,行记录一下...
  3. Eclipse+Maven创建webapp项目
  4. SQLyog连接虚拟机中mysql8.0详解,2003、1130、2058错误码解决
  5. SAP Spartacus 的 Above-the-Fold Loading 加载机制
  6. APICloud使用Aui自定义Toast
  7. VMware VirtualBox共存时桥接注意
  8. Python-计量经济学案例
  9. Apache SeaTunnel(Incubating) 2.2.0-beta 版本发布!API 重构,连接器与引擎解偶
  10. 如何向天翼云服务器上传文件,天翼云盘如何上传文件?
  11. Spring Framework 开发参考手册 之十四 JMS支持
  12. Linux内核中断系统结构——软中断
  13. 前后落差大用什么词语_形容心情落差大的诗词
  14. 目标检测网络(RCNN系列,SSD,Yolo系列)
  15. 基于matlab的频域辨识,频域辨识简介.ppt
  16. 华为6面,测试岗报价11k,HR说我不尊重华为,他们没有那么低薪资岗位?
  17. 985高校副教授晒年薪,公积金顶普通人月薪,网友:不愧是在上海!
  18. Linux防火墙开放/关闭端口
  19. leetcode 手写计算器 方法总结
  20. 汽车制造业大量采用自动化焊接机器人

热门文章

  1. 金山手机安全卫士试用报告
  2. 快讯!Sharding-Sphere正式进入Apache孵化器
  3. github中SSH的Key
  4. ffmpeg 基本数据结构和对象: AVPacket、AVPicture、AVFrame
  5. JavaScript基础(三)流程控制
  6. 两个变量交换值 和按位异或的理解
  7. ios开发常识(1)开发语言和参考资料
  8. 【原创】WinCE下流驱动开发流程
  9. 几种民间排毒养颜祛痘DIY自制面膜 - 健康程序员,至尚生活!
  10. 美国康奈尔大学计算机科学的教授,美国康奈尔大学教授Robbert van Renesse访问并做学术报告...