matlab入门(中学生)
MATLAB科学计算软件入门教程

MATLAB科学计算软件入门教程第一章:MATLAB基础知识MATLAB是一种专业的科学计算软件,具有强大的数学计算和数据分析能力。
在使用MATLAB进行科学计算前,我们需要先了解一些基本知识。
1.1 MATLAB界面打开MATLAB后,我们会看到一个主界面。
主界面中有命令窗口、当前文件夹窗口、工作空间窗口和编辑器窗口等基本功能区域。
1.2 MATLAB变量和数据类型MATLAB中的变量可以用来存储各种类型的数据,如数字、字符串、矩阵等。
常见的数据类型包括:double(双精度浮点数)、char(字符)、logical(逻辑值)等。
1.3 MATLAB基本操作在MATLAB中,可以使用基本的数学运算符进行加、减、乘、除等计算操作。
另外,还可以通过内置函数实现更复杂的数学运算。
例如,sin函数可以计算正弦值,sum函数可以计算矩阵元素的和等。
第二章:MATLAB矩阵和向量操作2.1 创建矩阵和向量在MATLAB中,可以使用方括号来创建矩阵和向量。
例如,使用[1,2;3,4]可以创建一个2x2的矩阵。
2.2 矩阵和向量的加减乘除运算MATLAB提供了丰富的矩阵和向量运算函数,可以进行加法、减法、乘法、除法等运算操作。
例如,可以使用矩阵相乘函数*来计算矩阵的乘法。
2.3 矩阵和向量的索引和切片在MATLAB中,可以使用索引和切片操作来获取矩阵和向量中的特定元素或子集。
例如,使用矩阵名加上行和列的索引可以获取矩阵中指定位置的元素。
第三章:MATLAB数据可视化3.1 绘制二维图形MATLAB提供了丰富的绘图函数,可以绘制二维曲线、散点图、柱状图、等高线图等。
例如,可以使用plot函数来绘制二维曲线。
3.2 绘制三维图形MATLAB还可以绘制三维图形,如三维曲线、三维散点图、三维曲面等。
例如,可以使用plot3函数来绘制三维曲线。
3.3 图像处理与显示MATLAB提供了图像处理和显示的函数,可以加载、编辑和保存图像。
matlab程序设计基础

matlab程序设计基础Matlab程序设计基础随着计算机技术的发展,程序设计也成为了现代社会中不可或缺的一部分。
在程序设计的过程中,Matlab作为一种高效的工具语言,被广泛应用于科学计算、数据分析和工程开发等领域。
本文将介绍Matlab程序设计的基础知识,帮助初学者快速入门和掌握。
Matlab的语法结构相对简单,易于上手。
在Matlab中,我们可以使用变量来存储和操作数据。
变量的命名需要遵循一定的规则,如不能以数字开头,不能包含特殊字符等。
同时,Matlab中的变量不需要事先声明其类型,可以根据赋值的数据类型自行确定。
Matlab提供了丰富的数学运算和函数库,可以方便地进行各种数学计算。
比如,我们可以使用Matlab进行矩阵运算、线性代数计算、微积分、符号计算等。
通过调用内置函数或自定义函数,我们可以实现复杂的数学运算,并得到准确的结果。
除了数学运算,Matlab还支持图形绘制和可视化。
通过调用绘图函数,我们可以绘制各种类型的图形,如折线图、散点图、柱状图等。
这对于数据分析和结果展示非常有帮助。
同时,Matlab还支持对图形的格式、颜色、标签等进行自定义,使得图形更加直观和美观。
在Matlab程序设计中,控制流程也是一个重要的概念。
通过控制流程语句,我们可以实现条件判断、循环和函数调用等操作。
条件判断语句(如if-else语句)可以根据给定的条件选择不同的执行路径。
循环语句(如for循环、while循环)可以重复执行一段代码,实现重复计算或迭代操作。
函数调用可以将一段代码封装成一个函数,方便重复使用和模块化编程。
Matlab还支持文件的读写和数据的导入导出。
我们可以使用文件读写函数来操作文本文件、Excel文件、图像文件等。
通过数据导入导出函数,我们可以将数据从不同的格式(如CSV、XML、JSON)中导入到Matlab中,或将Matlab中的数据导出到其他格式中。
这为数据处理和数据交换提供了便利。
MATLAB的基本使用教程

