新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > LabVIEW編程中如何實現集合函數

        LabVIEW編程中如何實現集合函數

        作者: 時間:2017-02-27 來源:網絡 收藏

          Labview的數組操作功能是非常強大的,除了數組函數選板中提供的函數之外,信號處理函數選板中的函數實際上也是在操作數組,但是并沒有提供直接的集合函數。在MathScript中,LabVIEW提供了幾個集合相關函數。

          下面我我將利用OPENG中的數組函數實現針對一維數組的集合函數,并利用MathScript對其進行驗證。

          一、uNIque集合函數

          我首先要介紹的是unique函數。unique本意是唯一的意思,對輸入的數組去掉重復的元素,形成新的數組,新數組中的所有元素都是唯一的,各不相同。

          OPENG中直接提供了這樣的函數,函數名為“去除數組中的重復元素”。函數除了返回去除重復元素后的數組外,還同時返回了刪除元素的索引。具體用法見下圖。

          可以看出MathScript的Sets_unique函數對數組進行了排序而OPENG的“去除數組中的重復元素”函數并沒用進行排序,依然保持原來的次序。

          二、Union集合函數

          Union集合函數實現的是兩個集合的并集。對LABVIEW來說,是合并兩個一維數組,并去除其中重復元素。具體用法見下圖:

          在一、二中,我使用了OPENG中的“去除數組中重復元素”函數,該函數的程序框圖如下圖所示:

          該函數是通過搜索數組元素的方法實現的。首先構造一個相同類型的空數組,對于輸入數組中的沒一個元素,搜索構造的數組中是否存在該元素,如果不存在,則該元素進入構造的數組。

          三、intersect集合函數

          intersect集合函數返回兩個集合的交集。對于兩個一維數組,intersect函數返回兩個數組中的公共元素。

          四、DIFF集合函數

          DIFF函數返回兩個集合中去除公共部分余下的元素。OPENG中的“過濾一維數組”函數實現的正好是DIFF函數的功能,如下圖所示:

          五、XOR集合函數

          XOR集合函數返回一個集合,該集合中的元素要么屬于輸入集合1,要么屬于輸入集合2.。對于LABVIEW中的兩個一維數組,返回兩個數組合并后去除公共元素后的數組。

          上面我利用OPENG中的數組函數實現了集合中的幾個常用函數,顯然MATHSCRIPT要方便的多。而且MATHSCRIPT中的集合函數一般都支持矩陣運算,因此對于二維數組同樣適用。同時MATHSCRIPT已經支持RT結構,相信其用途會越來越廣。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 镇赉县| 武冈市| 乐亭县| 重庆市| 四平市| 阿合奇县| 昭通市| 舒兰市| 柳州市| 嘉黎县| SHOW| 德令哈市| 霍山县| 马尔康县| 贞丰县| 永德县| 达州市| 宜良县| 平顶山市| 阳曲县| 河池市| 合肥市| 乐东| 浮山县| 阳春市| 莱芜市| 秀山| 高密市| 濮阳市| 阿勒泰市| 闽清县| 韶山市| 荃湾区| 平和县| 巩义市| 祁阳县| 高州市| 定安县| 科技| 昂仁县| 边坝县|