基于MATLAB股票市場的線性預(yù)測畢業(yè)論文_第1頁
基于MATLAB股票市場的線性預(yù)測畢業(yè)論文_第2頁
基于MATLAB股票市場的線性預(yù)測畢業(yè)論文_第3頁
基于MATLAB股票市場的線性預(yù)測畢業(yè)論文_第4頁
基于MATLAB股票市場的線性預(yù)測畢業(yè)論文_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、基于MATLAB股票市場的線性預(yù)測畢業(yè)論文目錄第一章緒論一本設(shè)計研究的目的及意義1二主要研究內(nèi)容及其發(fā)展現(xiàn)狀2三論文的主要內(nèi)容及章節(jié)安排2第二章股票線性預(yù)測方法一關(guān)于線性預(yù)測及其FIR濾波器 3二股票線性預(yù)測原理3三預(yù)測模型5第三章. MATLAB及圖形用戶界面簡介1 MATLAB 簡介 72 GUI 圖形用戶界面簡介93 GUI 建 立 的 兩 大 方 法 及 其 比 較 10第四章. MATLAB程序設(shè)計及預(yù)測結(jié)果一主要程序編輯14二計算機仿真股票線性預(yù)測模型15結(jié)論 22致謝 23參考文獻 24附錄 25前言隨著計算機技術(shù)和信息科學(xué)的飛速發(fā)展,信號處理已經(jīng)逐漸成為信息科學(xué)的重要組成部分。

2、所謂的信號處理就是對信號或數(shù)據(jù)進行分析、變換、 綜合等加工處理, 以便更好地識別與應(yīng)用。信號處理的應(yīng)用已經(jīng)深入到經(jīng)濟、金融等各種領(lǐng)域中, 在涉及語音編碼、地震和頻率建模應(yīng)用的時間序列分析中,線性預(yù)測是最為廣泛的一種方法。本畢業(yè)設(shè)計借助MATLAB 的技術(shù)工具軟件對股票價格的數(shù)據(jù)信號圖進行分析,來構(gòu)造一個線性預(yù)測器。并用MATLAB 生成一個豪華的界面,把線性預(yù)測的結(jié)果直觀、明了的變現(xiàn)出來。本設(shè)計內(nèi)容在理解信號與系統(tǒng)基本原理的前提下,利用MATLAB 設(shè)計了一個線性預(yù)測系統(tǒng),該系統(tǒng)利用一個離散時間有限脈沖響應(yīng)(FIR)濾波器來解決屬于預(yù)測建模等問題。預(yù)測股票市場反面的濾波器設(shè)計問題與大多數(shù)濾波器

3、設(shè)計問題的頻域特性相反,是完全用一種最小二乘預(yù)測問題的形式在時域給予表征的, 這個最小二乘預(yù)測問題是用MATLAB 算子來求解的。這是一個基于MATLAB計算機仿真的股票線性預(yù)測模型,它用股票的開盤、收盤、最高、最低四種價位為源信號進行預(yù)測,可以用選擇濾波器的階數(shù)來調(diào)整它的精確度,能夠做到預(yù)測誤差最小。39第一章緒 論一選題目的及意義股票是股份有限公司在籌集資本時向出資人發(fā)行的股份憑證, 代表著其持有者(即股東)對股份公司的所有權(quán)。股票 至 今 已 有 將 近 似 400 年的 歷 史 , 它伴隨著股份公司的出現(xiàn)而出 現(xiàn) 。隨著 企 業(yè) 經(jīng) 營 規(guī) 模 擴 大 與資 本 需 求 不足要求一種方

4、式來讓公司獲得 大量 的資 本金 ,從 而了 以股 份公 司形 態(tài)出 現(xiàn)的 ,股東共 同出資 經(jīng)營的企業(yè)組織。股份公司的變化和發(fā)展產(chǎn)生了股票形態(tài)的融資活動; 股票 融資 的發(fā) 展產(chǎn) 生 了 股票 交易 的需 求;股票 的交 易需 求促 成了股 票市場的形成和發(fā)展;而股票市場的發(fā)展最終又促進了股票融資活動和股份公司的完善和發(fā)展。股票 最 早出 現(xiàn) 于 資 本 主 義 國 家 。世界上最早的股份有限公司制度誕 生 于1602年 在 荷 蘭 成 立 的 東 印 度 公司。股份公司這種企業(yè)組織形態(tài)出現(xiàn)以后,很快為資本主義國家廣泛利用,成為資本主義國家企業(yè)組織的重要形式之一。伴隨著股份公司的誕生和發(fā)展,

5、以股票形式集資入股的方式也得到發(fā)展,并且產(chǎn)生了買賣交易轉(zhuǎn)讓股票的需求。這樣,就帶動了股票市場的出現(xiàn)和形成,并促使股票市場完善和發(fā)展。 1611年, 東 印度公司的 股東 們在 阿姆斯特丹股票交易所就進行著股票 交 易,并 且后來有了專門的經(jīng)紀(jì) 人撮合交易。阿姆斯特丹股票交易所 形 成了世 界上 第一個 股票市場。目前,股份有限公司已經(jīng)成為最基本的企業(yè)組織形式之一;股票已經(jīng)成為大企業(yè)籌資的重要渠道和方 式 ,亦 是 投 資 者 投 資 的 基 本 選 擇 方 式 ;股 票 市 場( 包 括 股 票 的 發(fā) 行 和 交易)與債券市場成為證券市場的重要基本內(nèi)容。股份公司、股票和股票市場無疑 對資 本

