天天看點

《資訊實體融合系統(CPS)設計、模組化與仿真——基于 Ptolemy II 平台》——2.8 小結

本節書摘來自華章出版社《資訊實體融合系統(cps)設計、模組化與仿真——基于 ptolemy ii 平台》一書中的第2章,第2.8節,作者:[美]愛德華·阿什福德·李(edward ashford lee),更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視

本章介紹了名為vergil的ptolemy ii可視化界面,它支援通過圖形化方式構模組化型,與此同時,還介紹了ptolemy ii系統的一些基礎功能。後續章節将着重介紹各種可用的訓示器的性質。附錄部分将着重介紹計算模型的通用架構和跨計算模型的能力。

補充閱讀:處理數組的角色

下面是角色可以對數組進行的操作:

《資訊實體融合系統(CPS)設計、模組化與仿真——基于 Ptolemy II 平台》——2.8 小結

arrayaccumulate将輸入數組附加于上一數組之後,以擴大輸出數組。

arrayappend添加多重端口的信道上提供的輸入數組。

arrayaverage求數組元素的平均值。

arraycontains确定數組是否包含特定的元素。

arrayelement從一個數組中提取某個元素。

arrayelementasmatrix 使用類似矩陣的索引來提取元素。

arrayextract提取子數組。

arraylength 将輸入數組的長度輸出。

arraylevelcrossing 找出超過門檻值的元素。

arraymaximum 尋找數組中的最大元素。

arrayminimum 尋找數組中的最小元素。

arraypeaksearch尋找數組元素的峰值。

arrayremoveelement 删除某個特定元素的執行個體。

arraysort 對數組進行排序。

arraysum 對數組元素求和。

arrayupdate 輸出一個與輸入數組類似的新數組,但替換原數組的一個元素。

另外,很多多态(polymorphic)角色,如addsubtract ,也可作用于數組。

補充閱讀:移動代碼

ptolemy ii中的一些角色支援移動模型(mobile model)。也就是說,對于從一個角色傳遞到另一個角色的資料,與其說它是運作于模型上的資料,不如說它是個待執行的模型。applyfunction角色從一個輸入端口接收一個用表達式語言(見第13章)描述的函數,并将該函數作用于另一個端口(使用者必須建立這個端口)到達的資料。mobilemodel 角色從一個端口接收一個ptolemy ii模型的moml描述,然後執行該模型來處理從另一端口輸入的資料流。

《資訊實體融合系統(CPS)設計、模組化與仿真——基于 Ptolemy II 平台》——2.8 小結

圖2-44 applyfunction角色從一個端口接收函數定義,并将函數作用于到達另一個端口的資料

applyfunction 角色的使用見圖2-44。在該模型中,以交替方式為applyfunction角色提供兩個函數:一個函數計算x2,另一個函數計算2x的。這兩個函數由兩個const角色提供,可以從sources→genericsources子庫中找到。這些函數由commutator角色交替輸出,commutator在flowcontrol→aggregators子庫中。