CN105279320A - 一种生成fdtd网格的方法 - Google Patents
一种生成fdtd网格的方法 Download PDFInfo
- Publication number
- CN105279320A CN105279320A CN201510649401.4A CN201510649401A CN105279320A CN 105279320 A CN105279320 A CN 105279320A CN 201510649401 A CN201510649401 A CN 201510649401A CN 105279320 A CN105279320 A CN 105279320A
- Authority
- CN
- China
- Prior art keywords
- fdtd
- data
- parts
- grid
- dimensional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种生成FDTD网格的方法。基于商用软件Hypermesh生成三角面元的模型,再对之进行处理生成FDTD网格。实现空间步长的自由选取,生成不同规格的FDTD网格,同时解决了多种介质材料复杂模型的问题。最后通过CAD检测生成的FDTD网格,检验建模结果的正确性。本发明能够解决复杂目标模型的FDTD建模问题,以及多种材料FDTD建模问题。
Description
技术领域
本发明属于电磁场数值计算领域,具体涉及一种FDTD三维建模技术。
背景技术
近年来随着商用建模软件的迅速发展,使得复杂模型的建模变得十分便利。但是用FDTD方法研究物体的电磁散射特性时,必须按照FDTD要求进行网格化离散,即将FDTD计算区域以六面体元胞(长方体)为单元进行剖分,并确定每个单元的介质参数。
随着FDTD方法的广泛采用,算法的不断进步,对能够进行复杂模型FDTD计算的需求越加强烈。普通的建模根据模型的解析式,只能生成简单的模型,无法解决复杂模型的问题。因此非常有必要设计一种能够解决多部件复杂模型的FDTD网格生成技术。
发明内容
本发明的目的在于提供一种生成FDTD网格的方法,解决复杂模型及多种材料FDTD建模问题。
为了解决以上技术问题,本发明设计建立一种复杂三角面元模型生成FDTD网格技术。基于商用软件Hypermesh生成三角面元的模型,再对之进行处理生成三维FDTD网格。实现空间步长的自由选取,生成不同规格的FDTD网格,同时解决了多种介质材料复杂模型的问题:
一种生成FDTD网格的方法,其特征在于包括以下步骤:
步骤一,使用Hypermesh建模工具建模得Hypermesh模型,对Hypermesh模型进行剖分,剖分成三角面元模型,保存三角面元模型得stl格式三角面元模型数据;
步骤二,按stl格式三角面元模型数据的格式处理stl格式三角面元模型数据,保存stl格式三角面元模型数据中三维点坐标数据以及部件起始行数据;
步骤三,根据三维点坐标数据以及部件起始行数据,建立FDTD网格。
所述步骤一具体为使用UG,CAD,Hypermesh等商用建模软件建模,再导入到Hypermesh中进行剖分。选择edgedeviation进行剖分,根据模型尺寸选择最大最小三角面元尺寸,运行程序后会根据模型的复杂程度自动选择合适的尺寸来剖分,最后导出stl格式三角面元模型数据。
所述步骤二具体包括以下过程:
过程3.1,读取stl格式三角面元模型数据的总行数;
过程3.2,判断stl格式三角面元模型数据中三维点坐标所在的行数及三维点坐标数据所在位置;
过程3.3,用Fortran语言读取该行成字符串;
过程3.4,将上步骤所述的字符按照三维点坐标数据所在的字符位置转化成数据格式;
过程3.5,存储三维点坐标数据到文件中;
过程3.6,判断多种部件所在的起始行数;
过程3.7,根据三维点坐标数据所有点三维方向上最大最小值判断Hypermesh模型尺寸,基于用户对三维FDTD网格大小的需求选取合适的空间步长。
所述步骤三具体包括以下过程:
过程4.1,根据部件起始行数据处理三维点坐标数据,读取三维点坐标数据,创建3*3的矩阵代表一个三角面元片,创建一个循环按照每三行读取一个三角面元数据,存储在临时3*3的矩阵中;
过程4.2,根据三维点坐标数据生成三维FDTD网格,对每个3*3的三角面元所对应的矩阵,把三个点放在FDTD网格中,所需要计算的是根据步长的取整计算,即把三角面元的三个点放在三维FDTD网格的格点上。如果网格很粗,或者说所取的步长很大的情况下,三角形的三个点都在一个网格内,就对这个网格赋值该部件的号码。如果三角面元跨越了多个FDTD网格,那么针对每个3*3的三角面元所对应的矩阵,得到根据步长取整的三个量化点,扩大成一个长方体,就可以包含覆盖不到的所有网格点,再对这些FDTD网格点赋值部件号;
过程4.3,对部件内部补充实点,进行补点的处理时,每个部件只是一个空壳,内部没有点。采用的方法是针对每个空点,看它X正向反向,Y正向反向,Z正向反向有没有点存在,一共六个方向的延伸,如果每个方向都存在点,那么这个点是在体内部的,是存在的。具体的做法是,根据三维FDTD网格数据,依据它的格点存储方式,读出YZ坐标与该点相同的所有点,得到一组数据,并放在临时的数组中,得到了X正向反向上的点。同理Y和Z方向也按照相同的方法得到另外两组数组。在这三个数组里以该点为中心分别做循环(往外延伸),如果碰到实点,做标记。如果六个方向都标记到,则可以判定该点也是实点,并对该点赋值所在部件号;
过程4.4,如模型存在多个部件则重复对每个部件进行上述过程4.1、4.2、4.3。部件1的部件号为1,部件二的部件号为2,依次类推;
过程4.5,对比部件大小,将各部件合成最终的三维FDTD网格,具体方法是:补点后计算该部件有多少个FDTD网格点,得到部件的大小。针对多部件重合的点,比较部件大小,取较小部件保证模型的精确度,再把各个部件整合到FDTD网格中。
本发明能够识别复杂模型开槽的情况,并对之进行处理。所述采用文件方式存储读取所有的数据和文件。一旦数据超过数组的极限,计算机内存限制,就会溢出,就不能对复杂的模型进行三角面元处理。采用文件之间的读写,速度慢,但能满足对大数据处理的需求。
本发明具有有益效果。本发明是通过Hypermesh商用建模软件,把模型剖分成三角面元,再转化成FDTD网格。本发明具有灵活建模,识别多重材料部件,识别开槽空腔的优点。
附图说明
图1为三角面元在一个三维FDTD网格内情形;
图2为三角面元在多个三维FDTD网格内情形;
图3为stl数据格式;
图4为Hypermesh中球剖分成的三角面元图;
图5为Hypermesh中正方体剖分成的三角面元图;
图6为球三维FDTD网格通过CAD可视化检测;
图7为正方体三维FDTD网格通过CAD可视化检测;
图8(a)为金属球RCS及其MIE级数解对比;
图8(b)为金属立方体RCS及其MIE级数解对比;
图9为复杂模型的Hypermesh剖分成的三角面元图;
图10为复杂模型三维FDTD网格通过CAD可视化检测;
具体实施方式
下面结合附图对本发明的技术方案做进一步详细说明。
如图1所示,表示三角面元在一个FDTD网格中,在建模中,三角面元尺寸通常都很小,而FDTD网格尺寸所取比较大,因此图中的情形代表了大多三角面元和FDTD网格的关系。在图中,该FDTD网格赋值为三角面元所在部件的号码。
如图2所示,在图中一个三角面元在两个FDTD网格中,这两个FDTD网格赋值为三角面元所在部件的号码。
如图3所示,stl格式三角面元模型数据是每7行代表了一个三角面元,三个点坐标均以vertex开始,读取所在行成字符串,再根据数据所在的位置转换为数据格式存在三维点坐标数据中。同时每个部件以‘solidname’,‘endsolid’开始和结束,并记录部件起始行数据。
如图4所示,在Hypermesh中剖分球模型的三角面元图,球半径为1m。
如图5所示,在Hypermesh中剖分正方体模型的三角面元图,正方体边长为2.5cm。
如图6所示,采用本文所述方法,对图4所示的球建模,生成三维FDTD网格,通过CAD检测正确性。
如图7所示,采用本文所述方法,对图5所示的正方体建模,生成三维FDTD网格,通过CAD检测正确性。
如图8所示,通过FDTD计算图5图6模型,选取的材料都是金属,生成雷达散射截面RCS,并与MIE级数对比,检测正确性。
如图9所示,复杂开槽模型的Hypermesh三角面元图,圆环为部件1,十字架为部件2。
如图10所示,复杂开槽模型的三维FDTD网格图,通过CAD可视化检测。
Claims (6)
1.一种生成FDTD网格的方法,其特征在于包括以下步骤:
步骤一,使用Hypermesh建模工具建模得Hypermesh模型,对Hypermesh模型进行剖分,剖分成三角面元模型,保存三角面元模型得stl格式三角面元模型数据;
步骤二,按stl格式三角面元模型数据的格式处理stl格式三角面元模型数据,保存stl格式三角面元模型数据中三维点坐标数据以及部件起始行数据;
步骤三,根据三维点坐标数据以及部件起始行数据,建立FDTD网格。
2.根据权利要求1所述的一种生成FDTD网格的方法,其特征在于所述步骤一具体为使用UG,CAD,Hypermesh等商用建模软件建模,再导入到Hypermesh中进行剖分。选择edgedeviation进行剖分,根据模型尺寸选择最大最小三角面元尺寸,运行程序后会根据模型的复杂程度自动选择合适的尺寸来剖分,最后导出stl格式三角面元模型数据。
3.根据权利要求1所述的一种生成FDTD网格的方法,其特征在于所述步骤二具体包括以下过程:
过程3.1,读取stl格式三角面元模型数据的总行数;
过程3.2,判断stl格式三角面元模型数据中三维点坐标所在的行数及三维点坐标数据所在位置;
过程3.3,用Fortran语言读取该行成字符串;
过程3.4,将上步骤所述的字符按照三维点坐标数据所在的字符位置转化成数据格式;
过程3.5,存储三维点坐标数据到文件中;
过程3.6,判断多种部件所在的起始行数;
过程3.7,根据三维点坐标数据所有点三维方向上最大最小值判断Hypermesh模型尺寸,基于用户对三维FDTD网格大小的需求选取合适的空间步长。
4.根据权利要求1所述的一种生成FDTD网格的方法,其特征在于所述步骤三具体包括以下过程:
过程4.1,根据部件起始行数据处理三维点坐标数据,读取三维点坐标数据,创建3*3的矩阵代表一个三角面元片,创建一个循环按照每三行读取一个三角面元数据,存储在临时3*3的矩阵中;
过程4.2,根据三维点坐标数据生成三维FDTD网格,对每个3*3的三角面元所对应的矩阵,把三个点放在FDTD网格中,所需要计算的是根据步长的取整计算,即把三角面元的三个点放在三维FDTD网格的格点上。如果网格很粗,或者说所取的步长很大的情况下,三角形的三个点都在一个网格内,就对这个网格赋值该部件的号码。如果三角面元跨越了多个FDTD网格,那么针对每个3*3的三角面元所对应的矩阵,得到根据步长取整的三个量化点,扩大成一个长方体,就可以包含覆盖不到的所有网格点,再对这些FDTD网格点赋值部件号;
过程4.3,对部件内部补充实点,进行补点的处理时,每个部件只是一个空壳,内部没有点。采用的方法是针对每个空点,看它X正向反向,Y正向反向,Z正向反向有没有点存在,一共六个方向的延伸,如果每个方向都存在点,那么这个点是在体内部的,是存在的。具体的做法是,根据三维FDTD网格数据,依据它的格点存储方式,读出YZ坐标与该点相同的所有点,得到一组数据,并放在临时的数组中,得到了X正向反向上的点。同理Y和Z方向也按照相同的方法得到另外两组数组。在这三个数组里以该点为中心分别做循环(往外延伸),如果碰到实点,做标记。如果六个方向都标记到,则可以判定该点也是实点,并对该点赋值所在部件号;
过程4.4,如模型存在多个部件则重复对每个部件进行上述过程4.1、4.2、4.3。部件1的部件号为1,部件二的部件号为2,依次类推;
过程4.5,对比部件大小,将各部件合成最终的三维FDTD网格,具体方法是:补点后计算该部件有多少个FDTD网格点,得到部件的大小。针对多部件重合的点,比较部件大小,取较小部件保证模型的精确度,再把各个部件整合到FDTD网格中。
5.根据权利要求1所述的一种生成FDTD网格的方法,其特征在于根据所有点三维方向上最大最小值选取用户自定的空间步长生成FDTD网格。
6.根据权利要求1所述的一种生成FDTD网格的方法,其特征在于能够识别复杂模型开槽的情况,并对之进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510649401.4A CN105279320B (zh) | 2015-10-09 | 2015-10-09 | 一种生成fdtd网格的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510649401.4A CN105279320B (zh) | 2015-10-09 | 2015-10-09 | 一种生成fdtd网格的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279320A true CN105279320A (zh) | 2016-01-27 |
CN105279320B CN105279320B (zh) | 2018-05-22 |
Family
ID=55148330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510649401.4A Expired - Fee Related CN105279320B (zh) | 2015-10-09 | 2015-10-09 | 一种生成fdtd网格的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279320B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105869213A (zh) * | 2016-03-25 | 2016-08-17 | 江苏大学 | 一种多阶fdtd网格建模方法 |
CN114580249A (zh) * | 2022-05-05 | 2022-06-03 | 广州中望龙腾软件股份有限公司 | 一种多环路的fdtd电磁场仿真分析方法、系统、设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101982837A (zh) * | 2010-09-19 | 2011-03-02 | 北京航空航天大学 | 一种基于有限元分析后处理结果的快速三维可视化方法 |
CN103914879A (zh) * | 2013-01-08 | 2014-07-09 | 无锡南理工科技发展有限公司 | 一种在抛物线方程中由三角面元数据生成立方网格数据的方法 |
CN104317772A (zh) * | 2014-10-22 | 2015-01-28 | 中国科学院合肥物质科学研究院 | 一种基于空间网格分割的蒙特卡罗粒子输运快速几何处理方法 |
CN104809258A (zh) * | 2014-01-23 | 2015-07-29 | 南京理工大学 | 电磁散射仿真建模中面片法向量自适应修改方法 |
-
2015
- 2015-10-09 CN CN201510649401.4A patent/CN105279320B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101982837A (zh) * | 2010-09-19 | 2011-03-02 | 北京航空航天大学 | 一种基于有限元分析后处理结果的快速三维可视化方法 |
CN103914879A (zh) * | 2013-01-08 | 2014-07-09 | 无锡南理工科技发展有限公司 | 一种在抛物线方程中由三角面元数据生成立方网格数据的方法 |
CN104809258A (zh) * | 2014-01-23 | 2015-07-29 | 南京理工大学 | 电磁散射仿真建模中面片法向量自适应修改方法 |
CN104317772A (zh) * | 2014-10-22 | 2015-01-28 | 中国科学院合肥物质科学研究院 | 一种基于空间网格分割的蒙特卡罗粒子输运快速几何处理方法 |
Non-Patent Citations (3)
Title |
---|
周国祥等: "柱面坐标下基于OpenGL的非均匀FDTD网格的生成", 《计算机应用研究》 * |
普鑫: "一种基于面元模型的FDTD自动网格产生技术", 《计算机应用》 * |
胡晓娟等: "基于目标三角面元模型生成FDTD共形网格的方法", 《强激光与粒子束》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105869213A (zh) * | 2016-03-25 | 2016-08-17 | 江苏大学 | 一种多阶fdtd网格建模方法 |
CN105869213B (zh) * | 2016-03-25 | 2018-11-20 | 江苏大学 | 一种多阶fdtd网格建模方法 |
CN114580249A (zh) * | 2022-05-05 | 2022-06-03 | 广州中望龙腾软件股份有限公司 | 一种多环路的fdtd电磁场仿真分析方法、系统、设备和介质 |
CN114580249B (zh) * | 2022-05-05 | 2022-09-13 | 广州中望龙腾软件股份有限公司 | 一种多环路的fdtd电磁场仿真分析方法、系统、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105279320B (zh) | 2018-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104268934B (zh) | 一种由点云直接重建三维曲面的方法 | |
Guo et al. | Meshless thin-shell simulation based on global conformal parameterization | |
CN102687176A (zh) | 用于展现动感对象的方法 | |
CN109584357A (zh) | 基于多轮廓线的三维建模方法、装置、系统及存储介质 | |
CN110033519A (zh) | 基于隐式函数的三维建模方法、装置、系统及存储介质 | |
US10121279B1 (en) | Systems and methods for generating a mesh | |
CN102609992A (zh) | 基于三角网格变形体的自碰撞检测方法 | |
CN103914879A (zh) | 一种在抛物线方程中由三角面元数据生成立方网格数据的方法 | |
CN105118091A (zh) | 一种构建多精度非均匀地质网格曲面模型的方法和系统 | |
CN113673186A (zh) | 一种基于stl文件的笛卡尔网格快速生成方法 | |
US10943037B2 (en) | Generating a CAD model from a finite element mesh | |
Gerace et al. | A model-integrated localized collocation meshless method for large scale three-dimensional heat transfer problems | |
CN107886573B (zh) | 一种复杂地质条件下边坡三维有限元网格生成方法 | |
CN103366402A (zh) | 三维虚拟服饰的快速姿态同步方法 | |
CN103400411B (zh) | 三维实体建模的方法和系统 | |
CN105279320A (zh) | 一种生成fdtd网格的方法 | |
Liu et al. | Automatic sizing functions for unstructured mesh generation revisited | |
CN100385464C (zh) | 一种基于四边形折叠的三维网格图形简化方法 | |
Huang et al. | Automatic CAD model reconstruction from multiple point clouds for reverse engineering | |
CN103077554B (zh) | 基于节单位的作物交互式设计方法和系统 | |
CN109741454A (zh) | 一种基于部件组合与变形的草图式三维卡通模型造型方法 | |
CN105869213B (zh) | 一种多阶fdtd网格建模方法 | |
Capizzano | A compressible flow simulation system based on cartesian grids with anisotropic refinements | |
Carrington et al. | Three-dimensional local ALE-FEM method for fluid flow in domains containing moving boundaries/objects interfaces | |
Aldrich et al. | Collision-Driven Volumetric Deformation on the GPU. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180522 Termination date: 20181009 |