6、主義國家的企業(yè)的經(jīng)濟發(fā)展起到了積極的作用。 股份公司,股票和股票市場不是資本主義所 特有的。我 國是一個社會主義國家,在 發(fā)展 有 計 劃 商 品 經(jīng) 濟 的 條 件 下 ,同樣可以利用股 份公司 的企 業(yè)組 織形 式、股票籌資的方式和股票市場的調(diào)節(jié)機制,為發(fā)展社會主義的有計 劃的 商品經(jīng)濟服務(wù),它的積極做用是:1. 可 以 廣 泛 地 動 員 、積 聚 和 集 中 社 會 的 閑 散 資 金 ,為 國 家 經(jīng) 濟 建 設(shè)發(fā)展服務(wù),擴 大 生 產(chǎn) 建 設(shè) 規(guī) 模 , 推 動 經(jīng) 濟 的 發(fā) 展 , 并 收 到 “利 用 內(nèi)資不借內(nèi)債”的 效 果 。2. 可 以 充 分 發(fā) 揮 市 場 機 制

7、,打 破 條 塊 分 割 和 地 區(qū) 封 閉 ,促 進 資 金 的橫向融通和經(jīng)濟的橫向聯(lián)系,提高資源配臵的總體效益。3. 可以 為改 革完善我 國的企業(yè)組織形式探索一條新 路子,有利于不 斷 完 善 我 國 的 全 民 所 有 制 企 業(yè) 、集 體 企 業(yè) 、個 人 企 業(yè) 、三 資 企 業(yè) 和 股 份制 企業(yè) 的組織形 式,更好地發(fā)揮股份經(jīng)濟在我國國民經(jīng)濟中的地位和作用,促進我國經(jīng)濟的發(fā)展。4. 可以 促進 我國經(jīng)濟 體制改革的深化發(fā)展,特別是 股份制改革的深 入 發(fā) 展 ,有 利 于 理 順 產(chǎn) 權(quán) 關(guān) 系 ,使 政 府 和 企 業(yè) 能 各 就 其 位 、各 司 其 職、各用其權(quán)、各得其利

8、。5. 可 以 擴 大 我 國 利 用 外 資 的 渠 道 和 方 式 , 增 強 對 外 的 吸 納 能 力 ,有利于更多地利用外資和提高利用 外 資的經(jīng)濟效益,收到“用外資而不 借 外 債 ”的 效 果 。在世界經(jīng)濟金融化和“金融工具/體制”創(chuàng)新化的推動下,以及隨著我國金融體制改革的不斷深入,股票市場越來越成為經(jīng)濟活動中最為活躍的成分之一,深 入研究我國股票市場的運動規(guī)律和對股票的預(yù)測具有重大的現(xiàn)實意義。二發(fā)展現(xiàn)狀股票和股票市場對國家企業(yè)的經(jīng)濟發(fā)展起到了積極的作 用,如可以為投資者開拓投資渠道,增強投資的流動性和靈活性等。但股票價格 的 形 成 機 制 是 頗 為 復(fù) 雜 的 ,股 票 價

9、 格 既 受 到 多 種 因 素 ,諸 如 :政 治 , 經(jīng)濟,市場因素的影響,亦受技術(shù)和投資者行為因素的影響 ,個別因素的波動作用都可能會影響到股票價格的劇烈波動。因此,股票價格和各影響因素之間很難直接建立明確的函數(shù)關(guān)系表達式。針 對 這一情況,國內(nèi)外對股票的預(yù)測做出了很大的研究和貢獻。例 如 基 于 組 合 預(yù) 測 模 型 的 股 票 預(yù) 測 方 法 的 研 究 , 基 于 BP 算 法 的 股 票 均 價 預(yù) 測 技 術(shù) 研 究 ,基 于 神 經(jīng) 網(wǎng) 絡(luò) 的 證 券 預(yù) 測 技 術(shù) 研 究 等 ,都 對 股票的預(yù)測相當(dāng)完善。三論文的主要內(nèi)容及其章節(jié)安排本文的研究工作為采用線性預(yù)測的方法對

10、股票進行預(yù)測,采用 MATLAB軟件 實 現(xiàn) 的 方 法,利用其 功能強大的模塊集或工具箱和簡單的編程環(huán)境以及方便 的 數(shù)據(jù)可視化 功 能,對中國股票市場數(shù)據(jù)進行線性預(yù)測。本文的研究工作 使 用MATLAB對股票線性預(yù)測仿真的主要方法是:以股票的開盤、收盤、最高、最低四個價位為信號源,對未來的股票市場進行預(yù)測仿真研究。本文的主要內(nèi)容可以分為一下幾個部分:第一章首先簡要介紹了股票的起源發(fā)展及其在社會中的現(xiàn)實作 用,然后給出了論文的研究的內(nèi)容和國內(nèi) 外發(fā)展概況,以及今后的發(fā)展趨勢;最后給出了論文的章節(jié)安排和主要內(nèi)容。第二章重點講線性預(yù)測方法,首先說明本設(shè)計在股票預(yù)測中用到的線性預(yù)測方法及其原理,然

