如何才能有效的學(xué)習(xí)matlab
學(xué)習(xí)MATLAB編程就像讀一本書,剛開始讀時感覺這本書很薄,內(nèi)容很淺,容易上手,但是沒有有效的學(xué)習(xí)方法就容易陷進學(xué)習(xí)誤區(qū),為此,以下是學(xué)習(xí)啦小編分享給大家的有效的學(xué)習(xí)matlab的技巧,希望可以幫到你!
有效的學(xué)習(xí)matlab的技巧
(1)數(shù)據(jù)處理:能對數(shù)據(jù)進行計算.分析和挖掘,數(shù)據(jù)處理函數(shù)功能強大,命令簡介。
(2)軟件工具箱:各式各樣的工具箱,包括神經(jīng)網(wǎng)絡(luò)工具箱.Simulink工具箱.(雖然Simulink從底層開發(fā)出來的,但是我們認(rèn)為也是工具箱的一種).模糊工具箱.數(shù)字圖像處理工具箱和金融工具箱等。
(3)精致繪圖:MATLAB通過set命令重設(shè)圖形的句柄屬性,可繪制精準(zhǔn)而美觀的圖形。
(4)動畫實現(xiàn):MATLAB可以進行實時動畫.電影動畫和AVI視頻制作,并能在動畫中添加*.wave格式的音頻。
(5)與軟硬件通信:MATLAB接口函數(shù)可以實現(xiàn)與軟件(比如C)和硬件(比如電子示波器)通信。
(6)品面設(shè)計:與全球最頂尖的平面設(shè)計軟件Adobe Photoshop聯(lián)袂使用,傳達震撼的視覺設(shè)計效果。
(7)游戲開發(fā):利用MATLAB語言可以開發(fā)一整套的游戲,比如開發(fā)32關(guān)的推箱子游戲。
matlab各階段的學(xué)習(xí)方法
大一
大一階段的主要任務(wù)是打基礎(chǔ),包括高等數(shù)學(xué)、線性代數(shù)等基礎(chǔ)課程的學(xué)習(xí),在該階段可以初步熟悉MATLAB軟件,譬如:軟件安裝、IDE環(huán)境熟悉,簡單數(shù)學(xué)計算問題的代碼實現(xiàn)(方程求解、微積分運算、矩陣乘法等)。
大二
大二階段的主要課程有計算方法、概率論與數(shù)理統(tǒng)計等,通過這些課程的實驗,可以有效幫助大家建立起科學(xué)計算與軟件開發(fā)的基本思維方式。大三
進入大三后,不少同學(xué)開始準(zhǔn)備參加數(shù)學(xué)建模比賽了,在該階段需要掌握一些實用的、高效的編程技巧,同時,應(yīng)該對常用的數(shù)學(xué)建模方法有更深的了解。
大四
眾所周知,大四的主要任務(wù)就是畢業(yè)設(shè)計和找工作,該階段的壓力最大。作為畢業(yè)設(shè)計而言,需要有一定的創(chuàng)新性與完整性,因此快速學(xué)習(xí)一些經(jīng)典的案例是一個明智的做法,同時,學(xué)習(xí)一些GUI知識,開發(fā)一個完整的軟件,給自己的大學(xué)時代劃上一個完美的句號,也是一件很有意義的事情。另外,對于找工作的同學(xué)而言,如果自己的專業(yè)方向涉及到Simulink,那么深入學(xué)習(xí)一些Simulink的知識,對于以后的工作會大有裨益。對于繼續(xù)深造的同學(xué)而言,此時,對MATLAB應(yīng)該進入到非常熟練的階段了,應(yīng)該已經(jīng)養(yǎng)成了自己的編程習(xí)慣與風(fēng)格,同時應(yīng)該習(xí)慣于查看MATLAB的官方幫助文檔,具備閱讀原始英文文檔的能力。
碩士
進入碩士階段以后,由于研究方向跨度較大,選擇MATLAB書籍的針對性更強。這里僅給出一些建議,經(jīng)常逛一逛MathWorks官網(wǎng)社區(qū),特別推薦Blog、File Exchange、Cody和Contest等版塊,其中有大量開源的專業(yè)應(yīng)用工具箱和函數(shù)包供免費下載。另外,在該階段對MATLAB應(yīng)該有一個更深的認(rèn)識:MATLAB僅僅是一個科學(xué)計算的工具,而不是軟件開發(fā)的唯一或者全部。
博士
Ph.D,學(xué)生生涯的最后一個階段,還需要掌握哪些MATLAB知識呢?根據(jù)小編的經(jīng)歷,進入博士階段后,大多要參與一些實際的項目,因此需要掌握MATLAB與其他軟件開發(fā)語言,如C/C++、Java、C#、VB等混合編程,同時需要掌握MATLAB面向?qū)ο缶幊碳夹g(shù)等。
學(xué)習(xí)matlab的困惑
其一,函數(shù)指令掌握太少,寫不出簡介的程序,甚至連正確有效的代碼也寫不出。初學(xué)者閱讀一個MATLAB編程高手寫出來的一個相對復(fù)雜的程序,會發(fā)現(xiàn)不但整篇程序的思路難以理解,而且會碰見很多陌生的命令,就像一篇英文閱讀理解有很多單詞都不認(rèn)識。自己動手寫程序想表達的意思表達不出來,力不從心。
其二,不能掌握MATLAB函數(shù)復(fù)雜的語法格式。相比VB和C而言,MATLAB語法格式比較復(fù)雜。語法格式不正確程序就不能運行,同一命令有很多語法格式。格式不同,程序輸出的結(jié)果就大相徑庭。比如使用streamribbon命令創(chuàng)建三維流帶圖,其語法格式為“streamribbon(x,y,z,u,v,w,sx,sy,sz);”,那么向量x,y,z,u,v,w,sx,sy,sz分別代表什么意義,各向量之間滿足什么樣的長度關(guān)系都必須真真切切地理解,否則因為不能鍵入正確的向量而不能畫出三維流帶圖。
其三,能套用別人程序自己卻思涵沒有編程開發(fā)能力。比如在神經(jīng)網(wǎng)絡(luò)工具箱中,各種創(chuàng)建.學(xué)習(xí)和訓(xùn)練網(wǎng)絡(luò)的函數(shù)命令眾多,語法格式復(fù)雜,套用別人已經(jīng)編好的神經(jīng)網(wǎng)絡(luò)程序比較簡單,但是如果自己對照各個函數(shù)的用法書寫完整的神經(jīng)網(wǎng)絡(luò)程序卻不是簡單的事,因為你沒有從本質(zhì)上理解這些命令。這就是說,你只能模仿別人的程序,卻不能觸類旁通自己開發(fā)程序。
其四,不能準(zhǔn)確全面地理解指令實現(xiàn)的功能。比如在MATLAB中實現(xiàn)排序功能的命令是sort,而在C語言中如果想實現(xiàn)排序,那就必須依據(jù)“冒泡法”原理編寫一小段的程序?qū)崿F(xiàn)排序。雖然MATLAB命令用起來比C簡便,但是如果對sort命令原理不了解,就不能知曉sort命令是實現(xiàn)升序排列還是降序排列,對于矩陣是按行排序還是按列排序。所以當(dāng)我們使用將繁瑣的原理封裝在MATLAB里的命令時,如果不熟悉該命令的原理,那么使用時至少要在命令窗口鍵入該命令一邊試探它的用法
其五,不知道如何調(diào)整函數(shù)的參數(shù)。比如使用imadjust命令對輪廓不明顯的數(shù)字圖像進行處理時,處理過的圖像也許輪廓分明,但是很多都是偽輪廓,已經(jīng)改變了原始圖像的品質(zhì),所以在使用該命令時一定要注意拿捏好校正因子的大小。又如在編寫B(tài)P網(wǎng)絡(luò)源程序過程中,網(wǎng)絡(luò)始終無法收斂且找不到原因,很多人都會懷疑是不是網(wǎng)絡(luò)的拓撲機構(gòu)設(shè)計有問題,其實很多情況下癥結(jié)都是處在網(wǎng)絡(luò)學(xué)習(xí)速率參數(shù)的大小上,只要將參數(shù)調(diào)小一點,網(wǎng)絡(luò)也許就會立即收斂。當(dāng)你不知道參數(shù)的具體取值時,不妨多調(diào)試幾次。
猜你喜歡: