日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Matlab学习笔记1—MATLAB基础知识

發(fā)布時間:2023/12/15 综合教程 36 生活家
生活随笔 收集整理的這篇文章主要介紹了 Matlab学习笔记1—MATLAB基础知识 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.1 MATLAB系統(tǒng)環(huán)境

  1.MATLAB操作界面的組成

    (1)MATLAB主窗口

    (2)命令行窗口:命令行窗口用于輸入命令并顯示命令的執(zhí)行結(jié)果。

    (3)當(dāng)前文件夾窗口

      如何設(shè)置當(dāng)前文件夾呢?

      (1)在當(dāng)前文件夾工具欄或當(dāng)前文件夾窗口中選擇某文件夾為當(dāng)前文件夾

      (2)使用cd命令

    (4)工作區(qū)窗口

  2.MATLAB的搜索路徑

    (1)用path命令設(shè)置文件搜索路徑。例如:

      >> path(path,'e:work')

    (2)用對話框設(shè)置文件搜索路徑。

  3,兩個問題

    (1)如果在當(dāng)前文件夾和搜索路徑文件夾下建立了一個同名的M 文件,那么在命令行窗口輸入文件名時,執(zhí)行哪個文件?

    (2)如果用戶建立的文件既沒有保存在當(dāng)前文件夾下,也沒有 保存在文件搜索路徑中,那么在命令行窗口輸入文件名時, 會出現(xiàn)什么信息?

        第一個問題根據(jù)MATLAB的搜索路徑,程序文件的搜索順 序是首先在當(dāng)前文件夾中搜索,然后再在文件搜索路徑 中的文件夾中搜索,所以執(zhí)行的是當(dāng)前文件夾下的M文件。 第二個問題,同樣根據(jù)MATLAB的搜索路徑,如果用戶建 立的文件既沒有保存在當(dāng)前文件夾下,也沒有保存在文 件搜索路徑中,那么MATLAB就找不到這個文件,系統(tǒng)會 給出錯誤提示信息。

1.2 MATLAB數(shù)值數(shù)據(jù)

  1.?dāng)?shù)值數(shù)據(jù)類型的分類

    (1)整型

      無符號整數(shù):無符號8位整數(shù)、無符號16位整數(shù)、無符號32位整數(shù)、無符號64位整數(shù)。

        無符號8位整數(shù)數(shù)據(jù)范圍:00000000~11111111(0~28-1)。

      帶符號整數(shù):帶符號8位整數(shù)、帶符號16位整數(shù)、帶符號32位整數(shù)、帶符號64位整數(shù)。

        帶符號8位整數(shù)數(shù)據(jù)范圍:10000000~01111111(-27~27-1)。

      int8():將無符號位整型轉(zhuǎn)成帶符號位整形。

      uint8():將有符號位整型轉(zhuǎn)成無符號位整形。

    (2)浮點(diǎn)型

      single函數(shù):將其他類型的數(shù)據(jù)轉(zhuǎn)換為單精度型。

      double函數(shù):將其他類型的數(shù)據(jù)轉(zhuǎn)換為雙精度型。

       class函數(shù):輸出數(shù)據(jù)類型

    (3)復(fù)型

      復(fù)型數(shù)據(jù)包括實(shí)部和虛部兩個部分,實(shí)部和虛部默認(rèn)為雙精度型,虛數(shù) 單位用i或j來表示。

      real函數(shù):求復(fù)數(shù)的實(shí)部。

      imag函數(shù):求復(fù)數(shù)的虛部。

  2.?dāng)?shù)值數(shù)據(jù)的輸出格式

    format命令的格式: format 格式符

  3.常用數(shù)學(xué)函數(shù)

    (1)函數(shù)的調(diào)用格式為:函數(shù)名(函數(shù)自變量的值)

    (2)常用函數(shù)的應(yīng)用

      ① 三角函數(shù)有以弧度為單位的函數(shù)和以角度為單位的函數(shù),如果是以 角度為單位的函數(shù)就在函數(shù)名后面加“d”,以示區(qū)別。

      ② abs函數(shù)可以求實(shí)數(shù)的絕對值、復(fù)數(shù)的模、字符串的ASCII碼值。

      ③用于取整的函數(shù)有fix、floor、ceil、round。

     ④函數(shù)應(yīng)用舉例。

      (1)分別求一個三位正整數(shù)的個位數(shù)字、十位數(shù)字和百位數(shù)字。

      (2)求[1,100]區(qū)間的所有素數(shù)。