11、后說 明 利用MATLAB軟件實現(xiàn)預(yù)測的的方法,利用其功能強大的模塊集或工具箱和簡單的編程環(huán)境以及方便的數(shù)據(jù)可視化功能,對 中國股票市場數(shù)據(jù)進行線性預(yù)測,說明編程思想。第三章重點介紹MATLAB相關(guān)知識。首先介紹本畢業(yè)設(shè)計用到的軟件MATLAB的特點和使用意義,然后介紹其中的GUI圖形用戶界面使用方法和建立GUI的兩種方法及其比較,說明本設(shè)計是以程序編寫方法建立GUI 對 象,最后簡述本設(shè)計利用該軟件進行線性預(yù)測的相關(guān)內(nèi)容。第四章重 點介紹 計 算機 仿 真 股 票 線 性的預(yù)測 模 型 ,然后介紹程序編 輯 過程和調(diào) 試,最 終 出現(xiàn) 預(yù) 期 的 預(yù) 測 結(jié)果,說 明 本 設(shè) 計完成預(yù)期的任

12、務(wù)。第二章 股票線性預(yù)測方法 關(guān) 于 線 性 預(yù) 測 及 其 FIR 濾 波 器線性預(yù)測是根據(jù)已有采樣點按照線性函數(shù)計算未來某一離散 信 號 的 數(shù) 學(xué) 方 法 。在 數(shù) 字 信 號 處 理 中 ,線 性 預(yù) 測 經(jīng) 常 稱 為 線 性 預(yù) 測 編碼(LPC ) ,因此也可以看作是數(shù) 字 濾 波 器 的 一 部 分。能夠單獨的根據(jù)過去的值預(yù)測信號的將來值,對 線 性 預(yù) 測 而 言 , 系統(tǒng)是一個FIR數(shù)字濾波器,即根據(jù)過去值的一種線性組合算出一個預(yù)測值。FIR數(shù)字濾波器是一種用來過濾 時 間 離 散 信 號 的數(shù)字系統(tǒng),通過 對 抽 樣 數(shù) 據(jù) 進 行數(shù)學(xué)處理來達到頻域濾波的目的。FIR濾波

13、器 是在數(shù)字信號處理(DSP)中經(jīng)常使用的 兩 種 基 本 的 濾 波器之一,根據(jù)其 單 位 沖 激 響 應(yīng) 函數(shù)的時域特性可分為兩類:無限沖激 響應(yīng)(IIR)濾 波 器 和 有 限 沖 激 響 應(yīng)( FIR )濾 波 器 。 FIR 是 有 限 沖 激 響 應(yīng) (Finite Impulse Response)的簡稱。每一種都有優(yōu)缺點,但總得 來說,F(xiàn)IR濾波器的優(yōu)點遠大于缺 點 , 因 此在 實 際 運 用 中 , FIR濾 波 器 比 IIR濾波器使用的比較多。相 較 于 IIR濾 波 器 , FIR濾 波 器 有 以 下 的 優(yōu) 點 :1. 可 以 很 容 易 地 設(shè) 計 線 性 相

14、位 的 濾 波 器 。 線 性 相 位 濾 波 器 延 時 輸 入信號,卻并不扭曲其相位。2. 實 現(xiàn) 簡 單 .。在大 多 數(shù) DSP 處 理 器 ,只 需 要 對 一 個 指 令 進 行 循 環(huán)就 可 以 完 成 FIR 計 算 。3. 適 合于多采樣率轉(zhuǎn)換,它 包 括 抽 取 ( 降低 采樣 率 ), 插 值 (增加采樣 率)操作。無論是抽取或者 插 值 , 運 用FIR濾 波 器可 以 省 去一些計算,提高計算效率。相反,如果使用IIR濾波器,每個輸出都要逐一計算,不能省略,即使輸出要丟棄。4. 具 有 理 想 的數(shù) 字 特 性 。 在 實 際 中 ,所有 的DSP濾波器必須用有限精度

15、(有限bit數(shù)目)實現(xiàn),而在IIR濾波器中使用有限精度會產(chǎn)生很大的問題,由于采用的是反饋電路,因此IIR通常用非常少的bit實現(xiàn),設(shè)計者就能解決更少的與非理想算術(shù)有關(guān)的問題。5. 可 以 用 小 數(shù) 實 現(xiàn) . 不 像 IIR 濾 波 器 , FIR 濾 波 器 通 常 可 能 用 小 于 1 的系數(shù) 來 實 現(xiàn) 。( 如果需要,F(xiàn)IR濾波器的總的增益可以在輸出調(diào)整)。當(dāng)使用定點DSP的時候,這也是一個考慮因素,它能使得實現(xiàn)更加地簡單。相比較于IIR濾波 器 , 有時FIR濾波器為了得到一個給定的濾波 響應(yīng)特 性, 需要花費 更多 的存儲 器或 者 計算。當(dāng)然,用FIR濾波器去實現(xiàn)某些響應(yīng)也是

16、不實際的。與IIR濾 波器相比,F(xiàn)IR的實現(xiàn)是 非 遞歸的,總是穩(wěn)定的 ;更重 要的是 ,F(xiàn)IR濾波器在滿 足幅頻響應(yīng) 要 求的同時,可以獲得 嚴格的線性相位特性。因此,它在高保真的信號處理,如數(shù)字音頻、圖 像處理、數(shù)據(jù)傳輸、生物醫(yī)學(xué)等領(lǐng)域得到廣泛應(yīng)用。股票的線性預(yù)測原理.線性預(yù)測最常見的表示是px(n)aix(n i)( 2-1)i1其中 x(n) 是預(yù)測的信號值,x(n -i) 是前面觀測到的值,ai 是預(yù)測系數(shù)。這種預(yù)測產(chǎn)生的誤差是e(n) x(n) x(n)(2-2)其中xn是真正的信號值。這個等式對于所有類型的一維線性預(yù)測都是有效的,它們的不同之處是參數(shù)ai 選擇方式的不同。對于多維

17、信號,誤差經(jīng)常定義為e(n) | x(n) x(n) |(2-3)其中 | | . | | 是適當(dāng)選擇的矢量范數(shù)。(二).預(yù)測參數(shù)在參數(shù)ai 優(yōu)化中最常見的選擇是均方根準(zhǔn)則,也稱為自相關(guān)準(zhǔn)則。在這種方法中減小了最小均方誤差Ee2(n) 的期望值,這樣就得到等式p aiR(ij) R(j)(2-4)i1對于 1 j p, 其中 R 是信號 xn的自相關(guān),定義為R(i) Ex(n)x(n i)(2-5)其中 E 是 期望值。在多維情況下,這相當(dāng)于最小化L2 范數(shù)。上面的方程稱為normal 方程或者Yule-Walker 方程, 在矩陣形式下這個方程也可以寫作 Ra=-r,(2-6)其中自相關(guān)矩陣

18、R是元素為ri,j = R(i - j )的對稱輪換矩陣(en:circulant matrix) ,矢量 r 是自相關(guān)矢量rj = R(j),矢量a 是參數(shù)矢量。另外一個更為通用的實現(xiàn)是最小化pp(2-7)(2-8)e(n) x(n) x(n) x(n)ai x(n i)aix(n i)i1i0其中通常使用a0 = 1 約束參數(shù)ai 以避免trivial 解。 這個約束產(chǎn)生與上面同樣的預(yù)測,但是normal 方程是Ra 1,0,.,0 T其中索引i 的范圍是從0 到p,并且R 是 (p + 1) ×(p + 1) 矩陣。參數(shù)優(yōu)化是一個非常廣泛的話題,人們已經(jīng)提出了大量的其它實現(xiàn)方法

19、。但是,自相關(guān)方法仍然是最為常用的方法,例如在GSM 標(biāo)準(zhǔn)中的語音編碼就在使用這種方法。矩陣方程Ra = r 的求解計算上工作量很大,R 和 r 的對稱性。一種更快的Levinson 遞歸法(en:Levinson為古老的解法了,但是這種方法沒有有效地利用算法是 Norman Levinson 在 1947 年提出的recursion) ,它遞歸地計算方成的解。后來Delsarte et al. 提出了一種稱為splitLevinson recursion 的改進方法,它僅需要一半的乘除計算量,它在隨后的遞歸層面上使用了參數(shù)矢量的特殊對稱特性。本 文 希 望 設(shè) 計 一 個 系 統(tǒng) , 它 能

20、 夠 單 獨 的 根 據(jù) 過 去 的 值 預(yù) 測 xn 信 號 的 將 來 值 。對 于 線 性 預(yù) 測 來 說 ,這 個 系 統(tǒng) 是 一 個 FIR 濾 波 器 ,它 根據(jù)過去值的一種線性組合算出一個預(yù)測量:pX nak n k( 2-9 )k1式 2-9 中 的 就 是 的 預(yù) 測 值 。因 為 用 了 信 號 先 前 的 p 個 值 構(gòu) 成 這 種 預(yù)測,所以這是一個p 階預(yù)測器。給 定某 一固定的 濾 波 器階p, 線 性預(yù)測問題就是要確定一 組濾波器系數(shù) ,以 使得“最 好 的 ”實現(xiàn)2-9 的 預(yù)測 確 實 這 個 “最 好 ”系 數(shù) 的 最 常 用 的 準(zhǔn) 則 是 某 些 系 數(shù)

21、 ,是 的 總 的 平 方 預(yù) 測誤差達到最?。篘2N22-10 )E |en| |xn xn| n1n1式 2-10 中 , 假 設(shè) 序 列 xn 的 長 度 為 N , 有 幾 個 途 徑 可 以 用 來 對ak 求解 以 使 式 2-10 中 E 最 小 。最 簡 單 的 方 法 是 利 用 MATLAB 來 解 這 個 聯(lián)力 線 性 方 程 組 。 假 設(shè) N>P, 這 個 線 性 預(yù) 測 問 題 可 以 轉(zhuǎn) 換 成 式 2-11 所 的 矩陣形式x1x2xN px px p 1xN 1a1a1e p 1e p 2eNx p 1xp 2xN(2-11)式 2-11 還 可 以 緊

