MATLAB第三讲符号运算及绘图
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 ln(1 2 x) 例:分别计算 lim sin 3x , xlim( ) 。 x 0 0 x
qh0302.m
MATLAB
3.符号函数求微积分
对可微函数f: d n f ( v ) 函数f对变 (1)微分:dfdvn=diff(f,v,n),即 dv n 量v的n阶微分,n缺省值是1。 对可积函数f: (2)不定积分:int(f,x) (3)定积分:int(f,x,a,b)
x 例:已知: f (cosx )2 ,求
df dx
和 0 x 2 dx (cosx)
1
qh0303
MATLAB
4. 基本符号表达式运算
(1)四则运算(计算结果依然是符号表达式,但结果 最简)
如:syms x y z; f1=2*x+x^2*x-5*x+x^3 f2=2*x/(5*x) f3=(x+y)*(x-y) 符号表达式得到最简形式 f 1=-3*x+2*x^3 f2 =2/5 f3 =(x+y)*(x-y)
qh0304
(2)表达式化简 simplify(S) 应用函数规则对S化简;
simple(S) 调用MATLAB的其他函数对S进行综合化 简,并显示化简过程。
MATLAB
(3)因式分解与展开 factor(s) 对S分解因式,
expand(s)
collect(s)
对S进行展开,
对S合并同类项,
以上S均可以是符号表达式或符号矩阵。
s
1 n 2 ,求
例:求下列级数之和:
1 1 1 1 s1 1 ... 2 ... 4 9 16 n
syms n s1=symsum(1/n^2,n,1,inf) 结果:s1 =1/6*pi^2
MATLAB
6. 常微分方程的符号求解
命令格式:S=dsolve(‘eqn1, eqn2’,’cond1, cond2’,’v’)
MATLAB
>> x1=0:pi/100:2*pi; >> x2=0:pi/100:3*pi; >> y1=exp(-0.5*x1).*sin(2*pi*x1); >> y2=1.5*exp(-0.1*x2).*sin(x2); >> figure(2) >> plotyy(x1,y1,x2,y2)
(2)绘制复数的向量图:3+2i,4.5-i,-1.5+5i。
subplot(121); pie([7,13,24,19,6]); title('饼图');legend('优秀','良好','中等','及格','不及 格'); subplot(122);compass([3+2i,4.5-i,-1.5+5i]); title('向量图')
第三章
3.1 3.2
符号运算
符号运算基础 符号函数的运算
MATLAB
本章重点
1.掌握如何创建符号变量、表达式
2.掌握符号运算功能
MATLAB
3.1
符号计算基础
符号运算是数学计算的重要内容,特点是不带来计 算误差。即直接对抽象的符号进行运算,并将所得到结 果以标准的符号形式来表示。符号对象包括:符号变量、 符号常数以及符号表达式。
1.建立符号变量和符号常数: 1)用单引号‘’表示。(少用) 2)用函数sym(‘’)表示。 3)用命令syms表示多个变量。 注意:1)符号代数式中的符号应另行创建; 2)‘’中空格等都视为符号; 2.建立符号表达式:包括代数式、符号方程、符号矩阵、 抽象函数。其中已创建的代数式等可以赋值。
MATLAB
调用格式:plotyy(x1,y1,x2,y2).
其中x1-y1对应一条曲线,x2-y2对应一条曲 线。共用一个横坐标,纵坐标有两个,左纵坐标 对应x1-y1,右纵坐标对应x2-y2。 例2:用不同标度在同一坐标内绘制曲线 0.5 x y2 1.5e 0.1x sin(x) y1 e sin(2x) 及
例3:绘制 sin(2 ) cos(2 ) 的极坐标图。
theta=0:0.01:2*pi; rho=sin(2*theta).*cos(2*theta); polar(theta,rho,'r')
MATLAB
占百分比的饼图:pie,以及复数的向量图compass 例4:绘制图形:
(1)某次考试优秀,良好,中等,及格,不及格的人数 分别为:7,13,24,19,6,使用饼图做成绩统计分析。
MATLAB
plot的一般调用格式为:
(1)plot(x,y,’s’) —— 基本格式,用s指定的点形线型绘 制。x,y是长度相同的一维数组,分别指采样点横、纵坐 标;‘s’指“离散点形”或“连续线型”以及颜色设置。 默认为“蓝色细实线”; (2)plot(X,Y) ——采用默认色彩次序用细实线绘制多条 曲线。X,Y均为m×n数组时,绘制n条曲线;若其中一个 是一维数组,则绘制等行或等列条曲线; (3)plot(X,Y,’s’) ——只能用s指定的点线型色彩绘制多 条曲线。
MATLAB
第二节 二维符号函数绘图 ezplot —— 二维坐标符号函数绘图
(1)ezplot(f,[x1,x2]) f为含单变量的符号函数,x1-x2为取值围,默认为 [-2pi,2pi]。 (2)ezplot(x,y,[t1,t2]) x=f(t),y=f(t)为参数方程符号函数,t1-t2为参数变量 的取值围。 (3)ezplot(‘u(x,y)’,[x1,x2],[y1,y2]) 两变量隐函数:u(x,y)=0,[x1,x2]和[y1,y2]表示取值 范围。
(1)其他形式的线性直角坐标图
在线性直角坐标系中,其他形式的图形有条形图、 阶梯图、杆图和填充图等:
bar(x,y,’s’) stairs(x,y, ’s’)
stem(x,y, ’s’)
fill(x1,y1, ’s1’,x2,y2, ’s2’) qh04031.m
MATLAB
(2)极坐标图
极坐标图,调用格式:polar(theta,rho, ’s’) ,对应 代表极角,极坐标矢径。
3.2
符号函数的运算
• 对符号函数进行运算,首先必须: (1)定义符号变量 (2)定义符号函数 1. 符号函数中变量的确定
MATLAB中的符号可以表示符号变量和符号常数。 findsym可以帮助用户查找一个符号函数中的符号变量 以及次序。调用格式:findsym(f,n)
MATLAB
2. 函数求极限
MATLAB
基本绘图命令函数
符 号 y m c r
颜色 黄色 紫色 青色 红色
符 号 g b w k
颜色 绿色 蓝色 白色 黑色
符 号 . o x +
线型 实心黑点 圆圈 叉字符 加号
符 号 s d p h <
线型 方块符 菱形符 五角星符 六角形符 朝左三角 符
符号 * : -. --
线型 星号 实线 点线 点划线 虚线
qh0404.m
MATLAB
4.2
三维图形(了解)
最基本的三维图形调用函数:plot3(x,y,z, ’s’),其 用法和plot相似。其指令主要用来表现单参数的三维 曲线。
qh0405.m qh0406.m
3X1 + X2 - X3 = 3.6 X1 + 2X2 + 4X3 = 2.1 对于线性系统有Ax=b - X1 + 4X2 + 5X3 = -1.4 A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4]; x=A\b
x= 1.4818 -0.4606 0.3848
MATLAB
MATLAB
(5) subplot——单窗口多曲线分图绘图
调用函数:subplot(m,n,k)
该函数将当前图形窗口分成mn个绘图区域, 即每行n个,共m行,且选定第k个为当前活动区。
例:在一个图形窗口中以子图形式同时绘制正弦、 余弦、正切、余切曲线。
qh0401.m
MATLAB
4. 绘制图形的辅助操作
2. 二维数据图形
(1)各对应元素在平面上确定n个点连成的一条直线。 (2)一个二维(n×m)矩阵,n行,m列。
MATLAB
3. plot —— 最基本的二维图形指令
• plot命令自动打开一个图形窗口Figure • 如果已经存在一个图形窗口,plot命令则清除当前图 形,绘制新图形; • 可任意设定曲线颜色和线型; • 可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗 口多曲线分图绘图;可多窗口绘图; • 可给图形加坐标网线和图形加注功能;
输入量包括三部分:微分方程、初始条件、独立变 量。其中输入量必须以字符串形式编写。 默认自变量为 ‘x’,可任意指定自变量‘t’, ‘u’等。 微分方程的各阶导数项以大写字母D表示。
MATLAB
dy dy 或 y的一阶导数—— Dy dt dx
d y d y 2 或 2 y的二阶导数—— D2y dt dx d y d y y的 n 阶导数—— Dny n 或 n dt dx
MATLAB
例1:多曲线绘制 • t=0:pi/100:2*pi; • y=sin(t); • y1=sin(t+0.25); y • y2=sin(t+0.5); y1 • plot(t,y,'r+',t,y1,'gp',t,y2,'b-')
y2
MATLAB
(4) plotyy —— 双y轴绘图
例:1)对A的每个元素分解因式。
A=[2a2b3x2-4ab4x3+10ab6x4
4
3xy-5x2
a3-b3]
qh0305.m
2)计算表达式S的值。S=(-7x2-8x2)×(-x2+3y2)
MATLAB
5. 级数符号求和
n 1 对于等比无穷级数求和 和的调用格式为:symsum(a,n,n0,nn) 其中a是符 号表达式,n为符号变量,n0和nn为始末项。
(1)图形标注
函数调用格式:
title(‘图形名称’) xlabel(‘x轴说明’) ylabel(‘y轴说明’)
用于图形和坐标轴的名称 函数在(x,y)坐标处添加图形说明
不适用三维图形
text(x,y,’图形说明’)
gtext(‘图例名称’) legend(‘图例名称’)
MATLAB
在说明文字中,除了用ASCII字符外,还有比较 流行的LaTeX(数学排版软件),这样就可以加希腊字母、 数学符号、及公式内容,要用{ }括起来。比如: e^{a}效果为:ea , x_{ 11}效果:x11
*limit(f,x,a) 计算符号表达式f在x→a条件下的极限; *limit(f,a) 计算符号表达式f中由默认自变量趋向于a条 件下的极限; *limit(f,) 计算符号表达式f在默认自变量趋向于0条件 下的极限; *limit(f,x,a,‘right’) 和limit(f,x,a,’left’) 计算符号表达式 f在x→a条件下的右极限和左极限; qh0301.m *limit(f,x,inf) 无穷极限。
MATLAB
第四章
4.1 4.2 4.3
MATLAB绘图
二维图形 简单了解三维图形 图形窗功能简介
MATLAB
本章重点
1.掌握二维绘图函数的用法
2.掌握图形编辑相关方法
MATLAB
4.1
二维图形:包括数值类和符号类绘图
第一节 二维数据图
1. 二维数据的形式
(1)两个元素同为n的行向量。 (2)一个二维(n×m)矩阵,n行,m列。
n 2 2
n
MATLAB
例:
d y 2 dx
2
dy 2 2y 0 dx
dy y (0) 1 , ( ) 0 0 dx
试求微分方程的解。 y=dsolve('D2y+2*Dy+2*y=0','y(0)=1','Dy(0)=0')
ans =
exp(-x)*cos(x)+exp(-x)*sin(x)
MATLAB
(2)坐标控制 调用格式:axis([xmin,xmax,ymin,ymax]) hold on/off grid on/off box on/off 保持原有图形。 指的是画出/不画出网络线。 当前坐标呈封闭/开启形式。
清除原有图形:clf
qh0403.m
MATLABห้องสมุดไป่ตู้
5. 绘制二维图形的其他函数
MATLAB
• 矩阵除法运算 在MATLAB中,有两种矩阵除法运算: “\” 代表右除(常用除法)和“/”左除运算。 例:2/5=0.4,而2\5=2.5 对于矩阵:A\B表示:A-1*B,即:inv(A)*B 用于解决AX=B
A/B表示:A*B-1,即:A*inv(B)
MATLAB
例1、求解线性方程组的解。
qh0302.m
MATLAB
3.符号函数求微积分
对可微函数f: d n f ( v ) 函数f对变 (1)微分:dfdvn=diff(f,v,n),即 dv n 量v的n阶微分,n缺省值是1。 对可积函数f: (2)不定积分:int(f,x) (3)定积分:int(f,x,a,b)
x 例:已知: f (cosx )2 ,求
df dx
和 0 x 2 dx (cosx)
1
qh0303
MATLAB
4. 基本符号表达式运算
(1)四则运算(计算结果依然是符号表达式,但结果 最简)
如:syms x y z; f1=2*x+x^2*x-5*x+x^3 f2=2*x/(5*x) f3=(x+y)*(x-y) 符号表达式得到最简形式 f 1=-3*x+2*x^3 f2 =2/5 f3 =(x+y)*(x-y)
qh0304
(2)表达式化简 simplify(S) 应用函数规则对S化简;
simple(S) 调用MATLAB的其他函数对S进行综合化 简,并显示化简过程。
MATLAB
(3)因式分解与展开 factor(s) 对S分解因式,
expand(s)
collect(s)
对S进行展开,
对S合并同类项,
以上S均可以是符号表达式或符号矩阵。
s
1 n 2 ,求
例:求下列级数之和:
1 1 1 1 s1 1 ... 2 ... 4 9 16 n
syms n s1=symsum(1/n^2,n,1,inf) 结果:s1 =1/6*pi^2
MATLAB
6. 常微分方程的符号求解
命令格式:S=dsolve(‘eqn1, eqn2’,’cond1, cond2’,’v’)
MATLAB
>> x1=0:pi/100:2*pi; >> x2=0:pi/100:3*pi; >> y1=exp(-0.5*x1).*sin(2*pi*x1); >> y2=1.5*exp(-0.1*x2).*sin(x2); >> figure(2) >> plotyy(x1,y1,x2,y2)
(2)绘制复数的向量图:3+2i,4.5-i,-1.5+5i。
subplot(121); pie([7,13,24,19,6]); title('饼图');legend('优秀','良好','中等','及格','不及 格'); subplot(122);compass([3+2i,4.5-i,-1.5+5i]); title('向量图')
第三章
3.1 3.2
符号运算
符号运算基础 符号函数的运算
MATLAB
本章重点
1.掌握如何创建符号变量、表达式
2.掌握符号运算功能
MATLAB
3.1
符号计算基础
符号运算是数学计算的重要内容,特点是不带来计 算误差。即直接对抽象的符号进行运算,并将所得到结 果以标准的符号形式来表示。符号对象包括:符号变量、 符号常数以及符号表达式。
1.建立符号变量和符号常数: 1)用单引号‘’表示。(少用) 2)用函数sym(‘’)表示。 3)用命令syms表示多个变量。 注意:1)符号代数式中的符号应另行创建; 2)‘’中空格等都视为符号; 2.建立符号表达式:包括代数式、符号方程、符号矩阵、 抽象函数。其中已创建的代数式等可以赋值。
MATLAB
调用格式:plotyy(x1,y1,x2,y2).
其中x1-y1对应一条曲线,x2-y2对应一条曲 线。共用一个横坐标,纵坐标有两个,左纵坐标 对应x1-y1,右纵坐标对应x2-y2。 例2:用不同标度在同一坐标内绘制曲线 0.5 x y2 1.5e 0.1x sin(x) y1 e sin(2x) 及
例3:绘制 sin(2 ) cos(2 ) 的极坐标图。
theta=0:0.01:2*pi; rho=sin(2*theta).*cos(2*theta); polar(theta,rho,'r')
MATLAB
占百分比的饼图:pie,以及复数的向量图compass 例4:绘制图形:
(1)某次考试优秀,良好,中等,及格,不及格的人数 分别为:7,13,24,19,6,使用饼图做成绩统计分析。
MATLAB
plot的一般调用格式为:
(1)plot(x,y,’s’) —— 基本格式,用s指定的点形线型绘 制。x,y是长度相同的一维数组,分别指采样点横、纵坐 标;‘s’指“离散点形”或“连续线型”以及颜色设置。 默认为“蓝色细实线”; (2)plot(X,Y) ——采用默认色彩次序用细实线绘制多条 曲线。X,Y均为m×n数组时,绘制n条曲线;若其中一个 是一维数组,则绘制等行或等列条曲线; (3)plot(X,Y,’s’) ——只能用s指定的点线型色彩绘制多 条曲线。
MATLAB
第二节 二维符号函数绘图 ezplot —— 二维坐标符号函数绘图
(1)ezplot(f,[x1,x2]) f为含单变量的符号函数,x1-x2为取值围,默认为 [-2pi,2pi]。 (2)ezplot(x,y,[t1,t2]) x=f(t),y=f(t)为参数方程符号函数,t1-t2为参数变量 的取值围。 (3)ezplot(‘u(x,y)’,[x1,x2],[y1,y2]) 两变量隐函数:u(x,y)=0,[x1,x2]和[y1,y2]表示取值 范围。
(1)其他形式的线性直角坐标图
在线性直角坐标系中,其他形式的图形有条形图、 阶梯图、杆图和填充图等:
bar(x,y,’s’) stairs(x,y, ’s’)
stem(x,y, ’s’)
fill(x1,y1, ’s1’,x2,y2, ’s2’) qh04031.m
MATLAB
(2)极坐标图
极坐标图,调用格式:polar(theta,rho, ’s’) ,对应 代表极角,极坐标矢径。
3.2
符号函数的运算
• 对符号函数进行运算,首先必须: (1)定义符号变量 (2)定义符号函数 1. 符号函数中变量的确定
MATLAB中的符号可以表示符号变量和符号常数。 findsym可以帮助用户查找一个符号函数中的符号变量 以及次序。调用格式:findsym(f,n)
MATLAB
2. 函数求极限
MATLAB
基本绘图命令函数
符 号 y m c r
颜色 黄色 紫色 青色 红色
符 号 g b w k
颜色 绿色 蓝色 白色 黑色
符 号 . o x +
线型 实心黑点 圆圈 叉字符 加号
符 号 s d p h <
线型 方块符 菱形符 五角星符 六角形符 朝左三角 符
符号 * : -. --
线型 星号 实线 点线 点划线 虚线
qh0404.m
MATLAB
4.2
三维图形(了解)
最基本的三维图形调用函数:plot3(x,y,z, ’s’),其 用法和plot相似。其指令主要用来表现单参数的三维 曲线。
qh0405.m qh0406.m
3X1 + X2 - X3 = 3.6 X1 + 2X2 + 4X3 = 2.1 对于线性系统有Ax=b - X1 + 4X2 + 5X3 = -1.4 A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4]; x=A\b
x= 1.4818 -0.4606 0.3848
MATLAB
MATLAB
(5) subplot——单窗口多曲线分图绘图
调用函数:subplot(m,n,k)
该函数将当前图形窗口分成mn个绘图区域, 即每行n个,共m行,且选定第k个为当前活动区。
例:在一个图形窗口中以子图形式同时绘制正弦、 余弦、正切、余切曲线。
qh0401.m
MATLAB
4. 绘制图形的辅助操作
2. 二维数据图形
(1)各对应元素在平面上确定n个点连成的一条直线。 (2)一个二维(n×m)矩阵,n行,m列。
MATLAB
3. plot —— 最基本的二维图形指令
• plot命令自动打开一个图形窗口Figure • 如果已经存在一个图形窗口,plot命令则清除当前图 形,绘制新图形; • 可任意设定曲线颜色和线型; • 可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗 口多曲线分图绘图;可多窗口绘图; • 可给图形加坐标网线和图形加注功能;
输入量包括三部分:微分方程、初始条件、独立变 量。其中输入量必须以字符串形式编写。 默认自变量为 ‘x’,可任意指定自变量‘t’, ‘u’等。 微分方程的各阶导数项以大写字母D表示。
MATLAB
dy dy 或 y的一阶导数—— Dy dt dx
d y d y 2 或 2 y的二阶导数—— D2y dt dx d y d y y的 n 阶导数—— Dny n 或 n dt dx
MATLAB
例1:多曲线绘制 • t=0:pi/100:2*pi; • y=sin(t); • y1=sin(t+0.25); y • y2=sin(t+0.5); y1 • plot(t,y,'r+',t,y1,'gp',t,y2,'b-')
y2
MATLAB
(4) plotyy —— 双y轴绘图
例:1)对A的每个元素分解因式。
A=[2a2b3x2-4ab4x3+10ab6x4
4
3xy-5x2
a3-b3]
qh0305.m
2)计算表达式S的值。S=(-7x2-8x2)×(-x2+3y2)
MATLAB
5. 级数符号求和
n 1 对于等比无穷级数求和 和的调用格式为:symsum(a,n,n0,nn) 其中a是符 号表达式,n为符号变量,n0和nn为始末项。
(1)图形标注
函数调用格式:
title(‘图形名称’) xlabel(‘x轴说明’) ylabel(‘y轴说明’)
用于图形和坐标轴的名称 函数在(x,y)坐标处添加图形说明
不适用三维图形
text(x,y,’图形说明’)
gtext(‘图例名称’) legend(‘图例名称’)
MATLAB
在说明文字中,除了用ASCII字符外,还有比较 流行的LaTeX(数学排版软件),这样就可以加希腊字母、 数学符号、及公式内容,要用{ }括起来。比如: e^{a}效果为:ea , x_{ 11}效果:x11
*limit(f,x,a) 计算符号表达式f在x→a条件下的极限; *limit(f,a) 计算符号表达式f中由默认自变量趋向于a条 件下的极限; *limit(f,) 计算符号表达式f在默认自变量趋向于0条件 下的极限; *limit(f,x,a,‘right’) 和limit(f,x,a,’left’) 计算符号表达式 f在x→a条件下的右极限和左极限; qh0301.m *limit(f,x,inf) 无穷极限。
MATLAB
第四章
4.1 4.2 4.3
MATLAB绘图
二维图形 简单了解三维图形 图形窗功能简介
MATLAB
本章重点
1.掌握二维绘图函数的用法
2.掌握图形编辑相关方法
MATLAB
4.1
二维图形:包括数值类和符号类绘图
第一节 二维数据图
1. 二维数据的形式
(1)两个元素同为n的行向量。 (2)一个二维(n×m)矩阵,n行,m列。
n 2 2
n
MATLAB
例:
d y 2 dx
2
dy 2 2y 0 dx
dy y (0) 1 , ( ) 0 0 dx
试求微分方程的解。 y=dsolve('D2y+2*Dy+2*y=0','y(0)=1','Dy(0)=0')
ans =
exp(-x)*cos(x)+exp(-x)*sin(x)
MATLAB
(2)坐标控制 调用格式:axis([xmin,xmax,ymin,ymax]) hold on/off grid on/off box on/off 保持原有图形。 指的是画出/不画出网络线。 当前坐标呈封闭/开启形式。
清除原有图形:clf
qh0403.m
MATLABห้องสมุดไป่ตู้
5. 绘制二维图形的其他函数
MATLAB
• 矩阵除法运算 在MATLAB中,有两种矩阵除法运算: “\” 代表右除(常用除法)和“/”左除运算。 例:2/5=0.4,而2\5=2.5 对于矩阵:A\B表示:A-1*B,即:inv(A)*B 用于解决AX=B
A/B表示:A*B-1,即:A*inv(B)
MATLAB
例1、求解线性方程组的解。