1.3 變量及其操作

  1.變量與賦值語句

    在MATLAB中,變量名是以字母開頭,后接字母、數(shù)字或下畫線的字符序列, 最多63個字符。

    變量名區(qū)分字母的大小寫。

    標(biāo)準(zhǔn)函數(shù)名以及命令名必須用小寫字母。

  2.預(yù)定義變量

    預(yù)定義變量是在MATLAB工作空間中駐留,由系統(tǒng)本身定義的變量。

    (1)ans是默認(rèn)賦值變量

    (2)i和j代表虛數(shù)單位

    (3)pi代表圓周率

    (4)NaN代表非數(shù)

  3.變量的管理

    (1)內(nèi)存變量的刪除與修改

    who命令與whos命令

    (2)內(nèi)存變量文件

     用于保存MATLAB工作區(qū)變量的文件叫做內(nèi)存變量文件,其擴(kuò)展名為.mat,也叫MAT文件。

     save命令:創(chuàng)建內(nèi)存變量文件。

     load命令:裝入內(nèi)存變量文件。

1.4 MATLAB矩陣的表示

  1.矩陣的建立

    (1)利用直接輸入法建立矩陣:將矩陣的元素用中括號括起 來,按矩陣行的順序輸入各元素,同一行的各元素之間用逗 號或空格分隔,不同行的元素之間用分號分隔。

    (2)利用已建好的矩陣建立更大的矩陣: 一個大矩陣可以由已經(jīng)建立好的小矩陣拼接而成。

    (3)可以用實(shí)部矩陣和虛部矩陣構(gòu)成復(fù)數(shù)矩陣

  2.冒號表達(dá)式

  3.結(jié)構(gòu)矩陣和單元矩陣

    (1)結(jié)構(gòu)矩陣
      由結(jié)構(gòu)數(shù)據(jù)構(gòu)成的矩陣就是結(jié)構(gòu)矩陣,結(jié)構(gòu)矩陣?yán)锏拿總€元素 就是結(jié)構(gòu)數(shù)據(jù)類型。
      格式為: 結(jié)構(gòu)矩陣元素.成員名=表達(dá)式

    (2)單元矩陣

      建立單元矩陣和一般矩陣相似,直接輸入就可以了,只是單元矩陣元 素用大括號括起來。