22、 湊 一 些 寫 成 -Xa+e=x 。 這 個 方 程 能 用 來 對 向 量 a 求 解 , 以使總平方預(yù)測誤差e*e最小。式2-11左邊放一半兒減號的 約定是為了讓“預(yù)測誤差濾波器”能表 示 成e=Xa+x。二設(shè)計預(yù)測流圖利用MATLAB實現(xiàn)股 票市場線性 預(yù)測的編程流程如圖2-1首先根據(jù)信源Xn構(gòu) 造矩陣X, x,求出濾波器的系數(shù)ak,得到第一個預(yù)測值 ,后 重新構(gòu)造矩陣X1,然 后 根 據(jù) X1 在 循 環(huán) 回 重 新 構(gòu) 造下一個矩陣X,x。得到 最 終 的 預(yù) 測值 。若已知信源xn,求解系數(shù)ak , 則 可 根 據(jù) 上 述 流 程 求 出xn+1,xn+2等一 系列預(yù)測值。2-

23、1第三 章MATLAB及 圖 形用 戶 界 面 簡介一 MATLAB 簡 介MATLAB是美 國Math Works公 司 出品 的 商 業(yè) 數(shù)學(xué)軟 件 , 用 于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析 以及數(shù) 值計算的高級技術(shù)計算語言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。MATLAB是 矩 陣實 驗 室 (MatrixLaboratory)的 簡 稱 ,和Mathematica 、Maple并稱為三大 數(shù)學(xué)軟 件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等, 主要應(yīng) 用于工程計

24、算、控制設(shè) 計 、信號處理與通訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域。MATLAB的基本數(shù)據(jù)單位 是 矩 陣,它的指令表達式與數(shù)學(xué)、工程中 常 用 的 形式 十 分 相 似 ,故用 MATLAB來 解 算 問題 要 比用 C,F(xiàn)ORTRAN 等語 言 完 相 同 的事情 簡 捷 得 多 ,并 且 mathwork 也吸 收 了像Maple等軟件的優(yōu)點,使MATLAB成為一個強大的數(shù)學(xué)軟件。在新的版本 中也加入了對C,F(xiàn)ORTRAN,C+,JAVA的支持???以 直接 調(diào) 用 ,用戶也 可以 將自 己 編寫 的 實用 程 序?qū)?入 到 MATLAB函 數(shù)庫 中方 便 自 己以后調(diào) 用,

25、 此 外 許多 的MATLAB愛 好者都 編寫了一 些 經(jīng) 典的程序,用戶可以直接進行下載就可以用。20 世紀(jì)70年 代 , 美 國新 墨西 哥 大 學(xué)計 算機科 學(xué)系主任 CleveMoler 為了減 輕 學(xué) 生編 程的 負 擔(dān), 用FORTRAN 編 寫了 最早 的MATLAB。1984年 由Little 、Moler 、SteveBangert 合 作 成 立了的MathWorks 公司正式 把MATLAB推 向市 場 。 到20 世紀(jì)90 年 代,MATLAB已成為國際控制界的標(biāo)準(zhǔn)計算軟件。(一 ) MATLAB 運 用 特 點1 .MATLAB語言的優(yōu)越性在當(dāng)今計算機時代,通常的做法

26、是借助高級語言Basic、Fortran或C 語言等編制計算程序,輸入計算機做近似計算。但是這需要熟練的掌 握所運用的語法規(guī)則與編制程序的相關(guān)規(guī)定,而 且 編制程序不容易 ,費 時 費 力 。 所 以 本 設(shè) 計 采 用 預(yù) 測 仿 真 軟 件 是 MATLAB 。 1980 年 美國的CleveMoler博士研制的MATLAB環(huán)境(語言)對控 制 系 統(tǒng)的理論及 計 算機 輔 助設(shè)計技術(shù)起到了 巨 大 的推動作用。由于MATLAB的使用極其容易,不要求使用者具備高深的數(shù)學(xué)與程序語言的知識, 不需要使 用 者深 刻 了解算法與編程技 巧 ,且提供了豐富的矩陣 處 理 功能,更體現(xiàn)出它巨大的優(yōu)越

27、性和簡易性。MATLAB 將 高性 能的 數(shù) 值 計 算和可 視 化集 成在一起, 并 提 供 了大量的內(nèi)臵函數(shù),從而被廣泛的應(yīng)用科學(xué)計算 、控 制系統(tǒng)、信息處理等領(lǐng)域的分析、仿真和設(shè)計工作而且利用MATLAB產(chǎn)品的開放式結(jié)構(gòu) ,可 以 非 常 容 易 的對MATLAB 的功能 進 行擴 充。目前MATLAB 可以用來 完成 一下 功能:數(shù)據(jù)分 析;數(shù)值和符號計算;工程與科學(xué) 繪圖;控制系統(tǒng)的設(shè)計與仿真;數(shù)字圖像處理;建模 、仿 真、原型開發(fā);數(shù)字信號處理、通信系統(tǒng)設(shè)計與仿真;圖形用戶界面設(shè)計。( 二 ) MATLAB 的 特 點 如 下 :1. 語 言 簡 潔 緊 湊 , 使 用 方 便 靈