MATLAB的基本使用教程MATLAB是一种强大的数学计算软件,广泛应用于科学、工程和技术领域。
它提供了丰富的功能和工具,能够快速、有效地处理和分析各种数学问题。
本文将介绍MATLAB的基本使用方法,帮助初学者快速入门。
一、MATLAB的安装与启动1、下载和安装MATLAB软件:在MathWorks官方网站上下载适合自己操作系统的MATLAB软件,并根据安装提示进行安装。
安装完成后,会生成一个MATLAB的启动图标。
2、启动MATLAB:双击MATLAB的启动图标,或者在命令行中输入"matlab"命令,即可启动MATLAB。
二、MATLAB的基本操作1、工作环境:MATLAB提供了一个强大的集成开发环境(IDE),可以在其中编写和运行代码。
在MATLAB的界面中,包括主窗口、命令窗口、变量窗口、编辑器等。
2、命令窗口:在命令窗口中可以输入和执行MATLAB命令。
可以直接在命令窗口中输入简单的计算,例如输入"2+3"并按下回车键,即可输出计算结果。
3、脚本文件:MATLAB可以编写和运行脚本文件,将一系列命令组织起来,并按顺序执行。
在编辑器中编写MATLAB代码,并将文件保存为.m扩展名的脚本文件。
然后在命令窗口中输入脚本文件的文件名(不带扩展名),按下回车键即可执行脚本文件中的代码。
4、变量和赋值:在MATLAB中,可以创建和操作各种类型的变量。
例如,可以使用"="符号将一个值赋给一个变量,例如"A=5"。
在后续的计算和分析中,可以使用这个变量,例如输入"B=A+3",结果B 将被赋值为8。
5、矩阵和向量:MATLAB中的基本数据结构是矩阵和向量。
可以使用方括号[]来创建矩阵和向量,并使用逗号或空格来分隔不同的元素。
例如,"[1,2,3]"表示一个包含3个元素的行向量。
6、矩阵运算:MATLAB提供了丰富的矩阵运算符和函数,可以对矩阵进行各种运算。
Matlab工程数学 第1章 使用方法入门

Matlab工程数学Matlab是“Matrix Laboratory”的缩写,意为“矩阵实验室”,是当今很流行的科学计算软件。
它的主要功能是给人们提供一个方便的数值计算平台。
Matlab的基本运算单元是不需指定维数的矩阵,系统提供了大量的矩阵及其它运算函数,可以方便的进行一些很复杂的计算,而且运算效率极高。
Matlab的命令和数学中的符号、公式非常接近,可读性强,容易掌握,还可利用它所提供的编程语言进行编程,完成特定的工作。
除基本部分外,Matlab还根据各专门领域中的特殊需要提供了许多可选的工具箱,在很多时候能够给予我们极大的帮助。
以下简单介绍一下Matlab软件的基本使用方法,并结合本讲义内容介绍如何使用Matlab软件解决一些常见的数值问题。
第1章使用方法入门1.1 操作方法1.1.1 启动和退出从Windows中双击Matlab图标,会出现Matlab命令窗口(Command Window),在一段提示信息后,出现系统提示符“>>”,这时你就可以输入命令了。
Matlab是一个交互式的系统,输入命令后,系统会马上解释和执行你输入的命令并输出结果。
如果命令有语法错误,系统会给出提示信息。
在当前提示符下,你可以通过上下箭头调出以前输入的命令。
用滚动条可以查看以前的命令及其输入信息。
退出Matlab和退出其它Windows程序一样,可以选择File菜单中的Exit Matlab菜单项,也可以使用Alt-F4热键。
还可以执行Matlab的Exit命令退出。
1.1.2. 变量和表达式Matlab命令的通常形式为:变量= 表达式表达式由操作符或其它特殊字符,函数和变量名组成。
Matlab执行表达式并将执行结果显示于命令后,同时存在变量中以留用。
如果变量名和“=”省略,即不指定返回变量,则名为ans的变量将自动建立。
例如:键入命令:A = [ 1.2 3.4 5.6 sin(2) ]系统将产生4维向量A,输出结果为:A =1.2000 3.4000 5.6000 0.9093键入1900/81结果为:ans =23.4568Matlab保留本次运行中建立的所有变量的信息。
matlab教程ppt(完整版)

控制流语句
使用条件语句(如if-else)和 循环语句(如for)来控制程序 流程。
变量定义
使用赋值语句定义变量,例如 `a = 5`。
矩阵运算
使用矩阵进行数学运算,如加 法、减法、乘法和除法等。
函数编写
创建自定义函数来执行特定任 务。
02
MATLAB编程语言基础
变量与数据类型
变量命名规则
数据类型转换
编辑器是一个文本编辑器 ,用于编写和编辑 MATLAB脚本和函数。
工具箱窗口提供了一系列 用于特定任务的工具和功 能,如数据可视化、信号 处理等。
工作空间窗口显示当前工 作区中的变量,可以查看 和修改变量的值。
MATLAB基本操作
数据类型
MATLAB支持多种数据类型, 如数值型、字符型和逻辑型等 。
04
MATLAB数值计算
数值计算基础
01
02
03
数值类型
介绍MATLAB中的数值类 型,包括双精度、单精度 、复数等。
变量赋值
讲解如何给变量赋值,包 括标量、向量和矩阵。
运算符
介绍基本的算术运算符、 关系运算符和逻辑运算符 及其优先级。
数值计算函数
数学函数
列举常用的数学函数,如 三角函数、指数函数、对 数函数等。
矩阵的函数运算
总结词:MATLAB提供了许多内置函 数,可以对矩阵进行各种复杂的运算
。
详细描述
矩阵求逆:使用 `inv` 函数求矩阵的 逆。
特征值和特征向量:使用 `eig` 函数 计算矩阵的特征值和特征向量。
行列式值:使用 `det` 函数计算矩阵 的行列式值。
矩阵分解:使用 `factor` 和 `expm` 等函数对矩阵进行分解和计算指数。
MATLAB基础知识及常用功能介绍

MATLAB基础知识及常用功能介绍第一章:MATLAB简介及安装MATLAB是一种强大且广泛应用的数值计算软件,它提供了许多用于科学计算和工程设计的功能。
MATLAB是矩阵实验室(Matrix Laboratory)的缩写,其主要特点是在操作矩阵和各种数学函数上非常高效。
要安装MATLAB,只需下载安装程序然后按照提示进行安装即可。
第二章:MATLAB基本操作在MATLAB中,可以使用各种命令来进行基本的数学运算,例如加减乘除、幂运算等。
此外,还可以定义变量、矩阵和向量,并进行复杂的数学运算。
提示:使用分号可以取消输出结果。
第三章:MATLAB脚本和函数脚本是一系列MATLAB命令的集合,可以保存并重复执行。
函数是一段具有输入和输出的可执行代码块,可以通过函数名和输入参数来调用。
编写脚本和函数有助于提高代码的可读性和可重复性。
第四章:MATLAB图形化界面MATLAB提供了图形化界面(GUI)工具箱,用于创建交互式应用程序和图形用户界面。
利用GUI工具箱,可以通过拖拽和放置的方式创建界面,并通过设置属性和回调函数实现交互功能。
第五章:MATLAB数据可视化MATLAB拥有丰富的数据可视化功能,可以将数据以各种图表形式呈现出来,如散点图、柱状图、曲线图等。
此外,还可以对图表进行自定义设置,如添加图例、调整轴范围、添加标题等。
第六章:MATLAB图像处理MATLAB提供了强大的图像处理工具箱,可以用于图像的滤波、锐化、模糊、边缘检测等操作。
此外,还可以进行图像的变换和特征提取,用于图像识别和分析。
第七章:MATLAB信号处理MATLAB信号处理工具箱提供了一系列用于处理、分析和合成信号的函数和工具。
可以进行信号滤波、频谱分析、时域分析等操作。
此外,还可以进行数字滤波器设计和滤波器实现。
第八章:MATLAB数学建模MATLAB是数学建模的重要工具,可以用于建立各种数学模型并进行仿真和优化。
可以利用MATLAB解方程、求解微分方程、进行符号计算等,用于解决各种实际问题。
一、MATLAB之基础入门代码

⼀、MATLAB之基础⼊门代码序⾔本篇旨在列出matlab⼊门及在科研中必须掌握的⼀些基础代码,主要内容包括:matkab矩阵运算、绘图、函数流程控制、⽂件、图像、函数等基本操作,以便于随查随⽤,⾄于常⽤的算法本篇鲜有涉及。
%% matlab总述% matlab中基本数据结构是矩阵,即使单独⼀个数也视为⼀个1*1的矩阵%%%% 矩阵创建&赋值操作a=5;b=[1 2 3];c=[1;2;3];d=[1 2 3;4 5 6;7 8 9];x=[0:0.5:2]; % 0.5是步长x=zeros(4); % 4*4零矩阵x=zeros(2,3);% 2*3零矩阵x=ones(5,5); % 1矩阵x=eye(5); % 5阶单位阵,与Octave语法完全⼀致[r,c]=size(x); % 返回x矩阵的⼤⼩x=linspace(0,3,5); % 0到3间均匀⽣成5个点,⽣成函数的采样点[x,y,z]=meshgrid([],[],[]); % ⽤以⽣成函数的采样点%%%% matlab中的保留字piInf % ⽆穷⼤NaN % 未定式,0/0%%%% 数组计算a=a+b;a=a-b;% 数组加减a=b*c;a=b*inv(x)% 数组乘除 inversea=b.*c; % 对应位操作./ .* .^a=a';a=a(:);% 数组拉直%%%% 数组索引与操作% 括号是索引符号,如([],[])x=a(2,2);x=a(5);x=a(1:2,3:4); %([],[])x(x>72)=x(x>72)-72 % 数组的逻辑索引,x>72⾃⾝就是⼀个0/1⼆维数组,x(x>72)就是访问对应为1位置处的值% 数组赋值/改值a(2,2)=0a(5)=9a(1:2,3:4)=ones(2,2)a(1:2,[3,4,7,11])=ones(2,2) % matlab中[1:9],1:9是基本数据类型%%%% 数组的⽐较和逻辑运算,符合条件的同⼀位置为1,不符合则为0x=[1 2 3 4 5 6 7];y=[1 2 4 5 5 6 8];eq=(x==y); %上⾯说过了,x==y⾃⾝也是⼀个0/1⼆维数组eq=(x>2)&(y<5); % 与 &两边既可以是标量也可以是向量 VS. &&两边只能是标量eq=(x>2)|(y<5); % 或eq=xor(x>4,y<5); % 异或x(x<3)=-1; % (x<3)是⼀个0/1数组,x(x<3)就是把(x<3)数组中1对应位置的位置访问,再将访问到的位置赋值1,⽐较和逻辑运算与数组索引结合xy=[x,y]; xy=[x;y]; % ⽤已有数组构建新数组,数组融合img=cat(3,R,G,B); % ⾼级数组融合xy(:,xy(1,:)<4)=0 %逻辑运算结果矩阵也可以⽤来数组索引%%%% 数组操作函数x=[1 2 3;4 5 6;7 8 9];x=flipud(x);%上下转x=fliplr(x);%左右转x=rot90(x);%逆时针旋转90度x=pinv(x);%数组求(伪)逆sum(x,1); % x每列求和sum(x,2); % x每⾏求和sum(x(:)); % 求全和,:表⽰将数组拉直maxn=max(x);% 返回每列最⼤值maxn=max(x);% 返回每列最⼤值maxn=max(x(:)); % 返回全局最⼤值min(); % ⽤法同max()%%%% 常⽤数学函数% 注意matlab中矩阵是基本数据结构,因此所有函数都是对矩阵中每个x_i操作y=sin(x);y=abs(x);%绝对值y=sqrt(x);%开⽅y=ceil(x);%向上取整y=floor(x);%向上取整y=round(x);%四舍五⼊取整y=rand(r,c);%⽣成随机矩阵b=sum(a,idm);%求和函数,dim=1 表⽰对每⼀列求和,dim=2 表⽰对每⼀⾏求和tabulate(detect_result)% detect_result是⼀个列向量,该函数⽤以频数、频率统计%%%% MATLAB函数基本语句for i=1:2:100 %endwhile 1if a<1breakendendfunction [output1,]=functionname(input1,) % 函数定义command1command2output1=%%%% 基本绘图%plotx=0:0.001*pi:2*pi;y=sin(x);z=cos(x);plot(x,y,'-ob','LineWidth',1.5) % 标出数据点的折线图hold onplot(x,z,'rs') % 散点图drawnow % 动画图xlabel('x')ylabel('y')title('图')axis equal % 两轴单位长度相等axis([-2,2,-2,2]) % 控制坐标轴范围set(gca,'XTick',0:pi/2:4*pi); % 设置坐标轴刻度间距,⼀般与下⼀⾏命令搭配set(gca,'XTickLabel',{'0','0.5*pi','pi','1.5*pi','2*pi','2.5*pi','3*pi','3.5*pi','4*pi'})% 设置坐标轴刻度标号xlim([-2,2]) % 控制坐标轴范围text(0,0,'(0,0)') % 在数据曲线上点(x,y)处,标出'(3,5)'legend('cos(x)','sin(x)','sin(x)-cos(x)') % 依照绘图的顺序依次标注图例saveas(gcf,strcat('ch',num2str(i),'.emf')) % 保存plot图⽚,gcf是plot的句柄plot(X)%绘制⼆维矩阵,以⾏号为横坐标,各列为纵坐标plot(X);% plot制作动图for k=1:10plot (fft(eye(k+10))) % eye()单位阵,fft()傅⾥叶变换,plot()绘制矩阵axis equalM(k)=getframe; % 截取当前窗⼝作为影⽚帧endmovie(M,50) %播放多帧图⽚,M 50次%极坐标plar(theta,r,LineSpec)t=0:0.1:3*pi;polar(t,abs(cos(5*t)));% 快速⽅程绘图fplot('x-cos(x^2)',[-4,4]);% 绘制y=x-cos(x^2)ezplot('y-f(x),[-6 6 -8 8]');% ezplot('⽅程式',[xmin xmax ymin ymax])ezplot('cos(3*t)','sin(3*t)',[0:2*pi]);% ezplot('x参数式','y参数式',[tmin,tmax])%%%% 参数⽅程作图(可以画出很有趣的⾮函数图像)t=0:pi/50:2*pi;x=sin(t);y=cos(t);plot(x,y)axis([-1.1,1.1,-1.1,1.1])axis equal%%%%x=sin(t)y=cos(t)z=tplot3(x,y,z) % 三维曲线参数⽅程作图grid on % 开⽹格%%%%三维曲⾯[x,y]=meshgrid(-pi:0.1:pi); % 画函数采样点z=sin(x).*cos(y);mesh(x,y,z) % 画三维曲⾯figure() % 开新画板surf(x,y,z) % 画中间插值的三维曲⾯(有渲染效果)%%%% ⽂件数据读取% .txt纯数据⽂件⽂件data=load('c:\desktop\score.txt')% .txt⽂本⽂件fid=fopen('score.txt','r')line1=fgetl(fid)%数据按分割%数据类型转换line2=fgetl(fid)fclose(fid);fid=fopen('score.txt','w')fprintf(fid,'会当凌绝顶’)fprintf(fid,'%d⽉⼯资 %6.1f\n',[1,2,3,4;20000,19999,20010,25000,23000])fclose(fid);% excel⽂件data=xlsread('filename.xls','Sheet1','A3:C6');data(isnan(data))=0;%空位补零xlswrite('filename.xls',{'t','w'},'Sheet1','B1:C1')%图⽚⽂件img=imread('leave.jpg')% 图⽚读取image(img) % 图⽚显⽰lip(234:435,112:300,:)%图⽚切⽚imshow(lip) % 图⽚显⽰imwrite(img,'c:\\desktop\\figure.emf')% UI交互式导⼊图⽚[FileName PathName FilterIndex]=uigetfile({'*.jpg','*.bmf'},'请导⼊图⽚','*.jpg','MultiSelect','on') if ~ FilterIndexreturnend%视频⽂件data=VideoReader('sport.avi')% data是⼀结构体frame=read(data,25)% 读取视屏中的某⼀帧,即图⽚imshow(frame)% 对视频处理就是循环处理每⼀帧%%%% 线性⽅程求解、拟合、回归x=A\B%⼀元线性拟合x=[2.410 2.468 2.529 2.571 2.618 2.662 2.715 2.747 2.907 2.959 2.997];y=[0 0.800 1.695 2.290 2.965 3.595 4.365 4.810 7.125 7.890 8.425];a=polyfit(x,y,1)%⼀阶拟合 y=a1 x+ a2y=polyval(a,x) % 获得拟合表达式%⾃定义拟合p=fittype('a*x+b*sin(x)+c');% 指定拟合模型f=fit(x,y,p)% 获得拟合函数,x和y必须为列向量plot(f,x,y)% 画出拟合图%差值 x=[1:10] y=[1:10],线性回归求xi对应的yiyi=interp1(x,y,xi,'linear');%线性回归 y=f(x1,x2,x3)%%%%微分⽅程求解%解析解syms y(x);ode=diff(y,x)-y==0;init=y(0)==1;dsolve(ode,init)%dsolve('D2y+4*Dy+24*y=0','y(0)=0,Dy(0)=15','x')%尤克—库塔数值解%%% 符号对象的创建,matlab中之前都是数值计算,这⾥是符号运算a=sym([1/2 sqrt(5)]);y=sym('2*sin(x)*cos(x)');y=simple(y);syms x y;z=cos(x)*sin(y);% 符号表达式及函数的创建, matlab默认是数值运算,符号运算需要提前声明。
MATLAB 9.8 基础教程 第1章 基础入门

1.1.2 MATLAB系统结构
MATLAB系统由MATAB开发环境、MATLAB数学函数库、MATLAB语言、MATLAB图形处理系统 和MATLAB应用程序接口(API)五大部分构成。
1993年推出了基于PC平台的以Windows为操作系统平台的MATLAB 4.0版;
2006年起,每年推出两个版本,上半年推出的用a标识,下半年推出的用b标识;
2012年9月份开发的MATLAB 8.0(R2012b),采用了全新的视图界面,具有MATLAB和 Simulink的重大更新,可显著提升用户的使用与导航体验,其包括64位和32位两个版本;
Symbolic Math
System Identification
Global Optimization 全局优化工具箱
Text Analytics
Image Acquisition 图像采集工具箱
Image Processing
图象处理工具箱
Instrument Control 仪表控制工具箱
LTE
开发环境
• 一套方便用户使用 的 MATLAB 函 数和 文件工具集,其中 许多工具是图形化 用户接口。它是一 个集成的用户工作 区,允许用户输入 输出数据,并提供 了M文件的集成编 译和调试环境,包 括 MATLAB 桌 面、 命令窗口、M文件 编辑调试器、工作 区浏览器和在线帮 助文档。
数学函数库
• 是数学算法的一个 巨大集合,包括初 等数学的基本算法 和高等数学、线性 代数等学科的复杂 算法等。用户直接 调用其函数就可进 行运算,它是 MATLAB系 统 的基 础组成部分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0
-5 2 0 -2 y -2 x 2 0
34
•函数的曲线 • 使用ezplot和ezplot3函数,可 以方便的绘制二维和三维参数 曲线.
• ezplot函数调用格式:
•ezplot(f,[xmin,xmax,ymin,yma x]) •f是一个字符串 •ezplot(x,y,[tmin,tmax])
25
3、图形保持
(1) hold on 保持当前图形, 以便继续画图到当前图上 hold off 释放当前图形窗口
例11 将y=sin(x)、y=cos(x)分别用点和线画出在同一屏幕上。
解
x=linspace(0,2*pi,30); y=sin(x); z=cos(x) plot(x,z) hold on plot(x,y)
24
2、定制坐标
Axis([xmin xmax ymin ymax zmin zmax]) 定制图形坐标
x、y、z的最大、最小值
Axis auto 将坐标轴返回到自动缺省值
例10 在区间[0.005,0.01]显示sin(1/x)的图形。
解 x=linspace(0.0001,0.01,1000); y=sin(1./x); plot(x,y) axis([0.005 0.01 -1 1])
35
•ezplot3函数调用格 式:ezplot3(x,y,z,[tmin,tmax]) •例19.绘制如下参数方程的曲线图
t 10 x e y sin t cos t z t
14
MATLAB 程序中的流程控制
条件控制——有选择地运行程序块 1. if / elseif 语句 分析下列程序,说明运行结果及原因 clear a=100;b=10; if a<b disp('a<b') %显示字符串a<b else disp('a>b') %显示字符串a>b end
15
2. for循环 语法: for 变量 =初值:步长:终值
31
空间三维作图
三维曲线 : plot3
设三维曲线的参数方程为:x=x(t),y=y(t),z=z(t), 则其图形可由下面的命令绘出:
plot3(x,y,z,s)
例15:三维螺旋线 >> >> >> >> >> t=[0:0.1:10*pi]; x=2*t; y=sin(t); z=cos(t); plot3(x,y,z);
subplot命令实现图形窗口分割.在一个图形 窗口中显示几幅图象,对几个函数进行比较 subplot(m,n,i):把图形窗口分割为m行n列子窗 口,并选定第i个窗口为当前窗口。 subplot(2,2,1) subplot(2,2,2) subplot(2,2,3) subplot(2,2,4)
21
处理图形
1、在图形上图例和标注
(2)hh = xlabel(string): 在当前图形的x轴上加图例string hh = ylabel(string): 在当前图形的y轴上加图例string hh = zlabel(string): 在当前图形的z轴上加图例string
hh = title(string): 在当前图形的顶端上加图例string
26
同时绘制多条曲线 plot(x1,y1,x2,y2,…)
例12. 衰减振荡曲线函数: y=e -0.5x sin 5x图形.
x=0:0.1:4*pi; y= exp(-0.5*x) ;y1=y .*sin(5*x); plot(x,y1,x,y,’--r’,x,-y,’--r’)
27
• •
23
(3)
hh = gtext(‘string’)
命令gtext(‘string’)用鼠标放置标注在现有的图上. 运行命令gtext(‘string’)时,屏幕上出现当前图形,在
图形上出现一个交叉的十字,该十字随鼠标的移动移动,
当按下鼠标左键时,该标注string放在当前十交叉的位 置. 例9 在区间[0,2*pi]画sin(x),并分别标注“sin(x)” ”cos(x)”. 解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x); plot(x,y,x,z) gtext(‘sin(x)’);gtext(’cos(x)’)
11 返 回
矩阵--线性代数(二维数组)
创建矩阵(二维数组)的常用方法:
直接输入法三条规则: 矩阵元素必须在方括号[ ]之内; 同一行相邻元素间用逗号或空格分隔; 矩阵的行与行之间必须用分号分隔. 例3. 二阶矩阵 A=[1 2; 3 4]
A=
1 3 2 4
12
M文件分为命令文件和函数文件两种 命令文件(脚本式M文件) 无输入参数,不返回参数 对文件命名,保存在当前工作目录中. zyt.m
x=1:5 (从1到5公差为1的等差数组) (从0到1, 公差为0.1) %11个从0到
8
x=0 : 0.1 : 1
x=linspace(0, pi, 11) pi的等间隔数.
2) 数组的操作
x(3) 表示x的第3个元素
x(1:5)
x(1:2:5)
表示x的第1到第5个元素构成 的数组.
x([2,1,4])
30
例14 将屏幕分割为四块,并分别画出y=sin(x),z=cos(x), a=sin(x)*cos(x),b=sin(x)/cos(x)。
解x=linspace(0,2*pi,100); y=sin(x); z=cos(x); a=sin(x).*cos(x);b=sin(x)./(cos(x)+eps) subplot(2,2,1);plot(x,y),title(‘sin(x)’) subplot(2,2,2);plot(x,z),title(‘cos(x)’) subplot(2,2,3);plot(x,a),title(‘sin(x)cos(x)’) subplot(2,2,4);plot(x,b),title(‘sin(x)/cos(x)’)
MATLAB入门
肖剑 重庆大学数学与统计学院
1
MATLAB 简介
–MATLAB最初是20世纪70年代后期由 新墨西哥大学计算机科学系主任的Cleve Moler用Fortran语言设计的,现在的 MATLAB程序是1984年MathWorks公司 用 C语言开发的。
2
MATLAB的主要应用领域
(1)数值分析
==
~=
等于
不等于
3.逻辑运算符 & 与 | 或 ~ 非
(and) (or) (not)
19
Plot(X,Y) —— 最基本的二维图形命令
plot命令自动打开一个图形窗口Figure1
原理:
用直线连接相邻两数据点来绘制图形 根据图形坐标大小自动缩扩坐标轴,将数据标尺及单 位标注自动加到两个坐标轴上 使用方法:
例16: • • • • •
>> >> >> >> >>
x=[-8:0.5:8]; y=[-8:0.5:8]; [X,Y]= meshgrid(x,y); r=sqrt(X.^2+Y.^2)+eps; Z=sin(r)./r; mesh(X,Y,Z)
33
•调用格式: • surf(x,y,z) —— 绘 制三维曲面图,x,y,z为图 形坐标向量 •例17: •[X,Y,Z]=peaks(30) •※peaks为matlab •自动生成的三维测试图形 •surf(X,Y,Z)
22
例8 在区间[0,2*pi]画sin(x)的图形,并加注图例“自变量 X”、“函数Y”、“示意图”, 并加格栅.
解 x=linspace(0,2*pi,30); y=sin(x); plot(x,y) xlabel('自变量X') ylabel('函数Y') title('示意图') grid on
32
plot3的用法与 plot 类似
空间三维作图
绘制由函数 z=z(x,y) 确定的曲面时,首先需产生一个网 格矩阵,然后计算函数在各网格点上的值。 网格生成函数:meshgrid [X,Y]= meshgrid(x,y)
x, y 为给定的向量,X, Y 是网格划分后得到的网格矩阵 若 x = y, 则可简写为 [X,Y]= meshgrid(x)
(1) X, Y都是向量,且它们的长度相等;
(2)如果X和Y都是维数相同矩阵,按列与列对应绘图
20
plot(y): 以y的值为纵坐标,y的下标为横坐标。 plot(x,y): 以x为横坐标,以y为纵坐标
例7. x=0:0.1:2*pi; y=cos(x); plot(y)
figure, plot(x,y)
28
• • • • •
【例13】 x=0:0.1*pi:pi; y=sin(x); z=cos(x); plot(x,y,'--k',x,z,'-.rd')
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.5 1 1.5的分割
4
工作空间浏览
命令历史窗 口
命令窗口
MATLAB桌面
5
命令窗口、编辑窗口、图形窗口
6
变量
变量名的第一个字符必须是一个英文字母,最多
可包括31个字符; 变量名可由英文字母、数字和下划线混合组成; •在命令窗口中直接输入变量名称创建
•A=9 •A= • 9
7
数组的创建
1)数组构造: