MATLAB基础教程
第一章 MATLAB简介(干货部分)
常用数学运算符号及标点符号
| + | 加法运算【适用于两个数或两个同阶 矩阵相加】
| - | 减法运算
| * | 乘法运算
| .* | 点乘运算
| / | 除法运算
| ./ | 点除运算
| ^ | 乘幂运算
| .^ | 点乘幂运算
| \ | 左除运算【被除数与除数颠倒位置】常用数学函数
sin(x) 正弦函数
cos(x) 余弦函数
tan(x) 正切函数
abs(x) 绝对值
min(x) 最小值
sqrt(x) 开平方
log(x) 自然对数
sign(x) 符号函数
asin(x) 反正弦函数
acos(x) 反余弦函数
atan(x) 反正切函数
max(x) 最大值
sum(x) 元素的总和
exp(x) 以e为底的指数
log10(x) 以10为底的对数
fix(x) 取整
【注】%%【空】为批注,且上下有划线隔开
%【空】 亦为批注,无上下化线
命令窗口Command Window是用户与Matlab进行交互的主要场所,其空白区域用于输入和显示计算结果。可以在该区域键入各种Matlab命令进行各种操作,以及键入数学表达式进行计算等。
示例1 计算
解:在Matlab命令窗口键入 3+4*5+exp(5),回车即可显示其计算结果
ans = 171.4132
- 常用的命令
↓ 调出下一行命令,可进行修改
save 有选择的保存工作内存中的变量
quit 退出Matlab(File下的Exit也是退出Matlab 的命令)
命令 | 功能 |
---|---|
clear | 清除Marlab工作内存中的变量 |
clc | 清除命令窗口中显示的内容 |
clf | 清除图形窗口 |
who | 列出Marlab工作内存中驻留的变量名清单 |
whos | 列出Marlab工作内存中驻留的变量名清单以及变量属性 |
help | 帮助命令 |
↑ | 调出前一行命令,可进行修改 |
↓ | 调出下一行命令,可进行修改 |
save | 有选择的保存工作内存中的变量 |
quit | 退出Matlab(File下的Exit也是退出Matlab的命令) |
compose | 复合运算、右边复合到左边 |
finverse | 求反函数 |
inf | 趋向于无穷大 |
Diff(f,x,n) | 求f关于x的n阶导数 |
4. 符号运算功能
(1)符号表达式的创建
符号变量常用于公式推导
符号表达式是代表数字、函数、算子和变量的Matlab字符串或字符串数组,常见的符号表达式有以下几种:
1)直接用字符串赋值方式创建符号表达式。
Eg.命令 f=‘log(x)’ 定义了符号函数f=ln(x)。
而equation=‘ax^2+bx+c=0’则定义了方程,并赋值给equation。
2)用sym命令来创建。
Eg.f=sym(‘sin(x)’)
equ=sym(‘a*x+b=0’)
3)用syms命令来创建。【最常用】*
Eg.syms x y
f=ysin(x)+xcos(y)
(2)符号函数的运算
假设已经创建了两个函数f和g,下面列出常见的函数运算命令。
命令 | 含义 |
---|---|
f+g | 表达式求和 |
f-g | 表达式求差 |
f*g | 表达式求积 |
f/g | 表达式求商 |
f^n | 表达式f求n次幂 |
compose(f,g) | 把g代入f求复合函数 |
finverse(f) | 求f的反函数,x为默认自变量 |
finverse(f,a) | 求f的反函数,指定a为自变量 |
limit(f,x,a) | 求 f 在 时的极限 |
limit(f) | 求 f 在x→0 时的极限 |
limit(f,x,a,right) | 求f 在x→a时的右极限 |
limit(f,x,a,left) | 求f 在x→a时的左极限 |
diff(f,x,n) | 求f关于x的n阶导数 |
int(f,x) | 求f关于x的不定积分 |
int(f,x,a,b) | 求f关于x从a到b的定积分 |
simple(f) | 化简函数f的表达式 |
(3)函数中的变量代换与求值
命令subs(s,old,new)可将符号表达式s中变量old 换成new,这里的new可以是一个新的变量,也可以是一个表达式,也可以是一个常数。当new换成常数时,就是我们通常的函数求值运算。当表达式中只有自变量x时,old可以缺省。当想代换s中的n个变量时,old=[old1,old2,…,oldn],相应的new也是向量形式。
命令latex(s)可将符号表达式s转换成LaTex代码。
变精度函数vpa(A)可改变A的精度:vpa(pi,30)
Eg. 将函数s=e^x+xsinx 的自变量换成t,并计算s(0),s(0.1),s(0.2),L,s(1)
解:syms x t
s=exp(x)+x*sin(x)
g=subs(s,x,t)
s1=subs(s,x,pi)
s2=subs(s,0:0.1:1)
运行结果为
s =exp(x) + x*sin(x)
g =exp(t) + t*sin(t)
s1 =23.1407
s2 = 1.0000 1.1152 1.2611 1.4385 1.6476 1.8884 2.1609
2.4647 2.7994 3.1646 3.5598
5.数值计算功能
(1)变量与函数
Matlab中变量的命名规则是:
(1)变量名必须是不含空格的单个词;
(2)变量名区分大小写;
(3)变量名最多不超过31位,第31个字符之后的字符
将被忽略;
(4)变量名必须以字母打头,之后可以是任意字母、
数字或下划线,变量名中不允许使用标点符号。
特殊变量表:
特殊变量 | 取值 |
---|---|
ans | 用于结果的缺省变量名 |
pi | 圆周率 |
eps | 计算机的最小数,当和1相加就产生一个比1大的数 |
flops | 浮点运算数 |
inf | 无穷大,如1/0 |
NaN | 不定量,如0/0 |
i,j | i=j= |
realmin | 最小可用正实数 |
realmax | 最大可用正实数 |
(2)向量及其运算
1)向量的生成
①直接输入向量
在中括号内,从左至右依次输入向量的元素,以空格或逗号分隔元素,则输入行向量;以分号分隔元素,则输入列向量。
如a=[1 2 3 4,b=[2,1,4,5],c=[1;2;3;4].
②利用冒号表达式生成向量
x=first:increment:last, 创建从first开始,加increment计数,last结束的行向量,*如a=1:2:12,b=12:-2:1。*若缺省increment,则默认increment为1,如c=1:6。
③线性等分向量函数生成的向量
y=linspace(x1,x2), 生成100维的行向量
y=linspace(x1,x2,n) 生成n维的行向量
2) 向量的运算
已知向量a=[a1, a2, a3],b=[b1, b2, b3],则有
运算 | 表达 |
---|---|
向量加法 | a+b=[a1+b1, a2+b2, a3+b3]; |
向量减法 | a-b=[a1-b1, a2-b2, a3-b3]; |
数乘向量 | 2a=[2a1, 2a2, 2a3]; |
数量积运算 | dot(a,b)=a1b1+a2b2+a3*b3; |
向量积运算 | c=cross(a,b) % 要求a,b均为三维向量 |
向量混合积 | dot(a,cross(b,c)) % 要求a,b均为三维向量 |
数量加法 | a+2=[a1+2, a2+2, a3+2]; |
数量减法 | a-2=[a1-2, a2-2, a3-2]; |
向量相乘 | a.b=[a1b1, a2b2, a3b3]; |
向量右除 | a./b=[a1/b1, a2/b2, a3/b3]; |
向量左除 | a.\b=[b1/a1, b2/a2, b3/a3]; |
向量乘幂 | a.2=[a12, a2^2, a3^2]; 2.a=[2a1, 2^a2, 2^a3] ; a.b=[a1b1, a2^b2, a3^b3] |
数量积运算 | sum(a.b)= a1b1+a2b2+a3b3 |
3)向量元素的提取
①提取一个元素: x(i)表示访问数组x的第i个元素
②提取一块元素: x(i :j :k)表示访问数组x的从第i个元素开始,以步长为j到第k个元素(但不超过k),j可以为负数,j缺损时为1。
③直接使用元素编址序号. x([i j k l]) 表示提取数组x的第i 、j、k、l个元素构成一个新的数组 [x(i) x(j) x(k)
x(l)]。
*eg. 设有向量a=[1,3,5,7,9];b=[2,4,6,8,10],计算
(1) a+2b; (2) a与b的数量积; (3) a.*b;
(4)a.\b; (5) a./b;
(6) 将a向量的第2个元素换成13;
(7) 提取a的第1,3,5个向量组成新的向量;
(8)将a,b两个向量合并成一个向量。
(1) a+2*b
运行结果为ans = 5 11 17 23 29
(2) dot(a,b)
运行结果为ans = 190
(3) a.b
运行结果为ans = 2 12 30 56 90
(4) a.\b
运行结果为ans =2.0000 1.3333 1.2000 1.1429 1.1111
(5) a./b
运行结果为ans = 0.5000 0.7500 0.8333 0.8750 0.9000
(6) a(2)=13; a
运行结果为a =1 13 5 7 9
(7) c=a([1,3,5])
运行结果为c =1 5 9
(8) d=[a,b]
运行结果为d =1 13 5 7 9 2 4 6 8 10
4)向量元素的个数
命令 size(x) 和 length(x) 都返回向量x所含元素的个数,也称为向量的长度。当向量维数较高时,我们可以由这两个命令获得向量的长度。
例如有向量x=0:3pi/20:2pi,运行size(x),结果为ans = 1 14,运行length(x),结果为ans = 14,可见向量x共有14个元素。
(3)矩阵及其运算
输入原矩阵:每行用“;”隔开,最终用“[]”括起来
Eg. 链接:https://pan.baidu.com/s/1uTCbiRfIxcrt6lmiy6_QlQ 提取码:f2dn Matlab学习一本通,matlab基础教程 <MATLAB R201 ... MATLAB中文论坛论坛 http://www.ilovematlab.cn/thread-542310-1-1.html MATLAB最基础教程(零):基本数学概念 前言:matlab只是个软件,用 ... 7.1 二维高层绘图的基本函数plot() 重要参考资料: ① 基础教程视频对应的操作纪录 ② 基础教程视频对应的PPT 辅助参考资料:Matlab基本绘图函数 1. plot()有两个参数 (1)基 ... Matlab基础实验报告 南昌大学实验报告(信号与系统) 学生姓名: 肖江 学 号: 6100210030 专业班级: 电子103班 实验类型:□ 验证 □ 综合 □ 设计 □ 创新 实验日期: 20 ... (完整版)matlab第一讲教案_数学_高中教育_教育专区.西南科技大学本科生课程备课教案计算机技术在安全工程中的应用--Matlab 入门及应用授课教师:徐中慧 班级: 专业...... 2012 ... 本教程主要讲到MATLAB语法.运算符.数据类型.数组索引及处理等等语言基础知识.大概可分四大部分: (1)输入命令 输入命令- MATLAB & Simulink- MathWorks 中国 ... 目录 今天目标: 画一个图像并且给图像加上标题 子图绘制 一些小知识 grid 设置框线 box 设置边框 polar() 绘图 今天小结 今天目标: 画一个图像并且给图像加上标题 首先我们画一张很简 ... 目录 MATLAB数据可视化 绘图 在同一个figure里面绘制多个图形 本期小结 MATLAB数据可视化 绘图 绘制图形(二维)一般使用plot函数,这个函数一般能满足很多画图的功能了,比如我们能绘 ... 目录 复习定积分(单变量) 二重积分 今日小结 复习定积分(单变量) 在之前,先复习一下之前学习的内容.使用matlab求解定积分的步骤大概如下: 定义符号变量(syms关键字) 定义内联函数(inl ... 目录 今日任务: 一般方程: 方程组(目前仅讨论方程个数和未知数个数一样的情况): 额外知识 咦,咋跑题了 左除和右除 今日总结: 今日任务: 在数学中经常遇见的一个问题就是方程求解,特别是线性代数中 ...
A=[1 2 3;4 5 2; 3 2 7]
A =
1 2 3
4 5 2
3 2 7
转置矩阵:A’
拉长矩阵:A(:)
Eg.>> B=A(
MATLAB基础教程相关推荐
最新文章
热门文章