28、 活 , 庫 函 數(shù) 極 其 豐 富 。2. 運 算 符 豐 富 。3. MATLAB既具有結(jié)構(gòu)化 的 控制語句(如for循環(huán),while 循 環(huán) ,break 語句和if語句) , 又 有 面 向 對象 編程的 特性。4. 程序限制不嚴格,程序 設(shè) 計自由度大。5. 程序的可移植性很好,基本上不做修改 就可以在各種型 號 的 計算機和操作系統(tǒng)上運行。6. MATLAB的圖形功能強大。7. 擁有完備和強大的工具箱。8. 源程序的開放性。除內(nèi)部函數(shù) 以 外,所有MATLAB的核心文件 和 工 具箱文件都是可讀可改的源文 件,用戶可 通過 對源 文件的修改以及加入自己的文件構(gòu)成新的工具箱。( 三

29、) MATLAB 的 優(yōu) 勢 1 工 作 平 臺 和 編 程 環(huán) 境MATLAB 由一系列工具組成。這些工具方便用戶使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機交互性更強,操作更簡單。而且新版本的 MATLAB提供了完整的聯(lián)機查詢、幫助系統(tǒng),極大的方便了用戶的 使 用 。簡 單的編程環(huán) 境 提供了比較完備的調(diào)試 系統(tǒng),程序不必經(jīng)過編 譯 就

30、可以直接運行,而且能夠及時地報告出現(xiàn)的錯誤及進行出錯原因分析。9. 簡 單 易 用 的 程 序 語 言MATLAB 一 個 高 級 的 矩 陣 /陣 列 語 言 , 它 包 含 控 制 語 句 、 函 數(shù) 、 數(shù)據(jù)結(jié)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c。用戶可以在命令窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個較大的復(fù)雜的應(yīng)用程序(M 文件)后再一起運 行 。 新 版 本 的MATLAB語言是基于最為流行的C語言基礎(chǔ)上的 , 因 此 語 法 特 征與C 語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學(xué)表達式的書寫格式。使之更利于非計算機專業(yè)的科技人員使用。而且這種語言可移植性好、可拓展性極

31、強 ,這也是MATLAB 能 夠 深 入 到 科學(xué) 研究 及工程計算各個領(lǐng)域的重要原因。10. 強大的 科學(xué)計算機數(shù)據(jù)處 理 能 力MATLAB是 一 個 包含 大 量計算算法的集 合。 其擁 有 600 多 個 工程中要用到的數(shù)學(xué)運算函數(shù),可以方便的實現(xiàn)用戶所需的各種計算功能。函數(shù)中所使用的算法都是 科研和工程計算中的最新研究成果,而前經(jīng)過了各種優(yōu)化和容錯處理 。在通常情況下,可以用它來代替底層編 程 語 言 ,如C 和 C+。在 計算要求相同的 情況 下,使 用 MATLAB的編程工作量會大大減少。MATLAB的這些函數(shù)集包括從最簡單最基本的函數(shù)到諸如矩陣,特征向量、快速 傅 立葉變換的復(fù)

32、雜函 數(shù)。函數(shù)所能解決的問題其大致包括矩陣運算和 線 性方程組的求解、微分方程及偏微分方程的組的求解、符號運算、傅立葉變換和數(shù)據(jù)的 統(tǒng)計分析、工程中的優(yōu)化問題、稀疏矩陣運算、復(fù)數(shù)的各種運算、三角函數(shù) 和其他初等數(shù)學(xué)運算、多維數(shù)組操作以及建模動態(tài)仿真等。11. 出 色 的 圖 形 處 理 功 能MATLAB 自 產(chǎn) 生 之 日 起 就 具 有 方 便 的 數(shù) 據(jù) 可 視 化 功 能 ,以 將 向 量和矩陣用圖形表現(xiàn)出來,并且可以對圖形進行標(biāo)注和打印。高層次的作圖包括二維和三維的可視化、圖象處理、 動畫和表達式作圖??捎糜诳茖W(xué)計算和工程繪圖。新版本的MATLAB對整個圖形處理功能作了很大的改進和完

33、善,使它不僅在一般數(shù)據(jù)可視化軟件都具有的功能(例如二維曲線和三維曲面的繪制和處理等) 方面更加完善,而且對于一些其他軟件所沒有的功能(例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等),MATLAB同樣表現(xiàn)了出色的處理能力。同時對一些特殊的可視化要求,例如圖形對話等, MATLAB也 有 相 應(yīng)的 功 能 函 數(shù) , 保 證 了 用 戶 不 同 層 次的 要求 。另外新 版 本 的MATLAB 還 著 重 在 圖 形 用 戶 界 面 ( GUI ) 的制 作上 作了很大的改善,對這方面有特殊要求的用戶也可以得到滿足。5應(yīng)用 廣 泛 的 模 塊集合工具 箱MATLAB對許多專門的領(lǐng)域都開發(fā)了功能

