首页 百科知识 组件划分与集成

组件划分与集成

时间:2022-05-05 百科知识 版权反馈
【摘要】:组件划分与集成6.3.1 MCGEMS组件划分与集成MCGEMS以组件的方式进行构建开发。该组件很好地实现了数据与计算过程相分离,减弱了MCGEMS各个过程组件之间的耦合。通过模型数据组件减少了过程运算组件与用户之间的相关性,支持模型过程组件集成。模型数据组件负责整个模型与外部数据交互,并对MCGEMS接口提供的外部输入数据进行有效性、精度的检查。

组件划分与集成

6.3.1 MCGEMS组件划分与集成

MCGEMS以组件的方式进行构建开发。依据模型处理过程以及基于模型实体与模型数据分离的原则,设计的MCGEMS由五个组件组成,即风化过程组件、坡面过程组件、冲积沟谷河流过程组件、基岩沟谷河流过程组件以及模型数据组件,其中模型数据组件对其他四个组件的输入、输出、中间值与参数状态变量进行管理。MCGEMS组件结构如图6.2所示。

img110

图6.2 MCGEMS组件结构

风化过程组件根据物理与化学过程引起的基岩风化速率对风化层厚度变化进行计算,计算结果作为中间结果通过模型数据组件进行管理。该组件包括状态查询接口、过程运算接口、状态变量接口。见图6.3。

坡面过程组件计算由于降雨击溅与风化层物质运动等坡面扩散过程所引起的侵蚀或沉积。坡面过程主要包括坡面扩散过程和坡面不稳定性过程。计算结果同样作为中间结果通过模型数据组件进行管理。该组件包括状态查询接口、过程运算接口、状态变量接口。见图6.4。

img111

图6.3 风化过程组件接口

img112

图6.4 坡面过程组件接口

河流侵蚀包括两个过程:一是受分离限制侵蚀,这类侵蚀主要发生在陡峭的沟谷中,泥沙流量小于水流输移能力;二是受搬运限制侵蚀,这类侵蚀主要发生在坡度较低的冲积沟谷中,沟(河)床由松散的沉积物组成。冲积沟谷河流过程组件计算冲积沟谷中受搬运限制的侵蚀或沉积过程。计算结果同样作为中间结果通过模型数据组件进行管理。该组件包括状态查询接口、过程运算接口、状态变量接口。见图6.5。

基岩沟谷河流过程组件计算冲积沟谷中受分离限制的侵蚀或沉积过程。计算结果通过模型数据组件进行保存,既可以作为重新计算的中间结果,也可以作为模型计算的最终结果返回给用户。该组件包括状态查询接口、过程运算接口、状态变量接口。见图6.6。

img113

图6.5 冲击沟谷河流过程组件接口

img114

图6.6 基岩沟谷河流过程组件接口

模型数据组件管理整个模型服务中所有的数据和状态变量,包括输入的DEM数据,各个过程组件产生的中间结果和最终结果,以及模型计算所需要的参数和状态变量。该组件很好地实现了数据与计算过程相分离,减弱了MCGEMS各个过程组件之间的耦合。见图6.7。

img115

图6.7 模型数据管理组件接口

MCGEMS组件集成。小流域地貌演化模型服务通过五个组件进行搭建。使用组件形式,模型服务具有更强的灵活性,可以通过简单地替换组件获得不同的功能或得到更好的运算效率。

模型服务将整个模型的运算过程根据地貌演化划分为四个独立的运算过程,并使用模型数据组件管理各过程组件数据,这种方式不仅实现了四个过程组件之间的松耦合,更使得模型数据和模型运算过程相分离。通过模型数据组件减少了过程运算组件与用户之间的相关性,支持模型过程组件集成。

模型数据组件负责整个模型与外部数据交互,并对MCGEMS接口提供的外部输入数据进行有效性、精度的检查。MCGEMS不仅可以通过它得到整个模型运算的最终结果,还可以选择性地得到模型运算过程中各个组件的中间结果,以便进行更好的分析。同时,模型数据组件负责管理模型内部的所有数据,为内部的各个过程组件提供运算所需要的数据,保存运算的中间结果。通过模型数据组件屏蔽了模型内部数据获取与保存方式,过程处理组件通过模型数据组件透明访问数据,完全不用关心数据来自远程数据库还是本地的文件系统。除此之外,模型数据组件还提供了状态变量设定接口,通过该接口可以获取MCGEMS接口设定的状态变量,并存成一个profile,过程组件则通过模型数据组件读取用户设定的状态变量,进行过程运算。

四个过程组件除了过程运算接口和状态变量设定接口之外,还提供状态查询接口,可以据此得到过程运算输入数据和中间过程数据的标识,然后MCGEMS可以根据标识通过模型数据组件获得数据。对于大多数用户来说,MCGEMS的内部组件是透明的,而不必关心模型服务内部是怎样进行模型运算。过程组件接口以及模型数据组件接口由模型服务内部调用,不对用户开放。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