數(shù)學建模教程第講入門_第1頁
數(shù)學建模教程第講入門_第2頁
數(shù)學建模教程第講入門_第3頁
數(shù)學建模教程第講入門_第4頁
數(shù)學建模教程第講入門_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)學建模教程第講入門第一頁,共二十七頁,編輯于2023年,星期三

MATLAB作為線性系統(tǒng)的一種分析和仿真工具,是理工科大學生應該掌握的技術(shù)工具,它作為一種編程語言和可視化工具,可解決工程、科學計算和數(shù)學學科中許多問題.

MATLAB建立在向量、數(shù)組和矩陣的基礎上,使用方便,人機界面直觀,輸出結(jié)果可視化.矩陣是MATLAB的核心.MATLAB的進入與運行方式(兩種).第二頁,共二十七頁,編輯于2023年,星期三

MATLAB入門一、變量與函數(shù)二、數(shù)組三、矩陣四、MATLAB編程五、實驗作業(yè)第三頁,共二十七頁,編輯于2023年,星期三

1.變量

MATLAB中變量的命名規(guī)則是:(1)變量名必須是不含空格的單個詞;(2)變量名區(qū)分大小寫;(3)變量名最多不超過19個字符;(4)變量名必須以字母打頭,之后可以是任意字母、數(shù)字或下劃線,變量名中不允許使用標點符號.

一、變量與函數(shù)第四頁,共二十七頁,編輯于2023年,星期三特殊變量表第五頁,共二十七頁,編輯于2023年,星期三2.數(shù)學運算符號及標點符號(1)MATLAB的每條命令后,若為逗號或無標點符號,則顯示命令的結(jié)果;若命令后為分號,則禁止顯示結(jié)果.(2)“%”后面所有文字為注釋.(3)“...”表示續(xù)行.第六頁,共二十七頁,編輯于2023年,星期三3.數(shù)學函數(shù)第七頁,共二十七頁,編輯于2023年,星期三

MATLAB的內(nèi)部函數(shù)是有限的,有時為了研究某一個函數(shù)的各種性態(tài),需要為MATLAB定義新函數(shù),為此必須編寫函數(shù)文件.函數(shù)文件是文件名后綴為M的文件,這類文件的第一行必須是一特殊字符function開始,格式為:

function因變量名=函數(shù)名(自變量名)函數(shù)值的獲得必須通過具體的運算實現(xiàn),并賦給因變量.

4.M文件M文件建立方法:1.在MATLAB中,點:File→New→

M-file2.在編輯窗口中輸入程序內(nèi)容

3.點File→

Save,存盤,M文件名必須與函數(shù)名一致.MATLAB的應用程序也以M文件保存.第八頁,共二十七頁,編輯于2023年,星期三例:定義函數(shù)f(x1,x2)=100(x2-x12)2+(1-x1)2functionf=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^21.建立M文件:fun.mMATLAB(fun)2.可以直接使用函數(shù)fun.m例如:計算f(1,2),只需在MATLAB命令窗口鍵入命令:x=[12]fun(x)

返回第九頁,共二十七頁,編輯于2023年,星期三x=logspace(first,last,n)

創(chuàng)建從first開始,到last結(jié)束,有n個元素的對數(shù)分隔行向量.

1.創(chuàng)建簡單的數(shù)組二、數(shù)組MATLAB(shuzu1)x=[abcdef]創(chuàng)建包含指定元素的行向量.x=first:last

創(chuàng)建從first開始,加1計數(shù),到last結(jié)束的行向量.x=first:increment:last

創(chuàng)建從first開始,加increment計數(shù),到last結(jié)束的行向量.x=linspace(first,last,n)創(chuàng)建從first開始,到last結(jié)束,有n個元素的行向量.第十頁,共二十七頁,編輯于2023年,星期三

2.數(shù)組元素的訪問MATLAB(shuzu2)(3)直接使用元素編址序號.

x([abcd])

表示提取數(shù)組x的第a、b、c、d個元素構(gòu)成一個新的數(shù)組[x(a)x(b)x(c)x(d)].

(2)訪問一塊元素:

x(a:b:c)表示訪問數(shù)組x的第a個元素開始,以步長b到第c個元素(但不超過c),b可以為負數(shù),b缺省時為1.(1)訪問一個元素:

x(i)表示訪問數(shù)組x的第i個元素.第十一頁,共二十七頁,編輯于2023年,星期三

3.數(shù)組的方向

前面例子中的數(shù)組都是一行數(shù)列,是行方向分布的.稱之為行向量.數(shù)組也可以是列向量,它的數(shù)組操作和運算與行向量是一樣的,唯一的區(qū)別是結(jié)果以列形式顯示.

產(chǎn)生列向量有兩種方法:直接產(chǎn)生例c=[1;2;3;4]

轉(zhuǎn)置產(chǎn)生例b=[1234];c=b′

說明:以空格或逗號分隔的元素指定的是不同列的元素,而以分號分隔的元素指定了不同行的元素.第十二頁,共二十七頁,編輯于2023年,星期三4.數(shù)組的運算

(1)標量-數(shù)組運算數(shù)組對標量的加、減、乘、除和平方運算,是指數(shù)組的每個元素對該標量施加相應的加、減、乘、除、平方運算.設:a=[a1,a2,…,an],c是標量.則:a+c=[a1+c,a2+c,…,an+c]a.*c=[a1*c,a2*c,…,an*c]a./c=[a1/c,a2/c,…,an/c](右除)

a.\c=[c/a1,c/a2,…,c/an](左除)

a.^c=[a1^c,a2^c,…,an^c]c.^a=[c^a1,c^a2,…,c^an]MATLAB(shuzu3)第十三頁,共二十七頁,編輯于2023年,星期三(2)數(shù)組-數(shù)組運算

當兩個數(shù)組有相同維數(shù)時,加、減、乘、除、冪運算可按元素對元素方式進行,不同大小或維數(shù)的數(shù)組是不能進行運算的.

設:a=[a1,a2,…,an],b=[b1,b2,…,bn]則:a+b=[a1+b1,a2+b2,…,an+bn]a.*b=[a1*b1,a2*b2,…,an*bn]a./b=[a1/b1,a2/b2,…,an/bn]a.\b=[b1/a1,b2/a2,…,bn/an]a.^b=[a1^b1,a2^b2,…,an^bn]MATLAB(shuzu4)

返回第十四頁,共二十七頁,編輯于2023年,星期三三、矩陣

逗號或空格用于分隔某一行的元素,分號用于區(qū)分不同的行.除了分號,在輸入矩陣時,按Enter鍵也表示開始新一行.輸入矩陣時,嚴格要求所有行有相同的列.

例m=[1234;5678;9101112]p=[111122223333]1.矩陣的建立第十五頁,共二十七頁,編輯于2023年,星期三特殊矩陣的建立:MATLAB(matrix1)d=eye(m,n)

產(chǎn)生一個m行n列的單位矩陣c=ones(m,n)

產(chǎn)生一個m行n列的元素全為1的矩陣b=zeros(m,n)

產(chǎn)生一個m行n列的零矩陣

a=[]

產(chǎn)生一個空矩陣,當對一項操作無結(jié)果時,返回空矩陣,空矩陣的大小為零第十六頁,共二十七頁,編輯于2023年,星期三2.矩陣中元素的操作MATLAB(matrix2)(1)提取矩陣A的第r行:A(r,:)(2)提取矩陣A的第r列:A(:,r)(4)取矩陣A的第i1~i2行、第j1~j2列構(gòu)成新矩陣:A(i1:i2,j1:j2)(5)以逆序提取矩陣A的第i1~i2行,構(gòu)成新矩陣:A(i2:-1:i1,:)(6)以逆序提取矩陣A的第j1~j2列,構(gòu)成新矩陣:A(:,j2:-1:j1)(7)去掉提取A的第i1~i2行,構(gòu)成新矩陣:A(i1:i2,:)=[](8)去掉提取A的第j1~j2列,構(gòu)成新矩陣:A(:,j1:j2)=[](9)將矩陣A和B拼接成新矩陣:[AB];[A;B](3)依次提取矩陣A的每一列,將A拉伸為一個列向量:A(:)第十七頁,共二十七頁,編輯于2023年,星期三

(2)矩陣-矩陣運算

[1]元素對元素的運算,同數(shù)組-數(shù)組運算.

3.矩陣的運算(1)標量-矩陣運算

標量-數(shù)組運算相同.MATLAB(matrix3)

[2]矩陣運算:矩陣加法:A+B矩陣乘法:A*B方陣的行列式:det(A)方陣的逆:inv(A)方陣的特征值與特征向量:[V,D]=eig[A]

返回第十八頁,共二十七頁,編輯于2023年,星期三關(guān)系與邏輯運算

1.關(guān)系操作符第十九頁,共二十七頁,編輯于2023年,星期三2.邏輯運算符第二十頁,共二十七頁,編輯于2023年,星期三1.for循環(huán):允許一組命令以固定的和預定的次數(shù)重復

forx=array{commands}end

在for和end語句之間的命令串{commands}按數(shù)組(array)中的每一列執(zhí)行一次.在每一次迭代中,x被指定為數(shù)組的下一列,即在第n次循環(huán)中,x=array(:,n)控制流MATLAB提供三種決策或控制流結(jié)構(gòu):

for循環(huán)、while循環(huán)、if-else-end結(jié)構(gòu).

這些結(jié)構(gòu)經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在MATLAB程序中,而不是直接加在MATLAB提示符下.例對n=1,2,…,10,求xn=的值.MATLAB(for1)第二十一頁,共二十七頁,編輯于2023年,星期三

while(expression){commands}end

只要在表達式(expression)里的所有元素為真,就執(zhí)行while和end語句之間的命令串{commands}.

2.While循環(huán)

與for循環(huán)以固定次數(shù)求一組命令相反,while循環(huán)以不定的次數(shù)求一組語句的值.MATLAB(while1)例設銀行年利率為11.25%.將10000元錢存入銀行,問多長時間會連本帶利翻一番?第二十二頁,共二十七頁,編輯于2023年,星期三3.if-else-end結(jié)構(gòu)(1)有一個選擇的一般形式是:

if(expression){commands}end如果在表達式(expression)里的所有元素為真,就執(zhí)行if和end語句之間的命令串{commands}.

MATLAB(fun1)MATLAB命令窗口輸入fun1(2),fun1(-1)即可.第二十三頁,共二十七頁,編輯于2023年,星期三2)有三個或更多的選擇的一般形式是:

if(expression1)

{commands1}elseif(expression2)

{commands2}

溫馨提示

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

最新文檔

評論

0/150

提交評論