34、強大的模塊集和工具箱。一般來說,它們都是由特定領(lǐng)域的專家開發(fā)的,用戶可以直接使用工具 箱學(xué)習(xí)、應(yīng)用和評估不同的方法而不需要自己編寫代碼。目 前 ,MATLAB已 經(jīng)把工具箱延伸到了科學(xué)研究和工程應(yīng)用的諸多領(lǐng)域,諸如數(shù)據(jù)采集、數(shù)據(jù)庫接口、概率統(tǒng)計 、樣條擬合、優(yōu)化算法、偏微分 方程 求 解 、神 經(jīng)網(wǎng)絡(luò)、小 波分 析 、信 號 處 理 、圖 像 處 理 、系 統(tǒng) 辨 識 、控制系統(tǒng)設(shè)計、LMI控制、魯棒控制、模型預(yù)測、模糊邏輯、金融分析、地圖工具、非線性控制設(shè)計、實時 快 速原型及半物理仿真、嵌入式系統(tǒng)開發(fā)、定點仿真、DSP與通訊、電力系統(tǒng)仿真等,都在工具箱( Toolbox ) 家 族 中 有

35、 了 自 己 的 一 席 之 地 。6. 實用 的 程 序接 口和發(fā)布平臺新 版 本 的MATLAB 可以 利用MATLAB 編譯器和C/C+數(shù)學(xué)庫和圖形庫,將自己的MATLAB程序自動轉(zhuǎn)換為獨立于MATLAB運行的C 和C+ 代 碼。 允許用戶編寫 可 以和MATLAB進行交互的C或C+語言程序。另外,MATLAB網(wǎng)頁服務(wù)程序還容許在Web應(yīng)用中使用自 己的 MATLAB數(shù)學(xué)和圖形 程序。MATLAB的一個重要特色就是具有一套程序擴展系統(tǒng) 和 一 組稱之為工具箱的特殊應(yīng) 用 子 程序。工具箱是MATLAB函 數(shù)的子程序庫 ,每一個 工 具 箱都是為某一類學(xué)科專業(yè)和應(yīng)用而定制的,主要 包 括信

36、號處理、控制系統(tǒng)、神經(jīng) 網(wǎng)絡(luò)、模糊邏輯、小波分析和系統(tǒng)仿真等方面的應(yīng)用。7. 應(yīng)用軟件開發(fā)(包括用戶界面)在開發(fā)環(huán)境中,使用戶更方便 地 控 制 多 個文件和圖形 窗 口;在編程方面支持了函數(shù)嵌套,有條件中 斷 等 ;在 圖形化方面,有了更 強 大的圖形標(biāo)注和處理功能,包括對性 對 起 連 接 注釋等;在 輸 入 輸 出 方 面 ,可 以 直 接 向 Excel 和 HDF5 進 行 連 接 。二 GUI 圖 形 用 戶 界 面 簡 介( 一 ) .GUI 圖 形 用 戶 界 面 介 紹圖形 用戶 界面 ( Graphical User Interfaces , GUI) 是 一 種 圖 形化

37、 的 溝通 界面 ,通 過 此 界 面 可 以 很 方 便 地 達 到一 些 特 定 控 制 的 操 作 ,而這些 界 面 又 是 由 按 鈕 、窗 口 、工 具 欄、鍵 盤 操作等對象所 構(gòu) 成 的 ,以方便 借 助 這 些 界 面 調(diào) 用 MATLAB來 運 行運算處理操 作 。 在MATLAB中 , GUI 編 程 和 M 文件 編 程 相 比 , 除了要編寫程序功能的 內(nèi) 核 代碼 外 ,還 需 要 編 寫 前 臺界 面 。 MATLAB圖形用戶界面程序的前臺界面由一系列交互組件組成,主要包括按鈕、單選按鈕、框 架、復(fù)選框、文本標(biāo)簽、編輯文本框、滾動條、下拉菜單、列表框 和雙位按鈕等。

38、也 就是 說 GUI 圖 形用戶界面是由 窗 口、光 標(biāo) 、按 鍵 、菜單、文字說明等 對象 ( Objects )構(gòu)成的一個用 戶 界面。 用 戶 通 過一定的方法(如鼠標(biāo)或鍵盤)選擇、激活這些圖形對象,使計算機 產(chǎn)生某種動作或變化,比如實現(xiàn)計算、繪圖等。使 用 MATLAB來 分 析 數(shù) 據(jù), 求 解 問 題 , 繪制結(jié) 果 常使用GUI 工具 。因 為 GUI 可 以在 MATLAB中 生 成 非 常 有效的 工 具和應(yīng)用 程 序,或是建立演示工作的交互式界面。(二)創(chuàng)建MATLAB 用戶圖形界面必須由三個基本 元 素:1 組件.在MATLAB GUI中的每一個項目(按鈕,標(biāo) 簽,編輯框

39、等)都是一個圖形化 組 件 .組 件 可分為三 類:圖形化控件(按鈕,編輯框,列表,滾 動 條 等 ),靜 態(tài)元素(窗口和 文 本 字符串),菜單和坐標(biāo)系. 圖 形 化 控件 和 靜 態(tài) 元 素由函 數(shù)uicontrol創(chuàng)建, 菜單由函數(shù)uimenu 和uicontextmenu創(chuàng)建,坐標(biāo)系 經(jīng) 常 用于顯示 圖形化數(shù)據(jù),由函 數(shù) axes創(chuàng)建.2 圖象窗 口 (Figure).GUI的每一個組件都必須安排圖象窗口中。以前,我們在畫數(shù)據(jù)圖象時,圖象窗口會被自動創(chuàng)建。但我們還可以 用函數(shù)figure 來 創(chuàng) 建 空圖象窗口,空圖象窗口經(jīng)常用于放臵各種類型的組件。3回應(yīng)。 最 后 , 如 果 用戶

40、用鼠標(biāo)單擊或用鍵盤鍵入一些信息,那么程序就要有相應(yīng)的動作。鼠標(biāo)單擊或鍵入信息是一個事件,如果 MATLAB 程 序 運 行 相 應(yīng) 的 函 數(shù) , 那 么 MATLAB 函 數(shù) 肯 定 會 有 所 反 應(yīng)。例 如 , 如 果用戶單 擊 一 按鈕,這 個 事 件 必 然 導(dǎo) 致 相 應(yīng) 的MATLAB語句執(zhí) 行 。 這些相應(yīng) 的 語 句被稱為 回 應(yīng) 。 只 要 執(zhí) 行 GUI的 單 個 圖形組件,必須有一個回應(yīng)。(三).GUI 層 次結(jié) 構(gòu)實現(xiàn)一個GUI的過程包 括 兩 個基本任務(wù): 一是GUI的 組 建 布 局 ,另一個是 GUI組 件編 程。另外用戶還必須能夠保存并發(fā)布自己的GUI ,使得

41、用戶 開發(fā)的圖形 用 戶 界面能夠真正 得到應(yīng) 用。在MATLAB中GUIDE是一個組建布局工具集,能夠生成用戶所需的組 件 資 源并 保存 在一個FIG文件中;其次,GUIDE還可以生成 一 個包含GUI 初始化和 發(fā) 布 控制代碼的M 文 件 , 該文 件 為 回 調(diào)函數(shù)提供了一個框架。GUIDE可以首先在布局 GUI的同時生成兩個文件1 FIG 文 件。該文件包括GUI 的圖像窗口和所有子對象的完全描述以及所有對象的屬性值。2 M 文 件 。該文件包括用戶 用 來發(fā)布和控制界面和回調(diào)函數(shù)的各種函數(shù)。該文件不含任何組件的布臵信息三 .GUI 建 立 的 兩 大 方 法 及 其 比 較MAT

42、LAB 中 GUI 的 建 立 有 兩 大 方 式 。一 ) 通過 GUIDE 編 輯 快速生 成 GUI 編輯界 面直接 通 過 MATLAB的GUI 編 輯 界面GUIDE 來 建 立 GUI 。這個界面當(dāng)前已經(jīng)改善的很實用,對于實用過窗口程序的用戶或新 手而言,是個非常好的選擇,它直接通過鼠標(biāo)拖拽到達目的地,就 可 以 快 速 的 建 構(gòu) 出 整 個 的 GUI ;此 外 ,這 種 方 式 在 M 文 件 管 理 上 也 比較好,如果要修改部分程序代碼,也可以快速容易的找到被修改 部分。具體方法在Command 里 面輸入GUIDE或 者 從 菜 單 里面,或者從快捷按鈕均可 進 入 G

43、UIDE。新建并且 保 存后 , 會 生 成 相應(yīng)的fig文 件 和 m 文 件 ,在 Layout 編 輯 視 圖 ,可 以 使 用 如 Layout Editor ( 布 局編輯器):添加 和 安 排 圖 形 窗口中的對 象 ;Alignment Tool(對齊工具):排列對象的相對次序;PropertyInspector(對象屬性觀察器):檢查和設(shè)臵屬性值;ObjectBrowser( 對 象 瀏覽器):觀察本次運行中圖形對象句柄的層次關(guān)系; Menu Editor (菜單編輯器):創(chuàng)建圖形窗口菜單等工具進行編輯。這些工具集中在布局編輯器界面 中 , 使用 GUIDE命令可以顯示該 界

44、面 , 如 圖 3-1GUIDE 啟 動 對 話 框圖 3-1如圖 3-2可 以 看 到 , 創(chuàng) 建 新 的 GUI 程序時可以使用四種不同的GUIDE模 板。選擇空白GUI , 將 會打開 如 圖 3-2 所 示 的 空白GUIDE設(shè) 計 界面,在 此 界 面 下 用 戶 可 以 通 過 單 擊 和拖拽鼠標(biāo)的方式輕松創(chuàng)建自己的GUI程序界面。同時也可以選擇其 他模 板 項 ,在 這 種 情 況 下 打 開 的 GUIDE設(shè)計界面下會有模板預(yù)先安排的一些交互組件,可以很大減少工作量。打開空白GUI所示 的界 面 如 圖3-23-2前臺界面由一系列交互式組件組成,主要包括按鈕、單選按鈕、 架 、復(fù) 選 框 、文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論