資源描述:
《數(shù)學(xué)建模暑期培訓(xùn)課件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、數(shù)學(xué)建模暑期培訓(xùn)煙臺大學(xué)數(shù)學(xué)建模暑期培訓(xùn)陳傳軍2010.7.1252數(shù)學(xué)建模暑期培訓(xùn)第一部分MATLAB入門1.MATLAB作為線性系統(tǒng)的一種分析和仿真工具,是理工科大學(xué)生應(yīng)該掌握的技術(shù)工具,它作為一種編程語言和可視化工具,可解決工程、科學(xué)計算和數(shù)學(xué)學(xué)科中許多問題.2.MATLAB建立在向量、數(shù)組和矩陣的基礎(chǔ)上,使用方便,人機(jī)界面直觀,輸出結(jié)果可視化。3.矩陣是MATLAB的核心4.MATLAB的進(jìn)入與運行方式(兩種)一、變量與函數(shù)1、變量MATLAB中變量的命名規(guī)則是:(1)變量名必須是不含空格的單個詞;(2)變量名區(qū)分大小寫;(3)變量名最多不超過19個字符;(4)變
2、量名必須以字母打頭,之后可以是任意字母、數(shù)字或下劃線,變量名中不允許使用標(biāo)點符號.特殊變量表2、數(shù)學(xué)運算符號及標(biāo)點符號(1)MATLAB的每條命令后,若為逗號或無標(biāo)點符號,52數(shù)學(xué)建模暑期培訓(xùn)則顯示命令的結(jié)果;若命令后為分號,則禁止顯示結(jié)果.(2)“%”后面所有文字為注釋.(3)“...”表示續(xù)行.3、數(shù)學(xué)函數(shù)52數(shù)學(xué)建模暑期培訓(xùn)二、數(shù)組與矩陣1.數(shù)組1、創(chuàng)建簡單的數(shù)組x=[abcdef]創(chuàng)建包含指定元素的行向量x=first:last創(chuàng)建從first開始,加1計數(shù),到last結(jié)束的行向量x=first:increment:last創(chuàng)建從first開始,加incremen
3、t計數(shù),last結(jié)束的行向量x=linspace(first,last,n)創(chuàng)建從first開始,到last結(jié)束,有n個元素的行向量x=logspace(first,last,n)創(chuàng)建從first開始,到last結(jié)束,有n個元素的對數(shù)分隔行向量.2、數(shù)組元素的訪問(1)訪問一個元素:x(i)表示訪問數(shù)組x的第i個元素.(2)訪問一塊元素:x(a:b:c)表示訪問數(shù)組x的從第a個元素開始,以步長為b到第c個元素(但不超過c),b可以為負(fù)數(shù),b缺損時為1.(3)直接使用元素編址序號.x([abcd])表示提取數(shù)組x的第a、b、c、d個元素構(gòu)成一個新的數(shù)組[x(a)x(b)x(
4、c)x(d)].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’說明:以空格或逗號分隔的元素指定的是不同列的元素,而以分號分隔的元素指定了不同行的元素.4、數(shù)組的運算(1)標(biāo)量-數(shù)組運算數(shù)組對標(biāo)量的加、減、乘、除、乘方是數(shù)組的每個元素對該標(biāo)量施加相應(yīng)的加、減、乘、除、乘方運算.設(shè):a=[a1,a2,…,an],c=標(biāo)量則:a+c=[a1+c,a2+c,…,an+c]a.*c
5、=[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]52數(shù)學(xué)建模暑期培訓(xùn)(2)數(shù)組-數(shù)組運算當(dāng)兩個數(shù)組有相同維數(shù)時,加、減、乘、除、冪運算可按元素對元素方式進(jìn)行的,不同大小或維數(shù)的數(shù)組是不能進(jìn)行運算的.設(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
6、,a2/b2,…,an/bn]a.b=[b1/a1,b2/a2,…,bn/an]a.^b=[a1^b1,a2^b2,…,an^bn]2.矩陣1、矩陣的建立逗號或空格用于分隔某一行的元素,分號用于區(qū)分不同的行.除了分號,在輸入矩陣時,按Enter鍵也表示開始一新行.輸入矩陣時,嚴(yán)格要求所有行有相同的列.例m=[1234;5678;9101112]p=[111122223333]特殊矩陣的建立:a=[]產(chǎn)生一個空矩陣,當(dāng)對一項操作無結(jié)果時,返回空矩陣,空矩陣的大小為零.b=zeros(m,n)產(chǎn)生一個m行、n列的零矩陣c=ones(m,n)產(chǎn)生一個m行、n列的元素全為1的矩
7、陣d=eye(m,n)產(chǎn)生一個m行、n列的單位矩陣2、矩陣中元素的操作(1)矩陣A的第r行:A(r,:)(2)矩陣A的第r列:A(:,r)(3)依次提取矩陣A的每一列,將A拉伸為一個列向量:A(:)(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~j