1.5 矩陣元素的引用

  1.矩陣元素的引用方式

    (1)通過下標(biāo)來引用矩陣的元素

      A(3,2)表示A矩陣第3行第2列的元素。

    注意:如果給出的行下標(biāo)或列下標(biāo)大于原來矩陣的行數(shù)和列數(shù), 那么MATLAB將自動擴(kuò)展原來的矩陣,并將擴(kuò)展后沒有賦值的矩陣 元素置為0。

    (2)通過序號來引用
      在MATLAB中,矩陣元素按列存儲,即首先存儲矩陣的第一列元素,然后存儲第二列元素,…,一直到矩陣的最后一列元素。

      矩陣元素的序號就是矩陣元素在內(nèi)存中的排列順序。

        序號與下標(biāo)是一一對應(yīng)的,以m×n矩陣A為例,矩陣元素A(i,j)的序 號為(j-1)×m+i

        sub2ind函數(shù):將矩陣中指定元素的行、列下標(biāo)轉(zhuǎn)換成存儲的序號。調(diào)用格式為:

  2.利用冒號表達(dá)式獲得子矩陣

    子矩陣是指由矩陣中的一部分元素構(gòu)成的矩陣。
    A(i,:) 第i行的全部元素

    A(:,j)第j列的全部元素

    A(i:i+m,k:k+m)第i~i+m行內(nèi)且在第k~k+m列中的所有元素

    A(i:i+m,:) 第i~i+m行的全部元素

      end運(yùn)算符:表示某一維的末尾元素下標(biāo)。

  3.利用空矩陣刪除矩陣的元素

    空矩陣是指沒有任何元素的矩陣。

  4.改變矩陣的形狀

    reshape(A,m,n):在矩陣總元素保持不變的前提下,將矩陣A重 新排成m×n的二維矩陣。
    注意:reshape函數(shù)只是改變原矩陣的行數(shù)和列數(shù),但并不改 變原矩陣元素個數(shù)及其存儲順序。

      A(:) :將矩陣A的每一列元素堆疊起來,成為一個列向量。

        A(:)等價于reshape(A,6,1)。

1.6 MATLAB基本運(yùn)算

  1.算術(shù)運(yùn)算

    (1)基本算術(shù)運(yùn)算
        基本算術(shù)運(yùn)算符:+(加)、-(減)、*(乘)、/(右除)、(左除)、^(乘方)。

         注意:MATLAB的算術(shù)運(yùn)算是在矩陣意義下進(jìn)行的。

           單個數(shù)據(jù)的算術(shù)運(yùn)算只是矩陣運(yùn)算的一種特例。
        加減運(yùn)算

          若兩矩陣同型,則運(yùn)算時兩矩陣的相應(yīng)元素相加減。

          若兩矩陣不同型,則MATLAB將給出錯誤信息。

          一個標(biāo)量也可以和矩陣進(jìn)行加減運(yùn)算,這時把標(biāo)量和矩陣的每一個元素進(jìn)行加減運(yùn)算。

       乘法運(yùn)算

          矩陣A和B進(jìn)行乘法運(yùn)算,要求A的列數(shù)與B的行數(shù)相等,此時則稱A、B矩陣是可乘的,或稱A和B兩矩陣維數(shù)和大小相容。

          如果兩者的維數(shù)或大小不相容,則將給出錯誤信息,提示用戶兩個矩陣是不可乘的。

       除法運(yùn)算

          在MATLAB中,有兩種矩陣除法運(yùn)算:右除/和左除。如果A矩陣是非奇異方陣,則B/A等效于B*inv(A),AB等效于inv(A)*B。

      乘方運(yùn)算
        一個矩陣的乘方運(yùn)算可以表示成A^x,要求A為方陣,x為標(biāo)量。

    (2)點(diǎn)運(yùn)算

      點(diǎn)運(yùn)算符:.*、./、.和.^。

      兩矩陣進(jìn)行點(diǎn)運(yùn)算是指它們的對應(yīng)元素進(jìn)行相關(guān)運(yùn)算,要求兩矩陣同型。

    2.關(guān)系運(yùn)算

      關(guān)系運(yùn)算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等 于)、==(等于)、~=(不等于)。

      當(dāng)兩個比較量是標(biāo)量時,直接比較兩數(shù)的大小。若關(guān)系成立,關(guān)系 表達(dá)式結(jié)果為1,否則為0。
      當(dāng)參與比較的量是兩個同型的矩陣時,比較是對兩矩陣相同位置的元素按標(biāo)量關(guān)系運(yùn)算規(guī)則逐個進(jìn)行,最終的關(guān)系運(yùn)算的結(jié)果是一個與原矩陣同型的矩
陣,它的元素由0或1組成。

      當(dāng)參與比較的一個是標(biāo)量,而另一個是矩陣時,則把標(biāo)量與矩陣的每一個元素按標(biāo)量關(guān)系運(yùn)算規(guī)則逐個比較,最終的關(guān)系運(yùn)算的結(jié)果是一個與原矩陣同
