CN103970941A - 一种基于网络机群的散生竹地下根茎并行模拟仿真方法 - Google Patents
一种基于网络机群的散生竹地下根茎并行模拟仿真方法 Download PDFInfo
- Publication number
- CN103970941A CN103970941A CN201410164391.0A CN201410164391A CN103970941A CN 103970941 A CN103970941 A CN 103970941A CN 201410164391 A CN201410164391 A CN 201410164391A CN 103970941 A CN103970941 A CN 103970941A
- Authority
- CN
- China
- Prior art keywords
- task
- modeling
- growth
- node
- nodes
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 108
- 235000017166 Bambusa arundinacea Nutrition 0.000 title claims abstract description 85
- 235000017491 Bambusa tulda Nutrition 0.000 title claims abstract description 85
- 235000015334 Phyllostachys viridis Nutrition 0.000 title claims abstract description 85
- 241001330002 Bambuseae Species 0.000 title claims abstract description 84
- 239000011425 bamboo Substances 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000009877 rendering Methods 0.000 claims abstract description 26
- 230000012010 growth Effects 0.000 claims description 128
- 210000003899 penis Anatomy 0.000 claims description 66
- 238000004364 calculation method Methods 0.000 claims description 52
- 238000004891 communication Methods 0.000 claims description 25
- 230000003993 interaction Effects 0.000 claims description 20
- 241000196324 Embryophyta Species 0.000 claims description 18
- 210000003495 flagella Anatomy 0.000 claims description 13
- 230000000442 meristematic effect Effects 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 9
- 238000000354 decomposition reaction Methods 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- 230000008635 plant growth Effects 0.000 claims description 3
- 230000002786 root growth Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005094 computer simulation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 241000209128 Bambusa Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于网络机群的散生竹地下根茎并行模拟仿真方法,属于计算机模拟仿真技术领域。本发明将散生竹地下根茎模拟仿真分为鞭根生长建模、图形绘制渲染、任务调度管理3部分,将3部分任务分开并分配给网络机群中不同计算机并行完成,每一台计算机称为一个计算节点,各节点以交换机相互连接,构成网络机群系统。本发明解决了散生竹地下根茎模拟仿真数据量大、速度慢、实时性差的技术问题;可适应规模较大的散生竹林地下根茎根系模拟仿真任务。
Description
技术领域
本发明涉及一种基于网络机群的散生竹地下根茎并行模拟仿真方法,属于计算机模拟仿真技术领域。
背景技术
运用计算机模型开展植物根系生长模拟仿真研究已有较长历史。
目前,这些根系模拟仿真模型,在计算机算法实现中大多基于单路处理器、串行计算的构架,可以较好的满足单株植物根系模拟仿真需要。但在较大规模的散生竹林地下根茎模拟仿真中,涉及到大量的鞭根模拟模型,使数据量和计算量增加,存在计算量大、效率低、实时性差等问题,串行算法难以满足这一需求,而传统的利用多处理器构成的超级计算机过于昂贵。
并行仿真在解决大规模复杂系统仿真方面的效率和优势是公认的,如军事演习、空中交通管制、虚拟世界度等方面的应用,但将其用于植物根系生长模拟仿真方面的研究非常有限。针对这一问题,本发明提供一种基于价格低廉的网络计算机群系统,用于散生竹地下根茎的并行模拟仿真方法,以解决串行仿真时数据量大、速度慢、实时性差的问题。
发明内容
本发明提供了一种基于网络机群的散生竹地下根茎并行模拟仿真方法,以用于解决串行仿真时数据量大、速度慢、实时性差的问题。
本发明的技术方案是:一种基于网络机群的散生竹地下根茎并行模拟仿真方法,所述方法的具体步骤如下:
A、将散生竹地下根茎模拟仿真分为鞭根生长建模、图形绘制渲染、任务调度管理3部分,将3部分任务分开并分配给网络机群中不同计算机并行完成,每一台计算机称为一个计算节点,各节点以交换机相互连接,构成网络机群系统;其中,执行任务调度管理的节点为任务管理节点,执行鞭根生长建模计算任务的节点为建模节点,执行图形绘制渲染任务的节点为图形节点;
B、用户通过用户交互模块登录系统,提出所要完成的仿真任务,并输入全局仿真参数,以及鞭根系统的几何构型参数和生长参数,用户交互模块生成全局仿真任务数据包,通过网络通信模块传送给任务管理节点;
C、任务调度管理模块接收发送到任务管理节点上的全局仿真任务,分别对全局仿真任务进行任务划分、任务管理:首先按照任务划分模式分析并划分为多个生长建模计算子任务,生成生长建模计算子任务数据包,存储于任务队列中;然后按照任务管理模式监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,将任务队列中待分配的子任务合理的分配到各建模节点,通过网络通信模块将子任务数据包传送给各建模节点;
D、建模计算模块接收分配到建模节点的生长建模计算子任务,按照并行生长建模机制负责完成本节点上所有子任务的建模计算工作,然后将建模计算结果通过网络通信模块发送回任务调度管理节点进行汇总分析,同时,通过网络通信模块将三维图形指令发送至图形节点进行三维绘制与渲染,得到可视化的仿真结果;
E、任务调度管理模块接收到各建模节点返回的建模计算结果后,对总根长、根体积、根表面积结果进行分析汇总,计算得到总根长、根体积、根表面积分布指数,并将结果反馈给用户交互模块供用户查阅;
F、图形绘制渲染模块接收发送到图形节点的三维图形指令,按照指令进行三维绘制与渲染,得到可视化的仿真结果;其中工作流程包括绘图指令接收、绘图指令识别、指令参数匹配、绘图指令执行和图形结果显示;
其中,用户交互模块可运行于能访问网络机群系统的任何一台终端计算机上,任务调度管理模块运行于任务管理节点上,建模计算模块运行于建模节点上,图形绘制渲染模块运行于图形节点上,网络通信模块运行于所有节点上实现节点间的相互通信。
所述图形节点通常为配置专业图形加速卡的图形工作站。
所述步骤B中,全局仿真参数为仿真时间期限、时间步长、植株数量、各植株生长空间起始位置、长度单位;鞭根系统几何构型参数和生长参数包括竹鞭节长,竹鞭的轴向生长方向、轴向生长速率和径向生长速率,竹鞭岔鞭角度和岔鞭间距;鞭根的分枝角度和分枝间距、轴向生长方向、生长速率和径向生长速率。
所述步骤C中,任务划分模式为:采用功能分解法对全局生长建模计算任务进行任务分割,任务粒度分为2级,以单鞭的生长及其下的各级鞭根为主任务粒度,以鞭根的生长及其下的各级子鞭根为辅助任务粒度;其中,优先以主任务粒度为单位,把整体建模任务有效分割成若干建模子任务,存储于任务队列中由任务管理模式分配给不同的建模节点完成;当机群系统规模较大、空闲建模节点较多时,将负荷较大的建模子任务以辅助任务粒度为单位进一步细分为更小的子任务,分配到空闲建模节点上;
任务管理模式为:任务管理节点建有全局任务管理表,存有各建模节点当前的任务数量、内存资源消耗及CUP负荷状况信息,通过全局任务管理表监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,对任务队列中所有子任务进行分配和管理,确保建模各节点的负载平衡:如果待分配的子任务数量少于或等于建模节点数时,两者间直接进行映射;当子任务数量大于建模节点数时,考虑任务调度与负载平衡的问题,优先分配到任务负荷小的节点;每分配完成一项子任务后将其从任务队列中删除,并更新全局任务管理表;各建模节点建有局部任务管理表,存有该建模节点当前的子任务数量、内存资源消耗及CUP负荷状况信息,维护本地任务资源,局部、全局任务管理表之间保持同步更新,以便全局任务管理表能及时准确反映各建模节点的任务负荷状况。
所述步骤D中,并行生长建模机制的具体步骤如下:
D1、任务管理节点根据用户交互模块提供的任务数据包,读取鞭根系统生长模型的几何构型参数及生长参数,设定仿真时限、时间步长、鞭根系统植株数量及其在三维坐标空间的初始生长位置方向,初始化仿真任务,进行任务分解,生成任务队列;
D2、任务管理节点进行任务调度管理,将任务队列中的子任务分配到建模节点;
D3、建模节点接收子任务,根据子任务的类别,创建竹鞭或鞭根对象,将其加入生长队列;
D4、在建模节点,以仿真时间步长为时序,逐一完成生长队列中竹鞭及鞭根的单位时间生长;
D5、判断其当前时序下生长队列中各竹鞭及鞭根的生长状态:
对于竹鞭,首先判断是否满足分生新鞭节的条件,如满足则分生新鞭节并记录在当前竹鞭对象中,否则保持继续分生状态使原节间伸长;其次判断是否满足岔鞭条件,如满足则计算岔鞭参数,并生成建模子任务请求发送给任务调度管理节点进行处理;最后判断是否满足分生鞭根条件,如满足则计算分根参数并创建鞭根对象,将其加入生长队列;
对于鞭根,判断是否满足分枝下级鞭根的条件,如满足则计算分根参数并创建下级鞭根对象,将其加入生长队列;
D6、建模节点按照时间步长增加仿真时间,进入下一时序,返回到步骤D3,直至到达仿真时间终点;
D7、按照以上步骤,沿着仿真时序,鞭根系统不断生长,得到单轴散生竹地下根茎在三维空间中的整个拓扑结构和几何形态特征。
本发明的工作原理是:
(1)散生竹地下根茎生长模型
散生竹地下根茎系统主要由竹鞭和鞭根两者的生长构成。鞭笋分生伸长,鞭笋后部鞭箨脱落成鞭环,从而出节,节间分生,鞭梢逐渐形成,鞭梢具节,节上生侧芽和鞭根,侧芽或成笋,长竹,或当本来的鞭笋的生长过程中遇外界因素而停滞生长时,侧芽则萌发分化成岔鞭(一级岔鞭);岔鞭上又会遵循同样的规律,生成更次一级的岔鞭(二级岔鞭),以此类推。鞭根的生长遵循类似须根系的生长规律,在鞭节处分生大量细小而均匀的不定根即为鞭根,根系成须状,鞭根上面也可以进一步分生出次级侧根,次级侧根还可继续分生下一级侧根。
散生竹地下根茎具有典型的分形特征,使其地下组织类似一个倒向放置的轴向树,可以利用倒置的轴向树结构来描述其根茎的拓扑结构。如附图5所示,散生竹地下根茎空间拓扑结构为:主鞭上从鞭节的部位分生出一级岔鞭和鞭根,一级岔鞭生长过程中又从它本身的鞭节上分生出二级岔鞭和鞭根,二级岔鞭的生长过程中又继续分生出岔鞭和鞭根,以此类推。根据以上空间拓扑结构特点,可以用根轴来描述竹鞭和鞭根。根轴是由一系列生长方向不同的直线型的根段组成,这些根段代表根轴在单位步长段内的生长情况,只需知道生长点及终止点两点坐标就可以确定根段的空间位置。
(2)三维可视化模型
由于根系外部形状通常表现为根尖细末端粗,即同一根段底部半径比顶部半径大,因此根轴一般都呈圆台型(根尖部视为上底面逼近于零的圆台)。可用许多个绕轴线的圆台的组合来近似模拟根轴,如附图6所示。圆台的侧面展开近似于一个多边形,可以将其细分为一系列相互连接的三角形网格,如附图7所示为圆台侧面的三角形展开。这样就可以利用OpenGL中的基本图元命令三角形来表示圆台。在实际的绘制中,顺序导入多边形顶点的法向量和坐标,即可对其所构成的三角形网格进行定位,实现根段的三维建模。对每个根段(圆台)加以OpenGL的平滑、光照、颜色、材质、纹理等处理,最终绘制出具有较强真实感的各级竹鞭、鞭根,乃至整个地下根茎系统。
竹林地下根茎形态与其他植物明显区别之一就是:无论竹鞭、岔鞭,鞭梢上都有节,节的横截面也是圆形,则它的生长机模型也由多个圆台组合而成,而节突出于竹鞭鞭梢,所以构成它的圆台上下底半径分别大于与它们所相邻的竹鞭横断面圆台的半径。如前所述侧芽和鞭根都是从节上萌发分生出来的,为了体现这一特点,在程序设计时,在竹鞭对象当中定义了isJoint整形变量,isJoint=1时表示该处有鞭节,isJoint=0时表示无鞭节。竹鞭在地下横向蔓延伸长的过程中,达到节长时,除了考虑是否分生岔鞭和鞭根外,还要设置该参数为1,表示该处有鞭节,渲染绘制时根据该参数的设置调用相关绘图函数绘制鞭节上的箨环和鞭环。
(3)总根长、根体积、根表面积及指数分布的计算方法
总根长L length 等于地下根茎中所有根段长度的总和,计算公式如下:
其中:某一根段(AB)长度的计算是依据根段起始点坐标A(x 1,y 1,z 1)和终结点坐标B(x 2,y 2,z 2)而确定的。具体计算公式如下:
其中,l AB 为A,B两点之间的长度。
总体积V volume 等于地下根茎中所有根段的圆台的体积之和,计算公式如下:
其中:l是根段的长度,可以通过根段的纵向伸展速率与长度步长相乘而获得;r 1,r 2是圆台上下底面的半径,可以通过根段的横向伸展速率与长度步长相乘而获得。
总表面积S area 等于地下根茎中所有根段的圆台的侧面积之和,计算公式如下:
总根长分布指数L r 是指单位地表面积下的根系长度,是描述根系数量的重要参数。首先计算所有根段的总长度L及根系分布的矩形面积S,则根长指数L r (cm﹒cm-2)计算公式为:
L r = L/S
其中,S为根系分布的矩形面积,其计算公式为:
其中,L x 为根系x坐标的分布范围;L z 为根系z坐标的分布范围。
同理,根表面积分布指数S r 和根体积分布指数V r 的计算公式分别为:
本发明的有益效果是:
(1)采用基于网络机群的并行模拟仿真方法,可以缩短仿真时间,提高任务实时性,降低对单个计算机的资源消耗,提高建模计算效率,解决了散生竹地下根茎模拟仿真数据量大、速度慢、实时性差的技术问题。
(2)本方法的软硬件成本低,便于应用普及,系统规模具有伸缩性,可适应规模较大的散生竹林地下根茎根系模拟仿真任务。
附图说明
图1是本发明的并行仿真方法总体结构图;
图2是本发明的任务管理模式图;
图3是本发明的并行生长建模机制图;
图4是本发明的图形绘制渲染模块运行流程图;
图5是本发明中工作原理的单轴散生竹地下根茎的拓扑结构图;
图6是本发明中工作原理的组成根轴的根段图;
图7是本发明中工作原理的根段圆台表面展开三角形网络图;
图8是本发明中实施例2的三维可视化渲染绘制图;
图9是本发明中实施例2的建模节点仿真时间消耗图;
图10是本发明中实施例2的建模节点内存消耗图。
具体实施方式
实施例1:如图1-10所示,一种基于网络机群的散生竹地下根茎并行模拟仿真方法,所述方法的具体步骤如下:
A、将散生竹地下根茎模拟仿真分为鞭根生长建模、图形绘制渲染、任务调度管理3部分,将3部分任务分开并分配给网络机群中不同计算机并行完成,每一台计算机称为一个计算节点,各节点以交换机相互连接,构成网络机群系统;其中,执行任务调度管理的节点为任务管理节点,执行鞭根生长建模计算任务的节点为建模节点,执行图形绘制渲染任务的节点为图形节点;
B、用户通过用户交互模块登录系统,提出所要完成的仿真任务,并输入全局仿真参数,以及鞭根系统的几何构型参数和生长参数,用户交互模块生成全局仿真任务数据包,通过网络通信模块传送给任务管理节点:
所述步骤B中,全局仿真参数为仿真时间期限、时间步长、植株数量、各植株生长空间起始位置、长度单位;鞭根系统几何构型参数和生长参数包括竹鞭节长,竹鞭的轴向生长方向、轴向生长速率和径向生长速率,竹鞭岔鞭角度和岔鞭间距;鞭根的分枝角度和分枝间距、轴向生长方向、生长速率和径向生长速率。
C、任务调度管理模块接收发送到任务管理节点上的全局仿真任务,分别对全局仿真任务进行任务划分、任务管理:首先按照任务划分模式分析并划分为多个生长建模计算子任务,生成生长建模计算子任务数据包,存储于任务队列中;然后按照任务管理模式监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,将任务队列中待分配的子任务合理的分配到各建模节点,通过网络通信模块将子任务数据包传送给各建模节点:
所述步骤C中,任务划分模式为:采用功能分解法对全局生长建模计算任务进行任务分割,任务粒度分为2级,以单鞭的生长及其下的各级鞭根为主任务粒度,以鞭根的生长及其下的各级子鞭根为辅助任务粒度;其中,优先以主任务粒度为单位,把整体建模任务有效分割成若干建模子任务,存储于任务队列中由任务管理模式分配给不同的建模节点完成;当机群系统规模较大、空闲建模节点较多时,将负荷较大的建模子任务以辅助任务粒度为单位进一步细分为更小的子任务,分配到空闲建模节点上;
任务管理模式为:任务管理节点建有全局任务管理表,存有各建模节点当前的任务数量、内存资源消耗及CUP负荷状况信息,通过全局任务管理表监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,对任务队列中所有子任务进行分配和管理,确保建模各节点的负载平衡:如果待分配的子任务数量少于或等于建模节点数时,两者间直接进行映射;当子任务数量大于建模节点数时,考虑任务调度与负载平衡的问题,优先分配到任务负荷小的节点;每分配完成一项子任务后将其从任务队列中删除,并更新全局任务管理表;各建模节点建有局部任务管理表,存有该建模节点当前的子任务数量、内存资源消耗及CUP负荷状况信息,维护本地任务资源,局部、全局任务管理表之间保持同步更新,以便全局任务管理表能及时准确反映各建模节点的任务负荷状况。
D、建模计算模块接收分配到建模节点的生长建模计算子任务,按照并行生长建模机制负责完成本节点上所有子任务的建模计算工作,然后将建模计算结果通过网络通信模块发送回任务调度管理节点进行汇总分析,同时,通过网络通信模块将三维图形指令发送至图形节点进行三维绘制与渲染,得到可视化的仿真结果:
所述步骤D中,并行生长建模机制的具体步骤如下:
D1、任务管理节点根据用户交互模块提供的任务数据包,读取鞭根系统生长模型的几何构型参数及生长参数,设定仿真时限、时间步长、鞭根系统植株数量及其在三维坐标空间的初始生长位置方向,初始化仿真任务,进行任务分解,生成任务队列;
D2、任务管理节点进行任务调度管理,将任务队列中的子任务分配到建模节点;
D3、建模节点接收子任务,根据子任务的类别,创建竹鞭或鞭根对象,将其加入生长队列;
D4、在建模节点,以仿真时间步长为时序,逐一完成生长队列中竹鞭及鞭根的单位时间生长;
D5、判断其当前时序下生长队列中各竹鞭及鞭根的生长状态:
对于竹鞭,首先判断是否满足分生新鞭节的条件,如满足则分生新鞭节并记录在当前竹鞭对象中,否则保持继续分生状态使原节间伸长;其次判断是否满足岔鞭条件,如满足则计算岔鞭参数,并生成建模子任务请求发送给任务调度管理节点进行处理;最后判断是否满足分生鞭根条件,如满足则计算分根参数并创建鞭根对象,将其加入生长队列;
对于鞭根,判断是否满足分枝下级鞭根的条件,如满足则计算分根参数并创建下级鞭根对象,将其加入生长队列;
D6、建模节点按照时间步长增加仿真时间,进入下一时序,返回到步骤D3,直至到达仿真时间终点;
D7、按照以上步骤,沿着仿真时序,鞭根系统不断生长,得到单轴散生竹地下根茎在三维空间中的整个拓扑结构和几何形态特征。
E、任务调度管理模块接收到各建模节点返回的建模计算结果后,对总根长、根体积、根表面积结果进行分析汇总,计算得到总根长、根体积、根表面积分布指数,并将结果反馈给用户交互模块供用户查阅;
F、图形绘制渲染模块接收发送到图形节点的三维图形指令,按照指令进行三维绘制与渲染,得到可视化的仿真结果;其中工作流程包括绘图指令接收、绘图指令识别、指令参数匹配、绘图指令执行和图形结果显示;
其中,用户交互模块可运行于能访问网络机群系统的任何一台终端计算机上,任务调度管理模块运行于任务管理节点上,建模计算模块运行于建模节点上,图形绘制渲染模块运行于图形节点上,网络通信模块运行于所有节点上实现节点间的相互通信。
所述图形节点通常为配置专业图形加速卡的图形工作站。
实施例2:如图1-10所示,一种基于网络机群的散生竹地下根茎并行模拟仿真方法,所述方法的具体步骤如下:
A、构建网络机群系统,确定计算机网络机群中各节点机的数量,如图1所示。其中,任务管理节点1个,建模节点6个,图形节点为配置专业图形加速卡的图形工作站,数量1个。将软件功能模块安装到各节点上。用户交互模块可运行于能访问网络机群系统的任何一台终端计算机上,任务调度管理模块运行于任务管理节点上,建模计算模块运行于建模节点上,图形绘制渲染模块运行于图形节点上,网络通信模块运行于所有节点上实现节点间的相互通信。确保网络机群中各节点机之间通信良好。
B、选定一种散生竹对象,通过野外自然生长状况下的实验观察或查阅资料文献确定其鞭根系统的几何构型参数和生长参数,包括:竹鞭节长,竹鞭的轴向生长方向、轴向生长速率和径向生长速率,竹鞭岔鞭角度和岔鞭间距;鞭根的分枝角度和分枝间距、轴向生长方向、生长速率和径向生长速率。通过观察统计得到这些构型参数的平均值及偏差范围。
通过用户交互模块登录系统,提出所要完成的仿真任务,并输入全局仿真参数(仿真时间期限、时间步长、植株数量、各植株生长空间起始位置、长度单位),以及鞭根系统的几何构型参数和生长参数,用户交互模块生成全局仿真任务数据包,通过网络通信模块传送给任务管理节点。
C、任务调度管理模块接收发送到任务管理节点上的全局仿真任务,分别对全局仿真任务进行任务划分、任务管理:首先按照任务划分模式分析并划分为多个生长建模计算子任务,生成生长建模计算子任务数据包,存储于任务队列中;然后按照任务管理模式监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,将任务队列中待分配的子任务合理的分配到各建模节点,如图2所示,通过网络通信模块将子任务数据包传送给各建模节点:
所述步骤C中,任务划分模式为:采用功能分解法对全局生长建模计算任务进行任务分割,任务粒度分为2级,以单鞭的生长及其下的各级鞭根为主任务粒度,以鞭根的生长及其下的各级子鞭根为辅助任务粒度;其中,优先以主任务粒度为单位,把整体建模任务有效分割成若干建模子任务,存储于任务队列中由任务管理模式分配给不同的建模节点完成;当机群系统规模较大、空闲建模节点较多时,将负荷较大的建模子任务以辅助任务粒度为单位进一步细分为更小的子任务,分配到空闲建模节点上;
任务管理模式为:任务调度管理节点建有全局任务管理表,存有各建模节点当前的任务数量、内存资源消耗及CUP负荷状况信息,通过全局任务管理表监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,对任务队列中所有子任务进行分配和管理,确保建模各节点的负载平衡。如果待分配的子任务数量少于或等于建模节点数时,两者间直接进行映射;当子任务数量大于建模节点数时,考虑任务调度与负载平衡的问题,优先分配到任务负荷小的节点。每分配完成一项子任务后将其从任务队列中删除,并更新全局任务管理表。此外,在仿真过程中,由于各建模节点的任务负荷及资源消耗状态是动态变化的,因此各建模节点建有局部任务管理表,存有该建模节点当前的子任务数量、内存资源消耗及CUP负荷状况信息,维护本地任务资源,局部、全局任务管理表之间保持同步更新,以便全局任务管理表能及时准确反映各建模节点的任务负荷状况。
D、建模计算模块接收分配到建模节点的生长建模计算子任务,按照并行生长建模机制负责完成本节点上所有子任务的建模计算工作,如图3所示,然后将建模计算结果通过网络通信模块发送回任务调度管理节点进行汇总分析,同时,通过网络通信模块将三维图形指令发送至图形节点进行三维绘制与渲染,得到可视化的仿真结果:
所述步骤D中,并行生长建模机制的具体步骤如下:
D1、任务管理节点根据用户交互模块提供的任务数据包,读取鞭根系统生长模型的几何构型参数及生长参数,设定仿真时限、时间步长、鞭根系统植株数量及其在三维坐标空间的初始生长位置方向,初始化仿真任务,进行任务分解,生成任务队列;
D2、任务管理节点进行任务调度管理,将任务队列中的子任务分配到建模节点;
D3、建模节点接收子任务,根据子任务的类别,创建竹鞭或鞭根对象,将其加入生长队列;
D4、在建模节点,以仿真时间步长为时序,逐一完成生长队列中竹鞭及鞭根的单位时间生长;
D5、判断其当前时序下生长队列中各竹鞭及鞭根的生长状态:
对于竹鞭,首先判断是否满足分生新鞭节的条件,如满足则分生新鞭节并记录在当前竹鞭对象中,否则保持继续分生状态使原节间伸长;其次判断是否满足岔鞭条件,如满足则计算岔鞭参数,并生成建模子任务请求发送给任务调度管理节点进行处理;最后判断是否满足分生鞭根条件,如满足则计算分根参数并创建鞭根对象,将其加入生长队列;
对于鞭根,判断是否满足分枝下级鞭根的条件,如满足则计算分根参数并创建下级鞭根对象,将其加入生长队列;
D6、建模节点按照时间步长增加仿真时间,进入下一时序,返回到步骤D3,直至到达仿真时间终点;
D7、按照以上步骤,沿着仿真时序,鞭根系统不断生长,得到单轴散生竹地下根茎在三维空间中的整个拓扑结构和几何形态特征。
E、任务调度管理模块接收到各建模节点返回的建模计算结果后,对总根长、根体积、根表面积结果进行分析汇总,计算得到总根长、根体积、根表面积分布指数,并将结果反馈给用户交互模块供用户查阅。
F、图形绘制渲染模块接收发送到图形节点的三维图形指令,按照指令进行三维绘制与渲染,得到可视化的仿真结果图8;其中工作流程包括绘图指令接收、绘图指令识别、指令参数匹配、绘图指令执行和图形结果显示,如图4所示:
从图9-10仿真结果来看,在同样的散生竹地下根茎生长株数下,随着建模节点数量增加,仿真任务被有效分解到各建模节点,仿真时间和内存消耗快速下降,多节点并行仿真整体效率明显提高。这也验证了本方法的有益性和正确性。
上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (5)
1.一种基于网络机群的散生竹地下根茎并行模拟仿真方法,其特征在于:所述方法的具体步骤如下:
A、将散生竹地下根茎模拟仿真分为鞭根生长建模、图形绘制渲染、任务调度管理3部分,将3部分任务分开并分配给网络机群中不同计算机并行完成,每一台计算机称为一个计算节点,各节点以交换机相互连接,构成网络机群系统;其中,执行任务调度管理的节点为任务管理节点,执行鞭根生长建模计算任务的节点为建模节点,执行图形绘制渲染任务的节点为图形节点;
B、用户通过用户交互模块登录系统,提出所要完成的仿真任务,并输入全局仿真参数,以及鞭根系统的几何构型参数和生长参数,用户交互模块生成全局仿真任务数据包,通过网络通信模块传送给任务管理节点;
C、任务调度管理模块接收发送到任务管理节点上的全局仿真任务,分别对全局仿真任务进行任务划分、任务管理:首先按照任务划分模式分析并划分为多个生长建模计算子任务,生成生长建模计算子任务数据包,存储于任务队列中;然后按照任务管理模式监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,将任务队列中待分配的子任务合理的分配到各建模节点,通过网络通信模块将子任务数据包传送给各建模节点;
D、建模计算模块接收分配到建模节点的生长建模计算子任务,按照并行生长建模机制负责完成本节点上所有子任务的建模计算工作,然后将建模计算结果通过网络通信模块发送回任务调度管理节点进行汇总分析,同时,通过网络通信模块将三维图形指令发送至图形节点进行三维绘制与渲染,得到可视化的仿真结果;
E、任务调度管理模块接收到各建模节点返回的建模计算结果后,对总根长、根体积、根表面积结果进行分析汇总,计算得到总根长、根体积、根表面积分布指数,并将结果反馈给用户交互模块供用户查阅;
F、图形绘制渲染模块接收发送到图形节点的三维图形指令,按照指令进行三维绘制与渲染,得到可视化的仿真结果;其中工作流程包括绘图指令接收、绘图指令识别、指令参数匹配、绘图指令执行和图形结果显示;
其中,用户交互模块可运行于能访问网络机群系统的任何一台终端计算机上,任务调度管理模块运行于任务管理节点上,建模计算模块运行于建模节点上,图形绘制渲染模块运行于图形节点上,网络通信模块运行于所有节点上实现节点间的相互通信。
2.根据权利要求1所述的基于网络机群的散生竹地下根茎并行模拟仿真方法,其特征在于:所述图形节点通常为配置专业图形加速卡的图形工作站。
3.根据权利要求1所述的基于网络机群的散生竹地下根茎并行模拟仿真方法,其特征在于:所述步骤B中,全局仿真参数为仿真时间期限、时间步长、植株数量、各植株生长空间起始位置、长度单位;鞭根系统几何构型参数和生长参数包括竹鞭节长,竹鞭的轴向生长方向、轴向生长速率和径向生长速率,竹鞭岔鞭角度和岔鞭间距;鞭根的分枝角度和分枝间距、轴向生长方向、生长速率和径向生长速率。
4.根据权利要求1所述的基于网络机群的散生竹地下根茎并行模拟仿真方法,其特征在于:所述步骤C中,任务划分模式为:采用功能分解法对全局生长建模计算任务进行任务分割,任务粒度分为2级,以单鞭的生长及其下的各级鞭根为主任务粒度,以鞭根的生长及其下的各级子鞭根为辅助任务粒度;其中,优先以主任务粒度为单位,把整体建模任务有效分割成若干建模子任务,存储于任务队列中由任务管理模式分配给不同的建模节点完成;当机群系统规模较大、空闲建模节点较多时,将负荷较大的建模子任务以辅助任务粒度为单位进一步细分为更小的子任务,分配到空闲建模节点上;
任务管理模式为:任务管理节点建有全局任务管理表,存有各建模节点当前的任务数量、内存资源消耗及CUP负荷状况信息,通过全局任务管理表监测评估网络机群系统中建模节点的数量及各建模节点的负荷状态,对任务队列中所有子任务进行分配和管理,确保建模各节点的负载平衡:如果待分配的子任务数量少于或等于建模节点数时,两者间直接进行映射;当子任务数量大于建模节点数时,考虑任务调度与负载平衡的问题,优先分配到任务负荷小的节点;每分配完成一项子任务后将其从任务队列中删除,并更新全局任务管理表;各建模节点建有局部任务管理表,存有该建模节点当前的子任务数量、内存资源消耗及CUP负荷状况信息,维护本地任务资源,局部、全局任务管理表之间保持同步更新,以便全局任务管理表能及时准确反映各建模节点的任务负荷状况。
5.根据权利要求1所述的基于网络机群的散生竹地下根茎并行模拟仿真方法,其特征在于:所述步骤D中,并行生长建模机制的具体步骤如下:
D1、任务管理节点根据用户交互模块提供的任务数据包,读取鞭根系统生长模型的几何构型参数及生长参数,设定仿真时限、时间步长、鞭根系统植株数量及其在三维坐标空间的初始生长位置方向,初始化仿真任务,进行任务分解,生成任务队列;
D2、任务管理节点进行任务调度管理,将任务队列中的子任务分配到建模节点;
D3、建模节点接收子任务,根据子任务的类别,创建竹鞭或鞭根对象,将其加入生长队列;
D4、在建模节点,以仿真时间步长为时序,逐一完成生长队列中竹鞭及鞭根的单位时间生长;
D5、判断其当前时序下生长队列中各竹鞭及鞭根的生长状态:
对于竹鞭,首先判断是否满足分生新鞭节的条件,如满足则分生新鞭节并记录在当前竹鞭对象中,否则保持继续分生状态使原节间伸长;其次判断是否满足岔鞭条件,如满足则计算岔鞭参数,并生成建模子任务请求发送给任务调度管理节点进行处理;最后判断是否满足分生鞭根条件,如满足则计算分根参数并创建鞭根对象,将其加入生长队列;
对于鞭根,判断是否满足分枝下级鞭根的条件,如满足则计算分根参数并创建下级鞭根对象,将其加入生长队列;
D6、建模节点按照时间步长增加仿真时间,进入下一时序,返回到步骤D3,直至到达仿真时间终点;
D7、按照以上步骤,沿着仿真时序,鞭根系统不断生长,得到单轴散生竹地下根茎在三维空间中的整个拓扑结构和几何形态特征。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164391.0A CN103970941B (zh) | 2014-04-23 | 2014-04-23 | 一种基于网络机群的散生竹地下根茎并行模拟仿真方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410164391.0A CN103970941B (zh) | 2014-04-23 | 2014-04-23 | 一种基于网络机群的散生竹地下根茎并行模拟仿真方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103970941A true CN103970941A (zh) | 2014-08-06 |
CN103970941B CN103970941B (zh) | 2017-02-15 |
Family
ID=51240431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410164391.0A Expired - Fee Related CN103970941B (zh) | 2014-04-23 | 2014-04-23 | 一种基于网络机群的散生竹地下根茎并行模拟仿真方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103970941B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026501A (zh) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种主机图形命令生成与图形处理器命令解析联合仿真平台 |
CN113761609A (zh) * | 2021-08-12 | 2021-12-07 | 山东华云三维科技有限公司 | 一种基于服务器端的云架构cad平台实时渲染系统及方法 |
CN114383663A (zh) * | 2022-01-17 | 2022-04-22 | 湖南省林业科学院 | 一种利用深度学习的毛竹扩张程度评价和防控系统 |
CN116737384A (zh) * | 2023-06-21 | 2023-09-12 | 上海玫克生储能科技有限公司 | 电化学模型仿真计算的加速方法、存储介质及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101158986A (zh) * | 2007-11-08 | 2008-04-09 | 江南大学 | 一种竹节纱织物布面竹节分布均匀性的快速评价方法 |
-
2014
- 2014-04-23 CN CN201410164391.0A patent/CN103970941B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101158986A (zh) * | 2007-11-08 | 2008-04-09 | 江南大学 | 一种竹节纱织物布面竹节分布均匀性的快速评价方法 |
Non-Patent Citations (5)
Title |
---|
DER-GUEY LIN 等: "3-D numerical investigations into the shear strength of the soil–root system of Makino bamboo and its effect on slope stability", 《ECOLOGICAL ENGINEERING》 * |
宋安军 等: "并行计算模型在集群环境下的适应性", 《计算机工程》 * |
张云伟 等: "3种散生竹的单根抗拉力学特性", 《林业科学》 * |
徐会杰 等: "竹子地下茎-根的计算机仿真", 《计算机工程》 * |
王小伟 等: "高性能并行集群计算环境的构建与性能测试", 《小型微型计算机系统》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026501A (zh) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种主机图形命令生成与图形处理器命令解析联合仿真平台 |
CN113761609A (zh) * | 2021-08-12 | 2021-12-07 | 山东华云三维科技有限公司 | 一种基于服务器端的云架构cad平台实时渲染系统及方法 |
CN113761609B (zh) * | 2021-08-12 | 2024-04-26 | 山东华云三维科技有限公司 | 一种基于服务器端的云架构cad平台实时渲染系统及方法 |
CN114383663A (zh) * | 2022-01-17 | 2022-04-22 | 湖南省林业科学院 | 一种利用深度学习的毛竹扩张程度评价和防控系统 |
CN116737384A (zh) * | 2023-06-21 | 2023-09-12 | 上海玫克生储能科技有限公司 | 电化学模型仿真计算的加速方法、存储介质及电子设备 |
CN116737384B (zh) * | 2023-06-21 | 2024-02-27 | 上海玫克生储能科技有限公司 | 电化学模型仿真计算的加速方法、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103970941B (zh) | 2017-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103970941B (zh) | 一种基于网络机群的散生竹地下根茎并行模拟仿真方法 | |
Makowski et al. | Synthetic silviculture: multi-scale modeling of plant ecosystems | |
CN108595858A (zh) | 基于bim的轻量化深度处理工作方法 | |
CN105373909A (zh) | 一种基于仿真软件的物流配送中心选址方法 | |
CN106446351A (zh) | 一种面向实时绘制的大规模场景组织与调度技术及仿真系统 | |
Chang | A comment on the calculation of the total-factor energy efficiency (TFEE) index | |
CN107122243A (zh) | 用于cfd仿真计算的异构集群系统及cfd计算方法 | |
CN102855661B (zh) | 基于空间相似性的大规模森林场景快速生成方法 | |
US9177421B2 (en) | Hair meshes | |
CN104536803A (zh) | 一种基于组合优化的虚拟机调度方法 | |
CN105654552B (zh) | 一种面向任意分布大规模点云数据的快速Delaunay构网方法 | |
CN108537886A (zh) | 一种虚拟手术切割中的高质量网格划分和优化方法 | |
CN102289846A (zh) | 一种基于广义参数化建模的树木模拟方法 | |
CN102646287A (zh) | 一种基于场景漫游的虚拟森林仿真信息多级联动方法及其系统 | |
CN106250933A (zh) | 基于fpga的数据聚类的方法、系统及fpga处理器 | |
CN104361185A (zh) | 电缆虚拟设计用布线空间自动生成方法 | |
Peng et al. | Growth model and visualization of a virtual jujube tree | |
CN103049932B (zh) | 一种基于径向基函数的植物三维形态虚拟建模方法 | |
CN104620879B (zh) | 一种基于冠层光分布模拟的树木剪枝优化方法 | |
CN105956605B (zh) | 基于并行k-means聚类的三维结构相似性聚类方法 | |
CN108290071A (zh) | 用于在预测游戏者的意图的情况下确定用于执行绘制的资源分配的程序、电子装置、系统和方法 | |
CN101900602B (zh) | 作物冠层散射光分布计算方法 | |
CN103077554B (zh) | 基于节单位的作物交互式设计方法和系统 | |
CN113450441B (zh) | 三维虚拟模型的渲染方法、装置和电子设备 | |
CN106548512A (zh) | 网格模型数据的生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
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: 20170215 |