<2>while循环 语法: while条件 循环体 end 如: while 1
c=input(‘input a character’,’s’) if isempty(abs(c)) break;
end end
6、MATLAB的编辑器和程序调试 (1)M文件:同前
(2)脚本文件(命令文件) (3)函数文件
<1>基本结构: function[输出形参]=函数名([输入参数]) [注释] 函数体; <2>函数文件名
通常和函数名一致,如果不一致,那么忽略函数名,调用时使用函数文件名 如:新建M文件,为函数文件,命名为add_my,文件中写入 function re=add_my(a,b) %完成变量a和b相加 % 输入:a和b
% 输出:re为输入两个参数的相加 % Auhor:zhangwie re=a+b;
<3>函数参数可调标识变量
主要有4个:nargin、nargout、varargin、varargout 1)function re=add_multi(a,b,c,d) if nargin==4 re=a+b+c; elseif nargin re=a+b+c+d; else error(‘wrong’) end
2)function [a,b]=add_mu(c,d,e,f) if nargout==2 a=c+d+e+f; b=c+d+e+f;
else a=c+d+e+f; end
3)function re=add_var(a,b,varargin) if nargin==2 re=a+b;
elseif nargin==3 c=varargin{1}; re=a+b+c;
else error(‘wrong’) end
<4>全局变量
使用global声明,可以提供给不同的M文件访问同一个变量。 (4)程序调试 断点和单步
K>> 代表调试状态
7、MATLAB绘图功能(1)--二维高层绘图操作 (1)二维高层绘图基本函数 plot函数
<1>基本用法:plot(x,y); 要求:x和y要是对应的 <2>特殊用法: 确定曲线颜色;
x为实数向量,则绘制折线图,若x为复数向量,则以实部和虚部为横纵坐标绘图 如:
1)x=0:0.01:2*pi y=sin(x);
plot(x,y) %绘制了一个正弦函数
2)y1=sin(x); y2=cos(x); y3=0.002*exp(x); y4=x; y5=0.002*tan(x); z=[y1;y2;y3;y4;y5]; plot(x,z); % 绘制了5条曲线 3)plot只有一个参数 x=linspace(0,2*pi,200); y=sin(x); plot(y);
4)plot有多个参数
x1=linspace(0,2*pi,200); x2=linspace(0,2*pi,100); y1=cos(x1); y2=sin(x2);
plot(x1,y1,x2,y2) 5)plot曲线颜色
x=linspace(0,2*pi,200); y=sin(x);
plot(x,y,’r’); %绘制了一条红色正弦函数,r红色、k黑色、g绿色、y黄色
(2)二维绘图的辅助操作 <1>标注
x=linspace(0,2*pi,200); y=sin(x); plot(x,y);
title(‘正弦函数’);
text(2,0.3,’y=sin(x)’) %文本标注
legend(‘cos’,’sin’) %图例标注 <2>坐标轴控制
axise qual、axis square、axis、xlim、vlim <3>图像保持 hold on hold off <4>窗口分割 x=0:0.1:2*pi
y1=sin(x); y2=cos(x); y3=tan(x); y4=exp(x); subplot(2,2,1) plot(x,y1) subplot(2,2,2) plot(x,y2) subplot(223) plot(x,y3)
subplot(224) plot(x,y4) %分割了4个部分分别画了四个图
8、MATLAB绘图功能(2)--二维底层绘图修饰 (1)对象和句柄
MATLAB把构成图形的各个基本要素称为图像对象,产生每一个图形对象时,MATLAB会自动分配一个唯一的值用于表示这个对象,称为句柄。 (2)对象间的基本关系
计算机屏幕->图形窗口->(用户菜单、用户控件、坐标轴) 坐标轴->(曲线、曲面、文字、图像、光源、区域、方框) (3)基本底层绘图函数 <1>line对象和line函数
h=line([-pi:0.01:pi],sin([-pi:0.01:pi])) %同plot函数,h为句柄 <2>line对象修饰
Color、Linewidth、LineStyle、Marker、MarkerSize
h1=line(‘XData’, [-pi:0.01:pi],’YData’, sin([-pi:0.01:pi]),...‘LineWidth’,1,‘LineStyle’,‘:’‘Color’,‘r’ ); set(h1,’LineWidth’,2,‘Marker’,‘p’’MarkerSize’‘15’) (4)底层标注 text函数
ht=text(0,0,’sin’); set(‘ht’,‘String’‘cos’); (5)底层坐标轴控制 axes函数,属性Box、GridLineStyle、Position、Units、Xlabel、Ylabel、Zlabel
9、MATLAB Notebook使用简介 (1)Notebook安装和启动
电脑要有word才能安装Notebook 命令:notebook –setup 启动:
<1>输入notebook启动
<2>在word中建立M-book文档即可 (2)M-book中命令运行
(3)定义自动初始化单元
选择“Define Autoinit Cell”设置 (4)单元组定义
选择“Group Cells”设置
10、MATLAB符号运算 (1)符号计算基础 <1>符号常量和符号变量
符号变量:a=sym(‘a’); 或syms b; 符号常量:c=sym(‘3’)
符号表达式:f1=‘3*x+6’;或syms x; f2=3*x+4; 或f3=sym(‘3*x+6’) <2>符号的四则运算 1)+-*/
2)符号表达式与数值的转化 sym、eval
3)因式分解、展开、合并同类项 factor、expand、collect <3>符号表达式的化简 simplify、simple <4>符号矩阵运算
其他使用在数值矩阵中的函数可以直接用于符号矩阵,transpose和determ (2)符号函数
<1>极限:limit函数
如:syms x,a; y=(sin(x-a)-sin(x-1))/x; limit(y,0) <2>微分:diff函数
y=sqrt(1+exp(x)); diff(y) diff(y,2) diff(y,3) <3>积分:int函数 y=(3-x^2)^3; int(y) (3)符号级数
<1>符号级数求和:symsum函数
syms n; f=1/n^2; s1=symsum(f,n,1,inf) <2>泰勒级数展开:taylor
syms x y=(1+x+x^2)/(1-x+x^2); taylor(y,6,1) (4)符号方程求解
<1>代数方程:solve函数
syms x;solve(x+x*exp(x)=10)
[x,y]=solve(‘1/x^3+1/y^3-28’,’1/x+1/y-4’,’x’,’y’) 1/x^3+1/y^3-28等价于1/x^3+1/y^3-28=0等价于1/x^3+1/y^3=28 <2>微分方程:dsolve函数
dsolve(‘Dy-(x^2+y^2)/x^2/2’,’x’);