型的矩陣,它的元素由0或1組成。

    3.邏輯運(yùn)算

      邏輯運(yùn)算符:&(與)、|(或)和~(非)。設(shè)參與邏輯運(yùn)算的是兩個標(biāo)量a和b,那么運(yùn)算規(guī)則為:

      a&b a、b全為非零時,運(yùn)算結(jié)果為1,否則為0。

      a|b a、b中只要有一個為非零時,運(yùn)算結(jié)果為1。

      ~a 當(dāng)a為零時,運(yùn)算結(jié)果為1;當(dāng)a為非零時,運(yùn)算結(jié)果為0。

      若參與邏輯運(yùn)算的是兩個同型矩陣,那么將對矩陣相同位置上的元素按標(biāo)量規(guī)則逐個進(jìn)行運(yùn)算,最終運(yùn)算結(jié)果是一個與原矩陣同型的矩陣,其元素由1或0組成。

      若參與邏輯運(yùn)算的一個是標(biāo)量,一個是矩陣,那么將在標(biāo)量與矩陣中的每個元素之間按標(biāo)量規(guī)則逐個進(jìn)行運(yùn)算,最終運(yùn)算結(jié)果是一個與矩陣同型的矩陣,其元素由1或0組成。

      水仙花數(shù)是指各位數(shù)字的立方之和等于該數(shù)本身的三位正整數(shù)。 求全部水仙花數(shù)。

1.7 字符串處理

  1.字符串的表示

    在MATLAB中,字符串是用單引號括起來的字符序列。

    若字符串中的字符含有單引號,則該單引號字符要用兩個單引號來表示。

    建立多行字符串,形成字符串矩陣。

    建立一個字符串向量,然后對該向量做如下處理:

    ① 取第1~5個字符組成的子字符串。

    ② 將字符串倒過來重新排列。

    ③ 將字符串中的小寫字母變成相應(yīng)的大寫字母,其余字符不變。

    ④ 統(tǒng)計字符串中小寫字母的個數(shù)。

  2.字符串的操作

    (1) 字符串的執(zhí)行
        格式: eval(s)

    (2)字符串與數(shù)值之間的轉(zhuǎn)換

      abs和double函數(shù)都可以用來獲取字符串矩陣所對應(yīng)的ASCII碼數(shù)值矩陣。

      char函數(shù)可以把ASCII碼矩陣轉(zhuǎn)換為字符串矩陣。

    (3)字符串的比較

     字符串的比較有兩種方法:利用關(guān)系運(yùn)算符或字符串比較函數(shù)。
     關(guān)系運(yùn)算符比較:兩個字符串里的每個字符依次按ASCII值大小逐 個進(jìn)行比較,比較的結(jié)果是一個數(shù)值向量,向量中的元素要么是1 ,要么是0。

     字符串比較函數(shù)用于判斷字符串是否相等,有4種比較方式,函數(shù)如下:

     strcmp(s1,s2):用來比較字符串s1和s2是否相等,如果相等,返回結(jié)果為1,否則 返回0。

     strncmp(s1,s2,n):用來比較兩個字符串前n個字符是否相等,如果相等,返回1, 否則返回0。

     strcmpi(s1,s2):在忽略字母大小寫前提下,比較字符串s1和s2是否相等,如果相 等,返回1,否則返回0。

     strncmpi(s1,s2,n):在忽略字符串大小寫前提下,比較兩個字符串前n個字符是否 相等,如果相等,返回1,否則返回0。

    (4)字符串的查找與替換

      findstr(s1,s2):返回短字符串在長字符串中的開始位置。

      strrep(s1,s2,s3):將字符串s1中的所有子字符串s2替換為字符 串s3。

總結(jié)

以上是生活随笔為你收集整理的Matlab学习笔记1—MATLAB基础知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。