电磁散射仿真建模中面片法向量自适应修改方法
【技术领域】
[0001] 本发明属于数值仿真中的几何建模优化技术,适用于计算电磁学、计算流体力学 等各种与矢量场仿真相关的学科,具体是一种电磁散射仿真建模中面片法向量自适应修改 方法。
【背景技术】
[0002] 在很多涉及到矢量场仿真的学科当中,仿真对象的表面外法向分量正确性是影响 仿真结果的重要因素。以计算电磁学中的积分方程方法为例,对于处理闭域问题的磁场积 分方程或混合积分方程来说,其公式内含法向量元素,必须保证所有单元法向一致向外,这 个问题在高频方法计算时影响更为明显,如果单元法向不一致,会导致错误的计算结果。
[0003] 在某些仿真软件如ANSYS里,已经提供了命令改变某个面片的法向量。然而当模 型复杂,面元素繁多时,由于其可视性很复杂,利用ANSYS本身查看修改法向量便很困难 了。即使利用其它仿真软件如FEK0虽然清楚的显示了模型各面片的外法向分量,手动进行 逐个修改依然非常麻烦,对于某些含腔和夹缝的精细结构,根本无法通过手动的方式完成 法向量修改。
【发明内容】
[0004] 本发明的目的在于提供一种电磁散射仿真建模中面片法向量自适应修改方法,通 过程序代替人力实现对各种复杂模型的法向量修改。
[0005] 实现本发明目的的技术方案为:一种电磁散射仿真建模中面片法向量自适应修改 方法,步骤如下: 步骤一:对于任意给定的某模型剖分文件,若给定的剖分文件中有四面体信息和表面 三角形信息,则直接转到步骤二;若文件仅提供完整的三角形表面剖分信息,即三角形对应 节点号和各节点对应坐标位置,将此剖分文件转换成.P〇ly的形式;将形成的.P〇ly文件导 入tetgen软件,键入/tetgen -p -yname.poly命令,在此剖分闭合面内形成四面体,得 到一个存有表面三角形信息、四面体信息的文件; 步骤二:读入得到的剖分文件信息,根据剖分文件中的表面三角形信息、四面体信息建 立八叉树分组,得到每一个四面体所在的非空组号和组内四面体对应的全局编号;对组内 四面体进行循环,寻找表面三角形与四面体的一一对应关系,即每一个表面三角形处于哪 一个四面体上; 步骤三:找出与表面三角形对应的四面体后,从四面体中点向该表面三角形中点连接 一条向量,并与此表面三角形的法向量作点乘;若乘积大于〇,则此三角形外法向分量正 确,无需修改;若乘积小于〇,此三角形外法向分量错误,调换此原剖分文件中三角形对应 的三个节点中任意两个的顺序,完成法向量的修改。
[0006] 本发明与现有技术相比,其显著优点:1、对于已剖分完成的网格文件,无论是否存 在体信息,均能成功修改法向量。2、引入了八叉树算法,算法执行效率非常高。3、算法本身 具有自适应性,即使原剖分文件的法向量极度不均匀,仍能作出正确修改(见图6、7)。4、应 用范围广,对于几乎所有涉及矢量场仿真的学科,此发明均能有应用价值。
【附图说明】
[0007] 图1为本发明处理的原本模型示意图。
[0008] 图2为剖分后的模型示意图。
[0009]图3为八叉树技术示意图。
[0010]图4为面法向量修改方法示意图。
[0011]图5为修改后的法向量示意图。 图6是法向量极度不均匀的模型示意图。 图7为法向量极度不均匀的模型修改后的示意图。
【具体实施方式】
[0012] 一种电磁散射仿真建模中面片法向量自适应修改方法,步骤如下: 第一步,面剖分文件的建立。利用如ANSYS、GMESH等剖分软件对物体表面进行面元(以 三角形单元为例)剖分。此时得到的物体外表面面元的法向分量可能是混乱的。
[0013] 第二步,体剖分信息的形成。利用如ANSYS、GMESH等剖分软件对物体进行体元(以 四面体为例)剖分。对比较复杂的模型ANSYS、GMESH等剖分软件无法进行体剖分时,将面 元信息导入tetgen软件形成内部四面体,至此剖分的体、面元信息已经全部得到。
[0014] 第三步,建立体、面元关系。通过建立八叉树,快速找到剖分后的每个三角形与四 面体单元的对应关系。
[0015] 第四步,法向量修改,得到法向量正确的面剖分文件。计算每个面元的法向量,并 与面元所在四面体中点指向面元中心点的矢量作点乘运算。乘积大于0则为正确的法向 量,反之错误,修改对应三角形节点号使之正确。修改完后得到正确法向量的剖分文件,供 数值仿真用。
[0016] 下面结合附图对本发明作进一步详细描述。
[0017] 以图1所示的F22飞机模型为例,由于F22建模时没有考虑到部分面片的法向量 正确性,导致一些面的法向量向内,一部分向外。这样的模型剖分后无法得到正确的三角面 元法向量,导致仿真结果错误。本发明分为以下几步修改三角面元的法向量: 步骤一:将模型导入ANSYS,对模型进行三角形面元剖分。面剖分后的网格如图2所示, 图中黑色代表面元法向量向外,白色代表面元法向量向内。右侧机身和机翼大部分法向量 都是错误的。
[0018] 步骤二:在ANSYS中对此模型进行体剖分。ANSYS软件在体剖分过程中能够保证体 网格与面网格的相容性。对于一些精细结构,ANSYS不能成功剖分出四面体,这时将已剖分 好的三角形面网格信息写成.poly的格式导入tetgen软件,键入./tetgen -p -y name, poly,此命令可在保留原表面三角形网格的情况下在三角形面元围成的闭合面内自动生成 四面体。
[0019] 步骤三:第二步完成后,已经得到了三角形面元与四面体的网格信息,想要修改法 向量,首先要得到每个三角形面元属于哪个四面体。为了加速寻找三角形所在的四面体号, 对剖分好的模型建立八叉树分组。分组的过程如图3所示,由于三维分组示意图不够直观, 所以该图只是三维分组的一个二维剖面。分组的步骤为: (1)首先用一个足够大的立方体将目标体包围住。该立方体就定义为第零层的第一个 且是最后一个组,把该立方体等分为八个子立方体形成第一层组,然后再对每个子立方体 进行与上一步相同的细分,并以此类推直到最底层立方体的尺寸达到合适的大小为止,一 般为021~之间。图3所示是一个四层结构。
[0020] (2)对四面体单元循环,找出每个四面体中点坐标所在的组,即定义此四面体在 此组中,同时建立组中四面体与四面体全局编号的关系。循环完成后,所有组中没有四面体 的为空组,反之为非空组。
[0021] (3)对非空组内四面体进行循环,建立所有面与所在四面体的对应关系,同时找 出交界面与边界面,边界面即不被两个四面体公用的面。此时的边界面应该与面剖分出的 三角形面元统一。至此八叉树的任务已经完成,八叉树的引入使对应关系的寻找速度提升 了数十倍。
[0022] (4)找到了每个三角形对应的四面体,只需从四面体中点向对应三角形中点作一 条向量(图4中的向量5),计算出此时的三角形法向分量
【主权项】
1. 一种电磁散射仿真建模中面片法向量自适应修改方法,其特征在于步骤如下: 步骤一:对于任意给定的某模型剖分文件,若给定的剖分文件中有四面体信息和表面 三角形信息,则直接转到步骤二;若文件仅提供完整的三角形表面剖分信息,即三角形对应 节点号和各节点对应坐标位置,将此剖分文件转换成.poly的形式;将形成的.poly文件导 入tetgen软件,键入/tetgen -p -yname.poly命令,在此剖分闭合面内形成四面体,得 到一个存有表面三角形信息、四面体信息的文件; 步骤二:读入得到的剖分文件信息,根据剖分文件中的表面三角形信息、四面体信息建 立八叉树分组,得到每一个四面体所在的非空组号和组内四面体对应的全局编号;对组内 四面体进行循环,寻找表面三角形与四面体的一一对应关系,即每一个表面三角形处于哪 一个四面体上; 步骤三:找出与表面三角形对应的四面体后,从四面体中点向该表面三角形中点连接 一条向量,并与此表面三角形的法向量作点乘;若乘积大于〇,则此三角形外法向分量正 确,无需修改;若乘积小于〇,此三角形外法向分量错误,调换此原剖分文件中三角形对应 的三个节点中任意两个的顺序,完成法向量的修改。
【专利摘要】本发明公开了一种电磁散射仿真建模中面片法向量自适应修改方法。本发明针对任意复杂模型的面剖分信息或体面剖分信息,能够自动提取出三角形面元正确的外法向分量。针对电大尺寸的模型,网格数量上百万甚至千万,在法向量修改过程中加入八叉树分组加快循环速度,使得算法执行速度有了几个数量级的提升。本发明能完全代替传统繁琐的人力修改法向量方法,并且简单易用,适用范围广。
【IPC分类】G06F17-50
【公开号】CN104809258
【申请号】CN201410031588
【发明人】陈如山, 丁大志, 樊振宏, 郝汀
【申请人】南京理工大学
【公开日】2015年7月29日
【申请日】2014年1月23日