MATLAB基础教程

本文介绍了MATLAB的基本运算符,包括加减乘除、乘幂和点运算,以及常用的数学函数如三角函数、绝对值和对数。此外,还详细阐述了MATLAB的符号运算功能,包括符号表达式创建、函数运算和变量代换。同时,讲解了MATLAB中的向量运算,如向量生成、运算和元素提取。最后,提到了矩阵运算和矩阵属性。MATLAB的这些功能对于科学计算和工程应用至关重要。
摘要由CSDN通过智能技术生成

第一章 MATLAB简介(干货部分)

  1. 常用数学运算符号及标点符号
    | + | 加法运算【适用于两个数或两个同阶 矩阵相加】
    | - | 减法运算
    | * | 乘法运算
    | .* | 点乘运算
    | / | 除法运算
    | ./ | 点除运算
    | ^ | 乘幂运算
    | .^ | 点乘幂运算
    | \ | 左除运算【被除数与除数颠倒位置】

  2. 常用数学函数
    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

  1. 常用的命令

调出下一行命令,可进行修改

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,ji=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.
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(😃
B =
1
4
3
2
5
2
3
2
7

逆矩阵:inv(A)
零矩阵:zeros(行,列,维度)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值