发明名称 一种适用于二维流场的并行流线放置方法
摘要 本发明涉及一种适用于二维流场的并行流线放置方法,对于给定的二维流场,将流场中由流线、速度为零的临界点或流场边界所包围的封闭区域定义为流场的虚拟拓扑区域VTA,另外设置一个覆盖整个流场的正交控制网格,为每个网格单元设置一个记录流线数目的计数器。将整个流场的定义域当作一个初始VTA,在该VTA内选取一个种子点,计算得到一条流线,将该流线放置到该VTA内,并更新相关网格单元的流线计数值;在一个VTA内放置的流线将把该VTA分割成一个或者是两个新的VTA,按照同样的处理策略在新的VTA内并行地放置流线。本发明有效地加速了流线放置过程,不存在伪边界和视觉混乱问题,保证了流线放置质量,适于大规模流场的可视化。
申请公布号 CN102521854A 申请公布日期 2012.06.27
申请号 CN201110452884.0 申请日期 2011.12.29
申请人 北京理工大学 发明人 张文耀;宁建国;王义
分类号 G06T11/00(2006.01)I 主分类号 G06T11/00(2006.01)I
代理机构 代理人
主权项 一种适用于二维流场的并行流线放置方法,包括以下步骤:步骤1、对于给定的二维平面流场,构造一个刚好覆盖该流场定义域的正交控制网格,网格单元的大小根据实际应用需求设定;为每个网格单元设置一个计数器,记录每个网格单元所包含的流线数目,同时设定计数器的计数上限值,该上限值为一个大于或等于1的正整数;初始时刻每个网格单元都是空白的,相应计数器的计数值为0,如果某个网格单元的计数器值不为0,则表示该网格单元是非空的;步骤2、将流场中由流线、速度为零的临界点或流场边界所包围的、任意形状和大小的封闭区域定义为虚拟拓扑区域VTA,将整个流场定义域看作一个初始VTA,用该VTA所包含的空白网格单元来描述表示这一VTA,具体方法是:用正交控制网格在初始时刻的所有网格单元来描述该VTA;如果某个VTA不包含任何空白网格单元,则认为该VTA是无效的,不在其中放置任何流线;步骤3、启动一个处理器元素,将步骤2中的初始VTA指派给该处理器元素,由该处理器元素执行步骤4‑12,完成该VTA内的流线放置以及相关处理工作;步骤4、令所指派的处理器元素当前处理的VTA为CurVTA,在CurVTA内,选取一个流线种子点,该流线种子点为CurVTA内的任意点。步骤5、根据步骤4中得到的流线种子点,计算并得到经过该点的流线;在计算流线的过程中,如果流线延伸到流场边界、速度为零的临界点、或者是计数器值已达计数上限的网格单元时,该流线的计算过程就终止;步骤6、将步骤5中得到的流线作为新流线放置到流场中,并更新该流线所涉及的控制网格单元的计数值,即将该流线所涉及的每个控制网格单元的计数值加1;步骤7、在CurVTA内,查找空白四联通区域,如果没有找到这样的区域,则表示CurVTA内的流线放置工作已经结束,转向步骤12;步骤8、对步骤7中得到的空白四联通区域进行分类,方法是:以步骤5中得到的流线的正向流动方向为参照,如果某个空白四联通区域,在该流线的左侧,则将其标记为L,否则将其标记为R;步骤9、如果步骤8中存在标记为L的空白四联通区域,则将步骤8中所有标记为L的空白四联通区域组合成一个新的VTA;如果步骤8中存在标记为R的空白四联通区域,则将步骤8中所有标记为R的空白四联通区域组合成另一个新的VTA;步骤10、根据步骤9中得到的VTA的数目,启动相应数量的处理器元素,并将步骤9中得到的VTA,分别指派给不同的处理器元素,由这些处理器元素并 行执行步骤4‑12,完成各自所负责的VTA内的流线放置以及相关处理工作;步骤11、释放当前处理的CurVTA,结束CurVTA内的流线放置以及相关处理工作;步骤12、处理器元素进入等待状态,直到被指派新的VTA而转向步骤4,或者是因其他处理器元素的处理工作都结束了而转向步骤13。步骤13、最后,结束整个并行流线放置过程,完成所有流线放置工作。
地址 100081 北京市海淀区中关村南大街5号