版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
MATLAB
——數(shù)學建?;A教程主講者:程建MATLAB
——數(shù)學建模基礎教程主講者:程建MATLAB的概述MATLAB的歷史MATLAB的功能其它相關軟件MATLAB的概述MATLAB的歷史MATLAB的歷史
MATLAB1.0
1984
MATALB2
1986MATLAB3
1987MATLAB3.5
1990MATLAB4
1992MATLAB4.2cR7
1994MATLAB5.0R81996MATLAB5.1R91997MATLAB5.1.1R9.1
1997MATLAB5.2R10
1998MATLAB5.2.1R10.11998MATLAB5.3R111999MATLAB5.3.1R11.11999MATLAB6.0R122000MATLAB6.1R12.12001MATLAB的歷史MATLAB1.0
1984
MATLAB的歷史
MATLAB是MATrix
LABoratory的縮寫,是一款由美國TheMathWorks公司出品的商業(yè)數(shù)學軟件。MATLAB是一種用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術計算語言和交互式環(huán)境。除了矩陣運算、繪制函數(shù)/數(shù)據(jù)圖像等常用功能外,MATLAB還可以用來創(chuàng)建用戶界面及與調(diào)用其它語言(包括C,C++和FORTRAN)編寫的程序。盡管MATLAB主要用于數(shù)值運算,但利用為數(shù)眾多的附加工具箱(Toolbox)它也適合不同領域的應用,例如控制系統(tǒng)設計與分析、圖像處理、信號處理與通訊、金融建模和分析等。另外還有一個配套軟件包Simulink,提供了一個可視化開發(fā)環(huán)境,常用于系統(tǒng)模擬、動態(tài)/嵌入式系統(tǒng)開發(fā)等方面。MATLAB的歷史MATLAB是MATrix
LABora4MATLAB的歷史版本歷史:到7.1版為止,MATLB的釋放編號均以數(shù)字來命名,例如R7,R12.1,R14SP1等;從7.2版開始,釋放編號以年份來命名,每年3月份推出的用a表示,9月份推出的則以b表示,例如R2006a代表2006年3月推出的版本,R2009b指2009年下半年推出的版本MATLAB6.5R132002MATLAB6.5.1R13SP12003MATLAB6.5.2R13SP22003MATLAB7R142004MATLAB7.0.1R14SP12004MATLAB7.0.4
R14SP22005MATLAB7.1
R14SP32005MATLAB7.2R2006a2006MATLAB7.3
R2006b2006MATLAB7.4R2007a2007MATLAB7.5R2007b2007MATLAB7.6R2008a2008MATLAB7.7R2008b2008
MATLAB7.8R2009a2009.3.6MATLAB7.9R2009b2009.9.4MATLAB7.10R2010a2010.3.5MATLAB的歷史版本歷史:到7.1版為止,MATLB的釋放5MATLAB的主要功能1.數(shù)值計算和符號計算功能
MATLAB以矩陣作為數(shù)據(jù)操作的基本單位,還提供了十分豐富的數(shù)值計算函數(shù)。
MATLAB和著名的符號計算語言Maple相結合,使得MATLAB具有符號計算功能。MATLAB的主要功能1.數(shù)值計算和符號計算功能
MATLA6MATLAB的主要功能2.繪圖功能
MATLAB提供了兩個層次的繪圖操作:一種是對圖形句柄進行的低層繪圖操作,另一種是建立在低層繪圖操作之上的高層繪圖操作。MATLAB的主要功能2.繪圖功能
MATLAB提供了兩個層7例如描繪一個在[-4,4]區(qū)間內(nèi)的正弦函數(shù):>>x=-4:0.05:4;>>y=sin(x);>>plot(x,y)例如描繪一個在[-4,4]區(qū)間內(nèi)的正弦函數(shù):>>x=8利用plot命令也可以在同一幅圖中描繪多個函數(shù)圖形:>>x=0:.01:2*pi;>>y1=sin(x);>>y2=sin(2*x);>>y3=sin(4*x);>>plot(x,[y1;y2;y3])>>legend('y=sin(x)','y=sin(2x)','y=sin(4x)')利用plot命令也可以在同一幅圖中描繪多個函數(shù)圖形:>>9用MATLAB的畫圖命令可以生成復雜的三維圖形>>t=linspace(0,2*pi,512);>>[u,v]=meshgrid(t);>>a=-0.4;b=.5;c=.1;>>n=3;>>x=(a*(1-v/(2*pi)).*(1+cos(u))+c).*cos(n*v);>>y=(a*(1-v/(2*pi)).*(1+cos(u))+c).*sin(n*v);>>z=b*v/(2*pi)+a*(1-v/(2*pi)).*sin(u);>>surf(x,y,z,y)>>axisoff>>axisequal>>colormap(hsv(1024))>>shadinginterp>>materialshiny>>lightingphong>>camlight('left','infinite')>>view([-16025])用MATLAB的畫圖命令可以生成復雜的三維圖形>>t=10MATLAB的主要功能3.編程語言
MATLAB具有程序結構控制、函數(shù)調(diào)用、數(shù)據(jù)結構、輸入輸出、面向?qū)ο蟮瘸绦蛘Z言特征,而且簡單易學、編程效率高。MATLAB的主要功能3.編程語言
MATLAB具有程序結構11MATLAB的主要功能4.MATLAB工具箱
MATLAB包含兩部分內(nèi)容:基本部分和各種可選的工具箱。
MATLAB工具箱分為兩大類:功能性工具箱和學科性工具箱。MATLAB的主要功能4.MATLAB工具箱
MAT12Matlab常用工具箱MatlabMainToolbox——matlab主工具箱ControlSystemToolbox——控制系統(tǒng)工具箱CommunicationToolbox——通訊工具箱FinancialToolbox——財政金融工具箱SystemIdentificationToolbox——系統(tǒng)辨識工具箱FuzzyLogicToolbox——模糊邏輯工具箱BioinformaticsToolbox——生物分析工具箱Matlab常用工具箱MatlabMainToolbox13ImageProcessingToolbox——圖象處理工具箱DatabaseToolbox——數(shù)據(jù)庫工具箱ModelpredictiveControlToolbox——模型預測控制工具箱NeuralNetworkToolbox——神經(jīng)網(wǎng)絡工具箱OptimizationToolbox——優(yōu)化工具箱PartialDifferentialToolbox——偏微分方程工具箱RobustControlToolbox——魯棒控制工具箱ImageProcessingToolbox——圖象處理14SignalProcessingToolbox——信號處理工具箱SplineToolbox——樣條工具箱StatisticsToolbox——統(tǒng)計工具箱SymbolicMathToolbox——符號數(shù)學工具箱SimulinkToolbox——動態(tài)仿真工具箱VirtualRealityToolbox——虛擬現(xiàn)實工具箱WaveletToolbox——小波工具箱等等…….
而且每個新出的版本都在增加、更新完善。SignalProcessingToolbox——信號處15控制系統(tǒng)工具箱
ControlSystemToolbox連續(xù)系統(tǒng)設計和離散系統(tǒng)設計狀態(tài)空間和傳遞函數(shù)以及模型轉(zhuǎn)換時域響應(脈沖響應、階躍響應、斜坡響應)頻域響應(Bode圖、Nyquist圖)根軌跡、極點配置控制系統(tǒng)工具箱
16遺傳算法和直接搜索工具箱
GeneticAlgorithmandDirectSearchToolbox是針對MATLAB優(yōu)化處理算法的擴展,它在MATLAB和OptimizationToolbox的基礎上,提供遺傳算法和直接搜索的基本功能。使用遺傳算法工具箱的兩種方法:直接在命令窗口使用函數(shù)。
[xfval]=ga(@fitnessfun,nvars,options)遺傳算法和直接搜索工具箱
GeneticAl17matlab數(shù)學建?;A教程課件182.圖形界面互動操作方法??蛇x內(nèi)部函數(shù)@ackleyfcn或者@rastriginsfcn2.圖形界面互動操作方法。19matlab數(shù)學建?;A教程課件20Rastrigin'sFunctionRastrigin'sFunction21matlab數(shù)學建?;A教程課件22可以設置參數(shù)來調(diào)整顯示結果可以設置參數(shù)來調(diào)整顯示結果23直接搜索算法同樣有兩種類似的運行方法直接搜索算法同樣有兩種類似的運行方法24優(yōu)化工具箱(沒有圖形操作界面)
OptimizationToolbox線型規(guī)劃和二次規(guī)劃求函數(shù)的最大值和最小值多目標優(yōu)化約束條件下的優(yōu)化非線型方程求解Demo:toolbox/optimization優(yōu)化工具箱(沒有圖形操作界面)
OptimizationT25求解線性規(guī)劃線性規(guī)劃是一種優(yōu)化方法,Matlab優(yōu)化工具箱中有現(xiàn)成函數(shù)linprog對如下式描述的LP問題求解:求解線性規(guī)劃線性規(guī)劃是一種優(yōu)化方法,Matlab優(yōu)化工具箱26matlab數(shù)學建?;A教程課件27解:編寫M文件小xxgh1.m如下:c=[-0.4-0.28-0.32-0.72-0.64-0.6];A=[0.010.010.010.030.030.03;0.02000.0500;00.02000.050;000.03000.08];b=[850;700;100;900];Aeq=[];beq=[];vlb=[0;0;0;0;0;0];vub=[];[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)解:編寫M文件小xxgh1.m如下:28解:編寫M文件xxgh2.m如下:
c=[634];A=[010];b=[50];Aeq=[111];beq=[120];vlb=[30,0,20];vub=[];[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)matlab數(shù)學建模基礎教程課件29信號處理工具箱SignalProcessingToolbox數(shù)字和模擬濾波器設計、應用及仿真譜分析和估計FFT、DFT等變換參數(shù)化模型matlab數(shù)學建?;A教程課件30學科前沿最新的工具箱模糊控制邏輯工具箱友好的交互設計界面,自適應神經(jīng)-模糊學習、聚類以及Sugeno推理。神經(jīng)網(wǎng)絡工具箱神經(jīng)網(wǎng)絡系統(tǒng)具有集體運算的能力和自適應的學習能力。具有很強的容錯性和魯棒性,善于聯(lián)想、綜合和推廣。學科前沿最新的工具箱模糊控制邏輯工具箱31工具箱的擴充功能:用戶可以修改工具箱中的函數(shù),更為重要的是用戶可以通過編制m文件來任意地添加工具箱中原來沒有的工具函數(shù)。此功能充分體現(xiàn)了matlab語言的開發(fā)性。工具箱的擴充功能:用戶可以修改工具箱中32二、通用工具箱Matlab主工具箱前面課程所介紹的數(shù)值計算、符號運算、繪圖以及句柄繪圖都是matlab主工具箱的內(nèi)容,是matlab的基本部分,也是我們課程的重點。Matlab主工具箱位于:
c:\matlab\toolbox\matlabmatlab主工具箱是任何版本的matlab都不可缺少的。二、通用工具箱Matlab主工具箱33除toolbox\matlab之外的工具箱,在比較完整的專業(yè)版matlab語言中有20多個工具箱。這些工具箱是需要單獨選擇購買的。matlab主工具箱共有31個函數(shù)庫datafun——數(shù)據(jù)分析函數(shù)庫sonnds——聲音處理函數(shù)庫dde——動態(tài)數(shù)據(jù)交換函數(shù)庫elfun——初等數(shù)學函數(shù)庫specmat——特殊矩陣函數(shù)庫除toolbox\matlab之外的工具箱,在比較完整的專業(yè)34elmat——初等矩陣和時間函數(shù)庫funfun——函數(shù)功能和數(shù)學分析函數(shù)庫general——通用命令函數(shù)庫graphics——通用圖形函數(shù)庫iofun——底層輸入輸出函數(shù)庫lang——語言結構函數(shù)庫matfun——矩陣線性代數(shù)函數(shù)庫ops——運算符和邏輯函數(shù)庫plotxy——二維繪圖函數(shù)庫plotxyz——三維繪圖函數(shù)庫elmat——初等矩陣和時間函數(shù)庫35color——顏色和光照函數(shù)庫polyfun——多項式函數(shù)庫sparfun——稀疏矩陣函數(shù)庫strfun——字符串函數(shù)庫demos——matlab演示函數(shù)庫Matlab6新增函數(shù)庫:uitools——圖形界面函數(shù)庫datatypes——數(shù)據(jù)類型函數(shù)庫graphics——句柄繪圖函數(shù)庫graph3d——三維繪圖color——顏色和光照函數(shù)庫36
各函數(shù)庫中的函數(shù)可用help函數(shù)庫名查詢,或type函數(shù)名方法查詢例:helpplotxyTwodimensionalgraphics.ElementaryX-Ygraphs.plot-Linearplot.loglog-Log-logscaleplot.semilogx-Semi-logscaleplot.semilogy-Semi-logscaleplot.fill-Drawfilled2-Dpolygons.各函數(shù)庫中的函數(shù)可用help函數(shù)庫名查詢,或37Graphannotation.title-Graphtitle.xlabel-X-axislabel.ylabel-Y-axislabel.text-Textannotation.gtext-Mouseplacementoftext.grid-Gridlines.SeealsoPLOTXYZ,GRAPHICS.Graphannotation.382.符號運算工具箱主要功能以符號為對象的數(shù)學。在大學教學中,符號數(shù)學是各專業(yè)都能用到的。符號運算無須事先對獨立變量賦值,運算結果以標準的符號形式表達。特點:運算對象可以是沒賦值的符號變量可以獲得任意精度的解
2.符號運算工具箱主要功能以符號為對象的數(shù)學。39符號運算的功能符號表達式、符號矩陣的創(chuàng)建符號可變精度求解符號線性代數(shù)因式分解、展開和簡化符號代數(shù)方程求解符號微積分符號微分方程符號運算的功能符號表達式、符號矩陣的創(chuàng)建40例如:z='a*t^2+b*t+c';r=solve(z,‘t’)——對缺省變量求解r=[1/2/a*(-b+(b^2-4*a*c)^(1/2))][1/2/a*(-b-(b^2-4*a*c)^(1/2))]例如:41對任意變量求解r=solve(z,'b')r=-(a*t^2+c)/tr=solve(z,'c')r=-a*t^2-b*tr=solve(z,'a')r=-(b*t+c)/t^2對任意變量求解423.Simulink動態(tài)仿真工具箱simulink工具箱簡介simulink是實現(xiàn)動態(tài)系統(tǒng)建模、仿真和分析的一個集成環(huán)境,使得matlab的功能得到進一步擴展,它可以非常容易的實現(xiàn)可視化建模,把理論研究和工程實踐有機的結合在一起。大部分專用工具箱只要以matlab主包為基礎就能運行,有少數(shù)工具箱(通訊工具箱、信號處理工具箱等)則要求有simulink工具箱的支持。3.Simulink動態(tài)仿真工具箱simulink工具箱簡43由于matlab和simulink是集成在一起的,因此用戶可以在兩種環(huán)境下對自己的模型進行仿真、分析和修改。不用命令行編程,由方框圖產(chǎn)生m文件
(s函數(shù))。當創(chuàng)建好的框圖保存后,相應的m文件就自動生成,這個.m文件包含了該框圖的所有圖形及數(shù)學關系信息??驁D表示比較直觀,容易構造,運行速度較快。由于matlab和simulink是集成在一起的,因此用戶可44Simulink優(yōu)點適應面廣:包括線性、非線性系統(tǒng);離散、連續(xù)系統(tǒng);定性系統(tǒng)。結構和流程清晰:以方塊圖形式呈現(xiàn)仿真精細、貼近實際可實現(xiàn)物理仿真;計算機仿真;半實物仿真;虛擬仿真;構造仿真。Simulink優(yōu)點45simulink的模型:
simulink模型在視覺上表現(xiàn)為方框圖,在文件上則是擴展名為m的ASCII代碼(matlab7是擴展名為mdl的ASCII代碼);在數(shù)學上體現(xiàn)為一組微分方程或差分方程;在行為上模擬了物理器件構成的實際系統(tǒng)的動態(tài)特性。simulink的一般結構:輸入系統(tǒng)輸出simulink的模型:輸入系統(tǒng)輸出46仿真原理當在框圖視窗中進行仿真的同時,matlab實際上是運行保存于simulink內(nèi)存中s函數(shù)的映象文件,而不是解釋運行該m文件。s函數(shù)并不是標準m文件,它可以是m文件,也可以是c或c++程序,通過一定的規(guī)則讓simulink的模型或模塊能夠被調(diào)用。例:連體彈簧振子運動仿真模型
>>dblcart1仿真原理47matlab數(shù)學建模基礎教程課件48擊三角運行仿真模型擊三角運行仿真模型49結構圖創(chuàng)建方法一個動態(tài)系統(tǒng)的創(chuàng)建過程,就是一個方框圖的繪制過程具體步驟:在matlab命令窗口鍵入simulink或者單擊simulink快捷鍵結構圖創(chuàng)建方法50信號源庫離散模塊庫非線性模塊庫其它模塊庫仿真連接模塊庫線性模塊庫輸出模塊庫信號源庫離散模塊庫非線性模塊庫其它模塊庫仿真連接模塊庫線性模51matlab數(shù)學建模基礎教程課件52例:對滿足數(shù)學規(guī)律的過程進行仿真,結果用示波器來顯示,仿真時間t為10個單位。解題思路:本題需要積分模塊(積分模塊的輸入為,輸出為x)、正弦波模塊作為數(shù)學處理的模塊。例:對滿足53matlab數(shù)學建?;A教程課件54matlab數(shù)學建?;A教程課件55例:模擬一個微分方程
x=-2x+uu
xx-2x..例:模擬一個微分方程uxx-2x..56方框圖繪制完畢,一個動態(tài)系統(tǒng)模型也就創(chuàng)建好了。選擇File菜單Save保存圖形,就自動生成一個可在matlab命令窗口運行的m文件。然后就可用simulation菜單中start開始仿真了。方框圖繪制完畢,一個動態(tài)系統(tǒng)模型也就創(chuàng)建好了。57仿真結果:仿真結果:58matlab數(shù)學建模基礎教程課件59三、工具箱和工具箱函數(shù)的查詢辦法matlab的目錄結構目錄樹c:\matlab\binc:\matlab\externc:\matlab\simulinkc:\matlab\toolbox\comm\c:\matlab\toolbox\control\c:\matlab\toolbox\symbolic\...三、工具箱和工具箱函數(shù)的查詢辦法matlab的目錄結構.60matlab\bin——該目錄包含matlab系統(tǒng)運行文件,matlab幫助文件及一些必需的二進制文件。matlab\extern——包含MATLAB與C,FORTRAN語言的交互所需的函數(shù)定義和連接庫。matlab\simulink——包含建立simulinkMEX-文件所必需的函數(shù)定義及接口軟件。matlab\toolbox——各種工具箱,MathWorks公司提供的商品化matlab工具箱有30多種。toolbox目錄下的子目錄數(shù)量是隨安裝情況而變的。matlab\bin——該目錄包含matlab系統(tǒng)運行文612.工具箱matlabtoolbox工具箱在windows下由目錄檢索得到。也可以在matlab下得到,啟動matlab后
cd_..——matlab缺省目錄是bin,回到
matlab目錄下
cd_toolbox
2.工具箱62dir——工具箱清單.compilerfixpointlminagqft..controlfuzzylocalncdrobustadasymbolicdspblkshosamatlabnnetsignaluitoolscodegenfdidentidentmpcoptimsimulinkwaveletcommfinancesplinespdeesmutoolsstatsdir——工具箱清單633.工具箱函數(shù)清單的獲得所有工具箱中都有函數(shù)清單文件contents.m,可用各種方法得到工具箱函數(shù)清單執(zhí)行在線幫助命令
help工具箱名稱列出該工具箱中contents.m的內(nèi)容,顯示該工具箱中所有函數(shù)清單例如:helpsymbolichelpoptim
函數(shù)的查詢:help函數(shù)名3.工具箱函數(shù)清單的獲得64使用type命令得到工具箱函數(shù)的清單
typesignal\contentstypeoptim\contents如果在當前工具箱目錄下可用
helpcontentstypecontents得到該工具箱的函數(shù)清單由于contents.m為文本文件,可以通過任何文本編輯器打開閱讀如:edit、word、寫字板、記事本使用type命令得到工具箱函數(shù)的清單654.matlab函數(shù)的查閱與定位which函數(shù)名——給函數(shù)定位例如:whichlaplaced:\matlab42\toolbox\symbolic\laplace.mwhichfft2d:\matlab42\toolbox\matlab\datafun\fft2.mwhichpolyd:\matlab42\toolbox\matlab\polyfun\poly.m4.matlab函數(shù)的查閱與定位which函數(shù)名——66whichconstrd:\matlab42\toolbox\optim\constr.mwhichplotplotisabuilt-infunction.which命令只能定位matlab的外部命令,而對內(nèi)部命令是無效的。matlab內(nèi)部函數(shù)只能通過contents.m工具箱清單文件來查詢whichconstr67matlab函數(shù)的查詢與定位在matlab命令窗口鍵入peakstypepeaks——得到peaks.m函數(shù)的清單試確定下面matlab函數(shù)在工具箱中的位置
ifnarginisstudentmeshgridmaxdispsurfaxisxlabelmatlab函數(shù)的查詢與定位68工具箱的添加很多時候我們要將一個工具箱添加到到系統(tǒng)中來運行。如果是Matlab安裝光盤上的工具箱,重新執(zhí)行安裝程序,選中即可。如果是單獨下載的工具箱,一般情況下僅需要把新的工具箱解壓到某個目錄(例如toolbox目錄下),然后用addpath(對于多個目錄的使用genpath()或者pathtool添加工具箱的路徑,然后用whichnewtoolbox_command.m來檢驗是否可以訪問。如果能夠顯示新設置的路徑,則表明該工具箱可以使用了。具體請看工具箱自己代的readme文件。如果是自己編寫的工具箱添加方法同上。
工具箱的添加很多時候我們要將一個工具箱添加到到系統(tǒng)中來運行。69*70who
列出在MATLAB工作空間中已有的變量whos
列出駐留變量的同時,還給出維數(shù)及性質(zhì)clear
刪除內(nèi)存中的變量(數(shù)據(jù))clc
刪除命令窗口的內(nèi)容(已使用過的命令)home
光標移到命令窗口的左上角clf
刪除圖形窗口的內(nèi)容↑
調(diào)出剛才使用過的命令quit
退出MATLAB11/15————MATLAB
常用函數(shù)介紹————MATLAB命令窗口的部分通用命令*70who列出在MATLAB工作空間中已有的變量其它相關軟件
MapleMaple是WaterlooMapleInc.(簡稱Maplesoft)開發(fā)的商業(yè)計算機代數(shù)系統(tǒng),用于快速計算、開發(fā)設計表單、教學基本概念或建立高保真模擬模型等。最新版本是2010年4月發(fā)布的第14版,分Student(學生版)、Academic(高校版)、Professional(專業(yè)版)和Personal(個人版)。其它相關軟件
Maple71其它相關軟件MathematicaMathematica是斯蒂芬·沃爾夫勒姆開發(fā)的技術運算軟件,開發(fā)工作現(xiàn)由WolframResearch公司負責。最新版本是2010年11月發(fā)布的Mathematica8其它相關軟件Mathematica72LabVIEWLabVIEW是美國國家儀器公司開發(fā)的可視化編程平臺,主要用于數(shù)據(jù)采集,儀器控制和工業(yè)自動化。最新版本是2010年8月發(fā)布的LabVIEW2010LabVIEW73FreeMatFreeMat是一個與MATLAB和互動式數(shù)據(jù)語言(IDL)很類似的數(shù)值計算平臺及程序語言。最新版本是2009年10月發(fā)布的FreeMat4.0FreeMat74GNUOctaveGNUOctave是一種主要用于數(shù)值計算的高級語言。它除了提供用數(shù)值方法解決線性和非線性問題的命令行界面,還提供了一種與MATLAB大抵兼容的語言。最新版本是2010年1月發(fā)布的3.2.4。GNUOctave75ScilabScilab是一個交互性的數(shù)值運算平臺,主要用于工程和科學應用方面,例如航空航天、汽車、能源、金融、化學、生物、醫(yī)學、國防等。最新版本是5.3.3。Scilab76ScicosLabScicosLab是由一些曾在INRIA和ENPC參與Scilab開發(fā)的研究人員,在ScilabBUILD4版本的基礎上開發(fā)出來的GTK+版本,它集成了建模/模擬工具Scicos及其它數(shù)量眾多的工具箱,被認為是“惟一一款可以與商業(yè)軟件MATLAB/Simulink及MATRIXx/SysstemBuild媲美的開源軟件”。最新穩(wěn)定版本是4.3。ScicosLab77MATLAB程序設計基礎MATLAB語言的基本要素MATLAB語言的核心——矩陣單元型數(shù)據(jù)和結構型數(shù)據(jù)M文件流程控制語句MATLAB程序設計基礎MATLAB語言的基本要素*79MATLAB語言的基本要素變量
變量不需要事先聲明,也不需要指定變量類型,它會自動根據(jù)所賦予變量的值或?qū)ψ兞康牟僮鱽泶_定變量的類型;賦值過程中,如果變量已存在,則用新值代替舊值,以新的類型代替舊的類型。變量的命名規(guī)則:變量名區(qū)分大小寫;變量名長度不超過31位,第31位之后的字符被忽略;變量名以字母開頭,變量名中可以包含字母、數(shù)字、下劃線,但不能使用標點。
變量一般為局部變量,即僅在其調(diào)用的M文件內(nèi)部有效;若要定義全局變量,須在變量前加關鍵字global。Matlab語言主要是由幾個基本要素構建而成的,其中包括變量、常量、數(shù)值、字符串、運算符及標點等?;氐街髂夸?79MATLAB語言的基本要素變量Matla*80常量
matlab中預定義的一些特殊的量。
i,j虛數(shù)單位 Realmin最小的正浮點數(shù),
pi圓周率 Realmax最大的浮點數(shù),
eps浮點運算的相對精度 Inf 無窮大
NaNNot-a-Number,表示不定值
例如:
>>pi ans=%ans是默認的結果變量
3.1416*80常量*81>>1/0Warning:Dividebyzero.ans=Inf>>0/0Warning:Dividebyzero.ans=NaN*81>>1/0*82
定義變量時應避免與常量名相同,如果改變了某個常量的值,可以用“clear+常量名”命令來恢復該常量的初始設定值。>>pi=1pi=1>>clearpi>>pians=3.1416*82定義變量時應避免與常量名相同,如果改變*83數(shù)值數(shù)值缺省為實數(shù)保留小數(shù)點后4位浮點數(shù)表示。其輸入格式與C語言一致:如:9-730.19991.475e6
輸出格式由format命令控制,只是影響屏幕顯示效果,不影響內(nèi)部存儲和計算。下面以pi為例。>>formatlong;pians=3.14159265358979>>formatlonge;pians=3.141592653589793e+000>>formatlongg;pians=3.14159265358979*83數(shù)值>>formatlong;pi*84>>z=2*exp(pi/3i)z=1.0000+1.7321iMatlab語言還提供了復數(shù)的表達和運算功能。復數(shù)的基本單位表示為i或j。例如:如果是表達式,必須在虛部的數(shù)值與i、j之間使用乘號。>>sin(pi/3)+cos(pi/3)j???sin(pi/3)+cos(pi/3)j
Error:UnexpectedMATLABexpression.>>sin(pi/3)+cos(pi/3)*jans=0.8660+0.5000i*84>>z=2*exp(pi/3i)Matlab語言還提*85字符串字符串用單引號輸入或賦值;字符串的每個字符都是都是字符數(shù)組的一個元素;字符串和字符數(shù)組基本上等價。>>s='iloveyou's=iloveyou>>size(s)ans=110>>s(2)ans=>>s(10)ans=u字符串的每個字符(包括空格)都是字符數(shù)組的一個元素。在matlab中,字符串與字符數(shù)組或矩陣基本上是等價的。*85字符串>>s='iloveyou'>>size*86
如果在字符串內(nèi)使用單引號時,可以用連續(xù)兩個單引號表示。例如:
字符串之間的轉(zhuǎn)換函數(shù):
double字符串轉(zhuǎn)換為數(shù)值代碼num2str數(shù)字轉(zhuǎn)換為字符串
int2str整數(shù)轉(zhuǎn)換為字符串mat2str矩陣轉(zhuǎn)換為字符串
str2num轉(zhuǎn)換字符串為數(shù)字>>double(s)‘%s=‘iloveyou’ans=1053210811111810132121111117>>s='it''sgood‘s=it'sgood*86如果在字符串內(nèi)使用單引號時,可以用連續(xù)兩*87>>a=[1:5]a=12345>>b=num2str(a)b=2345>>a*2ans=246810>>b*2ans=986464100646410264641046464106*87>>a=[1:5]*88
matlab對字符串的操作與C語言中的幾乎完全相同:
strcat鏈結串strcmp比較串strvcat垂直鏈結串
strncmp比較串的前n個字符findstr在其他串中找此串
upper轉(zhuǎn)換串為大寫lower轉(zhuǎn)換串為小寫
blanks生成空串deblank移去串中空格……例如:把前面的字符串s轉(zhuǎn)化成大寫。s=“it’good”>>upper(s)ans=IT'SGOOD執(zhí)行字符串的功能用eval來實現(xiàn)。>>t=‘1/(a*b-1)’;a=2;b=3;c=eval(t)%可以在一行中表示。c=0.2000*88matlab對字符串的操作與C語言中的幾乎*89運算符
在matlab語言中運算符包括算術運算符、關系運算符和邏輯運算符。其中算術運算符見右表:其中點運算是指操作元素點對點的運算,也就是說矩陣內(nèi)元素對元素之間的運算,點運算要求參與運算的變量在結構上必須是相似的。例如:操作符定義+算術加-算術減*算術乘.*點乘^算術乘方.^點乘方\算術左除.\點左除/算術右除./點右除*89運算符操作符定義+算術加-算術減*算術乘.*點乘^算術*90>>a=[1,2,3;4,5,6;7,8,9]a=123456789>>b=[123456789]b=123456789>>c=a*bc=303642668196102126150>>d=a.*bd=149162536496481思考:題目:通過描點法得到sin(x)xcos(x)函數(shù)在0-pi區(qū)間上的曲線。提示:通過點運算獲得。(附件diancheng。txt)*90>>a=[1,2,3;4,5,6;7,8,9]>>*91Matlab語言的關系運算符如右表:當判斷一個矩陣是否為空矩陣時,一般不用“==”,而應當使用函數(shù)isempty。操作符定義==等于~=不等于>大于>=大于等于<小于<=小于等于*91Matlab語言的關系運算符如右表:操作符定*92Matlab語言的邏輯運算符如右表:進行邏輯判斷時,所有非零數(shù)值均被認為為真,而零為假;在邏輯判斷結果中,判斷為真時輸出1,為假時輸出0.三種運算符中,它們的優(yōu)先級關系先后為:算術運算符、關系運算符、邏輯運算符。操作符定義&邏輯與|邏輯或~邏輯非xor邏輯異或any當向量中存在非零元素時為真all當向量中所有元素非零時為真*92Matlab語言的邏輯運算符如右表:操作符定*93>>a=[1:3;4:6;7:9];>>x=5;>>y=ones(3)*5;>>xa=x<=axa=000011111>>b=[010;101;001];>>ab=a&bab=010101001>>nb=~bnb=101010110*93>>a=[1:3;4:6;7:9];>>ab=a&b*94>>a=magic(5);>>a(:,3)=zeros(5,1)a=17240815235014164602022101202131118029>>a1=all(a(:,1)<10)a1=0>>a2=all(a>3)a2=11000>>a11=any(a(:,1)>10)a11=1>>a22=any(a>10)a22=11011*94>>a=magic(5);>>a2=all(a>3)*95標點在matlab中一些標點符號也被賦以特殊的意義,或表示要進行一定的運算等,如下表:標點定義標點定義:冒號,具有多種應用功能…續(xù)行符;區(qū)分行,及取消結果顯示%注釋標記,區(qū)分列,及函數(shù)參數(shù)分隔符等!調(diào)用操作系統(tǒng)運算()指定運算過程中的先后次序等[]矩陣定義的標志等{}用于構成單元數(shù)組等‘字符串的標示符*95標點標點定義標點定義:冒號,具有多種應用功能…續(xù)行符;*96
下面對上表中各標點作進一步的介紹。首先,用冒號來定義行向量?;靖袷剑簒=x1:step:x2(初始值:步長:尾元素數(shù)值限)
x=x1:x2(默認步長為1)注意:這里強調(diào)x2為尾元素數(shù)值限,而不是尾元素值。當x2-x1恰為步長的整數(shù)倍時,x2才能成為尾值。例如:*96下面對上表中各標點作進一步的介紹。*97>>a=1:2:12a=1357911>>a=12:-2:1a=12108642>>a=1:6a=123456>>a=2:2:12a=24681012*97*98其次,通過使用冒號,可以截取指定矩陣中的部分。例如:>>a=[1:18];a=reshape(a,3,6)%重組矩陣a=147101316258111417369121518>>a1=a(:,1:3)%提取矩陣a的第1到3列元素組成的子矩陣。a1=147258369>>a2=a(1:2,3:end)a2=71013168111417思考:B1=a(1:3,:)?*98其次,通過使用冒號,可以截取指定矩陣中的部分。例如:>*99
分號在matlab語言中所起的作用是作為分隔行的標志,這里包括在矩陣定義中對行的區(qū)分以及在程序代碼中對行的劃分。在矩陣定義中,分號之間的數(shù)據(jù)被認為是矩陣的同一行。對于以分號結尾的行語句,matlab語言不會把其運算結果顯示在命令窗口中。逗號主要起兩個作用。其一是逗號是函數(shù)參數(shù)的分隔符,也是矩陣下標的分隔符。其二是逗號也是區(qū)分矩陣列的標志,在同一行中,逗號分隔開的是各個列。括號是調(diào)整運算先后次序的標點,可以通過引用括號來調(diào)整運算次序。矩陣的定義需要使用中括號。此外,中括號可以表示空矩陣,并通過該空矩陣實現(xiàn)對矩陣的部分刪除。以下舉例:*99分號在matlab語言中所起的作*100>>a=[1,2,3,4;5,6,7,8;4,3,2,1;8,7,6,5]a=1234567843218765>>a(:,1:2)=[]a=34782165>>b=a([13],:)b=3421*100>>a=[1,2,3,4;5,6,7,8;4,3,*101
大括號是單元型數(shù)據(jù)所特有的標點。后面介紹。小數(shù)點“.”,它起到了數(shù)學符號的作用;而作為點運算的標志符,它又構成了各種各樣的點運算;最重要的是它可作為結構型數(shù)組應用時的專有符號?!啊睘閙atlab語言中的續(xù)行符,但是該續(xù)行符只能出現(xiàn)在各個語義群之間,也就是說不能出現(xiàn)在變量名之間,否則出錯。例如:>>a=sin(pi/4)+cos(pi/4)-tan(pi/4)...+cot(pi/4)a=1.4142>>a=sin(pi/4)+cos(pi/4)-t...an(pi/4)???an(pi/4)|Error:UnexpectedMATLABexpression.*101大括號是單元型數(shù)據(jù)所特有的標點。后面介紹*102
在matlab語言中,一行內(nèi)在“%”之后的文字均被認為是對M文件或程序代碼的解釋部分?!?!”可以在命令窗口直接調(diào)用操作系統(tǒng)命令,例如DOS命令,并將結果展示在命令窗口中,比如在命令窗口中調(diào)用“!dirc”,以顯示C盤的文件列表。單引號作為字符串的標示符而存在,同時,它在矩陣運算中也表示矩陣的轉(zhuǎn)置運算及復數(shù)的共軛值。*102在matlab語言中,一行內(nèi)在*103>>a=[1,2,3,4;5,6,7,8]a=12345678>>a'ans=15263748>>s=3-4i;s'ans=3.0000+4.0000i回到主目錄*103>>a=[1,2,3,4;5,6,7,8]回到主目*104MATLAB語言的核心——矩陣矩陣的生成直接輸入小矩陣(最簡便的方法)
注意點:輸入矩陣時要以“[]”為其標識,即矩陣的元素應在“[]”內(nèi)部。矩陣的同行元素之間可由空格或“,”分隔,行與行之間用“;”或回車符分隔。矩陣元素可為運算表達式。無任何元素的空矩陣也合法?;氐街髂夸?104MATLAB語言的核心——矩陣矩陣的生成回到主目錄*105>>A=[1,2,3;4,5,6;7,8,9]A=123456789>>a=[123456789]a=123456789創(chuàng)建帶有運算表達式的矩陣:>>b=[sin(pi/3),cos(pi/4);log(9),tan(pi/4)];%什么樣的結果?*105>>A=[1,2,3;4,5,6;7,8,9*106利用中括號將小矩陣合成一個大矩陣>>b=[1,2;3,4];>>a=[b,b';b^2,b*3]a=12133424710361522912從外部文件引用矩陣(excel,txt)(shuju1,shuju2)*106利用中括號將小矩陣合成一個大矩陣*107特殊矩陣的生成常用的特殊矩陣空陣:[]
單位陣:eye(m,n);eye(m)
零矩陣:zeros(m,n);zeros(m)
全1陣:ones(m,n);ones(m)
對角陣:對角元素向量V=[a1,a2,…,an] A=diag(V)
隨機陣:rand(m,n)產(chǎn)生一個m×n的均勻分布的隨機矩陣*107特殊矩陣的生成*108>>eye(2,3)ans=100010>>zeros(2,3)ans=000000>>ones(2,3)ans=11111
1>>v=[567];a=diag(v)a=500060007>>eye(2)ans=1001>>zeros(2)ans=0000>>ones(2)ans=1111
如果已知a為方陣,則v=diag(a)可以提取a的對角元素構成向量v。*108>>eye(2,3)>>eye(2)*109其他特殊矩陣
compan友矩陣函數(shù)magic魔方矩陣
hankelHankel矩陣 rosser對稱特征值測試矩陣
hilbHilbert矩陣pascalPascal矩陣
invhilb反Hilbert矩陣vander范德蒙矩陣
……
其中,compan(c),結果是生成一以向量c為系數(shù)的多項式的特征矩陣。hilb所生成的hilbert矩陣的特點是矩陣中的元素值為1/(i+j-1)。*109其他特殊矩陣*110單元型數(shù)據(jù)和結構型數(shù)據(jù)單元型變量
單元型變量是matlab語言中較為特殊的一種數(shù)據(jù)類型。本質(zhì)上講,單元型變量為任意類型的多維數(shù)組。單元型變量可有兩種方式:一種是用賦值語句直接定義,另一種是由cell函數(shù)預先分配存儲空間,然后對單元元素逐個賦值。在直接賦值過程中,與在矩陣的定義中使用中括號不同,單元型變量的定義需用大括號,而元素間用逗號隔開。回到主目錄*110單元型數(shù)據(jù)和結構型數(shù)據(jù)單元型變量回到主目錄*111>>a=[1,2;3,4]a=1234>>b={1:4,a,‘a(chǎn)bcd’}b=[1x4double][2x2double]'abcd'>>cellplot(b)%圖形顯示單元型變量的內(nèi)容>>celldisp(b)%顯示單元型變量的內(nèi)容b{1}=1234b{2}=1234b{3}=abcd*111>>a=[1,2;3,4]*112
單元型變量元素的引用采用大括號為下標標識,用小括號只顯示該元素的壓縮形式。例如:>>b{2}ans=1234>>b(2)ans=[2x2double]注意:單元型變量的元素不是以指針方式保存的。思考:如果改變了上例中的a矩陣,那么單元型變量b中的第二個元素改變不?*112單元型變量元素的引用采用大括號*113
單元型變量與矩陣的另一個區(qū)別是單元型變量自身可以嵌套。例如:>>c=cell(1,3)%另一種定義法>>c{1,1}=1:4;>>c{1,2}=a;>>c{1,3}=b;%b={1:4,a,‘a(chǎn)bcd’}>>cc=[1x4double][2x2double]{1x3cell}>>c{3}{3}ans=abcd*113單元型變量與矩陣的另一個區(qū)別是單元型變*114結構型變量
在matlab語言中結構型變量的定義也有兩種方法,其一是直接賦值定義,其二是由函數(shù)struct定義。以指針操作符“.”連接結構型變量名與屬性名。直接賦值時,應當指出結構中的屬性名。例如:>>A.a1=‘a(chǎn)bcd’;%字符串類型>>A.a2=1;%數(shù)值類型>>A.a3=[1,2,3,4];%數(shù)組類型>>AA=a1:'abcd'a2:1a3:[1234]
思考:如何引用結構型變量名A中a1屬性的c元素。
*114結構型變量*115
由函數(shù)struct定義結構型變量,其調(diào)用格式如下:結構型變量名=struct(元素名1,元素值1,元素2,元素值2,……)>>B=[1,2;3,4];>>C=struct('c1',1,'c2',B,'c3','abcd')C=c1:1c2:[2x2double]c3:'abcd‘>>C.c2ans=1234*115由函數(shù)struct定義結構型變量,其調(diào)用格*116
結構型變量可以嵌套定義。例如:
>>C.c1=A%前面結構型變量AC=c1:[1x1struct]c2:[2x2double]c3:'abcd‘>>C.c1.a1%嵌套結構型變量的引用ans=abcd*116結構型變量可以嵌套定義。例如:*117M文件
所謂M文件就是由matlab語言編寫的可在matlab語言環(huán)境下運行的程序源代碼文件。Matlab語言中的M文件可分為命令式(script)和函數(shù)式(function)兩種形式。M文件可在matlab的程序編輯器中編寫,也可在其他的文本編輯器中編寫,并以“.m”為擴展名加以保存。命令式文件
命令式文件就是命令行的簡單疊加,matlab會自動按順序執(zhí)行文件中的命令。值得注意的是,命令式文件在運行過程中可以調(diào)用matlab工作域內(nèi)所有的數(shù)據(jù),而且所產(chǎn)生的所有變量均為全局變量?;氐街髂夸?117M文件所謂M文件就是由matl*118函數(shù)式文件函數(shù)式文件主要用于解決計算中的參數(shù)傳遞和函數(shù)調(diào)用的問題。函數(shù)式的標志是它的第一行為function語句。函數(shù)式文件可以有返回值,也可以沒有。函數(shù)式文件執(zhí)行之后,只保留最后結果,不保留任何中間過程,所定義的變量也僅在函數(shù)內(nèi)部起作用,并隨著調(diào)用的結束而被清除。即除無特殊聲明外,其變量均為局部變量。注意:存儲函數(shù)式M文件時文件名要與主函數(shù)名相一致。*118函數(shù)式文件*119函數(shù)式文件:functionabcd(a,b)c=a+bd=b-a保存為abcd.m在工作窗口中調(diào)用:>>a=2;b=[3,4,5,6];>>abcd(a,b)c=5678d=1234>>c%結果是什么?命令式文件:a=2;b=[3456];c=a+b;d=b-a;保存為:abcd.m在工作窗口中調(diào)用:>>abcd%文件名即可>>cc=5678>>dd=1234*119函數(shù)式文件:命令式文件:*120函數(shù)變量及變量作用域變量主要有輸入變量、輸出變量及函數(shù)內(nèi)部變量。輸入變量相當于函數(shù)的入口數(shù)據(jù),是一個函數(shù)操作的主要對象。函數(shù)的作用就是對輸入變量進行加工以實現(xiàn)一定的功能。函數(shù)的輸入變量為形式參數(shù),即只是傳遞變量的值而不是變量的地址,函數(shù)對輸入變量的一切的操作和修改如果不依靠輸出變量傳出的話,將不會影響工作空間中該變量的值。
matlab語言提供了函數(shù)nargin來控制輸入變量的個數(shù),即可以實現(xiàn)不定參數(shù)輸入的操作。例如:在函數(shù)test1中,如果調(diào)用過程時只提供一個輸入變量,則求該輸入變量的模;如果是兩個輸入變量,則求兩個輸入變量的和*120函數(shù)變量及變量作用域*121%如果調(diào)用過程時只提供一個輸入變量,則求該輸入變量%的模;如果是兩個輸入變量,則求兩個輸入變量的和functionc=test1(a,b)ifnargin==1c=norm(a);elseifnargin==2c=a+b;end在工作窗口調(diào)用:>>a=[234]a=234>>test1(a)ans=5.3852>>b=3;>>test1(a,b)ans=567*121%如果調(diào)用過程時只提供一個輸入變量,則求該輸入變量%*122
同時,matlab語言還提供了另一個針對輸入變量的函數(shù)varargin。該函數(shù)可以實現(xiàn)不定數(shù)目輸入變量的函數(shù)的程序設計。此時,對函數(shù)的一切輸入變量均將存儲在以varargin命名的單元型數(shù)組中。例:在函數(shù)test2中,實現(xiàn)如下功能:通過使用函數(shù)varargin,用戶可以輸入任意多個學生的數(shù)學、英語及語文的成績,然后求各科目的平均值。程序如下:*122同時,matlab語言還提供*123function[mathavg,englishavg,chineseavg]=test2(varargin)s=length(varargin);%求數(shù)組的長度mathsum=0;englishsum=0;chinesesum=0;forj=1:smathsum=mathsum+varargin{j}(1);englishsum=+varargin{j}(2);chinesesum=+varargin{j}(3);endmathavg=mathsum/s;englishavg=englishsum/s;chineseavg=chinesesum/s;思考:此函數(shù)如何調(diào)用。*123function[mathavg,englisha*124
與輸入變量相對應,matlab語言對輸出變量也提供了相應的函數(shù),如nargout、varargout等。具體的使用與函數(shù)nargin和varargin相似。下面給出一個綜合應用示例。示例函數(shù)test3中,綜合使用了函數(shù)nargin、nargout、narargin、narargout等,函數(shù)目的是求各學生(總數(shù)不確定)的個人平均成績,以及指定科目的平均成績等。函數(shù)test2的調(diào)用:[90,89,60]分別表示數(shù)學、英語、語文的成績>>[a,b,c]=test2([90,89,60],[79,89,66],[99,98,100])a=89.3333b=32.6667c=33.3333思考:如果多個學生的成績是同一科目的成績放在一個數(shù)組中,如何修改test2函數(shù)。*124與輸入變量相對應,matlab*125
function[vararout]=test3(lessons,varargin)inputnum=nargin;lessonnum=length(lessons);outputnum=nargout;fori=1:lessonnumswitchlessons(i)case'math'vararout{1}=sum(varargin{1:inputnum}(1));case'english'vararout{2}=sum(varargin{1:inputnum}(2));case'chinese'vararout{3}=sum(varargin{1:inputnum}(3));endendfori=1:inputnumvarargout{i+3}=sum(varargin{i}(:));end*125function[vararout*126
在matlab中,函數(shù)內(nèi)部定義的變量除特殊聲明外均為局部變量。如果需要使用全局變量,則應當使用命令global定義,而且在任何使用該全局變量的函數(shù)中都應加以定義,在命令窗口中也不例外。注意:變量之間必須以空格分隔,而不能用逗號分隔。示例:function[avgs]=test4(A)globalsss%定義全局變量[m,n]=size(A);fori=1:ms(i)=sum(A(i,:));endss=sum(s);avgs=ss/(m*n);調(diào)用test4:>>a=[435;678;357;134];>>test4(a)ans=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國開人工智能專題形考1-3題庫5及答案
- 2024屆陜西師范大學附中高三第三次聯(lián)考(5月)數(shù)學試題試卷
- 5年中考3年模擬試卷初中道德與法治九年級下冊02第2課時少年當自強
- 人教版四年級下冊音樂教案
- 1000萬米新能源領域?qū)S眯虏牧涎邪l(fā)生產(chǎn)項目可行性研究報告寫作模板-拿地申報
- 保險代理居間合同示例范本
- 家電下鄉(xiāng)配送服務合同范本
- 化工用煤購銷合同模板
- 印刷品配送協(xié)議模板
- 保稅區(qū)土地轉(zhuǎn)讓居間合同
- 企業(yè)內(nèi)部網(wǎng)絡安全培訓
- 乙肝 丙肝培訓課件
- 煙囪施工應急預案
- 工程力學期末考試試卷A及答案
- 教師近3年任教學科學生學業(yè)水平和綜合素質(zhì)
- 結腸造口回納術護理查房課件
- 慢性腎衰竭中醫(yī)護理查房課件
- 初中八年級信息技術課件遮罩動畫【市一等獎】
- 鹽酸奧洛他定顆粒-臨床用藥解讀
- 綜合樓土建工程施工方案
- 尿路結石:泌尿系結石(英文版)
評論
0/150
提交評論