📄 2.txt
字号:
第2章 数值计算与数据分析
2.1 基本数学函数
2.1.1 三角函数与双曲函数
函数 sin、sinh
功能 正弦函数与双曲正弦函数
格式 Y = sin(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的正弦值Y,所有分量的角度单位为弧度。
Y = sinh(X) %计算参量X的双曲正弦值Y
注意:sin(pi)并不是零,而是与浮点精度有关的无穷小量eps,因为pi仅仅是精确值π浮点近似的表示值而已;对于复数Z= x+iy,函数的定义为:sin(x+iy) = sin(x)*cos(y) + i*cos(x)*sin(y), ,
例2-1
x = -pi:0.01:pi; plot(x,sin(x))
x = -5:0.01:5; plot(x,sinh(x))
图形结果为图2-1。
图2-1 正弦函数与双曲正弦函数图
函数 asin、asinh
功能 反正弦函数与反双曲正弦函数
格式 Y = asin(X) %返回参量X(可以是向量、矩阵)中每一个元素的反正弦函数值Y。若X中有的分量处于[-1,1]之间,则Y = asin(X)对应的分量处于[-π/2,π/2]之间,若X中有分量在区间[-1,1]之外,则Y= asin(X)对应的分量为复数。
Y = asinh(X) %返回参量X中每一个元素的反双曲正弦函数值Y
说明 反正弦函数与反双曲正弦函数的定义为: ,
例2-2
x = -1:.01:1; plot(x,asin(x))
x = -5:.01:5; plot(x,asinh(x))
图形结果为图2-2。
图2-2 反正弦函数与反双曲正弦函数图
函数 cos、cosh
功能 余弦函数与双曲余弦函数
格式 Y = cos(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的余弦值Y,所有角度分量的单位为弧度。我们要指出的是,cos(pi/2)并不是精确的零,而是与浮点精度有关的无穷小量eps,因为pi仅仅是精确值π浮点近似的表示值而已。
Y = sinh(X) %计算参量X的双曲余弦值Y
说明 若X为复数z= x+iy,则函数定义为:cos(x+iy) = cos(x)*cos(y) + i*sin(x)*sin(y), ,
例2-3
x = -pi:0.01:pi; plot(x,cos(x))
x = -5:0.01:5; plot(x,cosh(x))
图形结果为图2-3。
图2-3 余弦函数与双曲余弦函数图
函数 acos、acosh
功能 反余弦函数与反双曲余弦函数
格式 Y = acos(X) %返回参量X(可以是向量、矩阵)中每一个元素的反余弦函数值Y。若X中有的分量处于[-1,1]之间,则Y = acos(X)对应的分量处于[0,π]之间,若X中有分量在区间[-1,1]之外,则Y = acos(X)对应的分量为复数。
Y = asinh(X) %返回参量X中每一个元素的反双曲余弦函数Y
说明 反余弦函数与反双曲余弦函数定义为: ,
例2-4
x = -1:.01:1; plot(x,acos(x))
x = -5:.01:5; plot(x,acosh(x))
图形结果为图2-4。
图2-4 反余弦函数与反双曲余弦函数图
函数 tan、tanh
功能 正切函数与双曲正切函数
格式 Y = tan(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的正切值Y,所有角度分量的单位为弧度。我们要指出的是,tan(pi/2)并不是精确的零,而是与浮点精度有关的无穷小量eps,因为pi仅仅是精确值π浮点近似的表示值而已。
Y = tanh(X) %返回参量X中每一个元素的双曲正切函数值Y
例2-5
x = (-pi/2)+0.01:0.01:(pi/2)-0.01; % 稍微缩小定义域
plot(x,tan(x))
x = -5:0.01:5; plot(x,tanh(x))
图形结果为图2-5。
图2-5 正切函数与双曲正切函数图
函数 atan、atanh
功能 反正切函数与反双曲正切函数
格式 Y = atan(X) %返回参量X(可以是向量、矩阵)中每一个元素的反正切函数值Y。若X中有的分量为实数,则Y = atan(X)对应的分量处于[-π/2,π/2]之间。
Y = atanh(X) %返回参量X中每一个元素的反双曲正切函数值Y。
说明 反正切函数与反双曲正切函数定义为: ,
例2-6
x = -20:0.01:20; plot(x,atan(x))
x = -0.99:0.01:0.99; plot(x,atanh(x))
图形结果为图2-6。
图2-6 反正切函数与反双曲正切函数图
函数 cot、coth
功能 余切函数与双曲余切函数
格式 Y = cot(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的余切值Y,所有角度分量的单位为弧度。
Y = coth(X) %返回参量X中每一个元素的双曲余切函数值Y
例2-7
x1 = -pi+0.01:0.01:-0.01; % 去掉奇点x = 0
x2 = 0.01:0.01:pi-0.01; % 做法同上
plot(x1,cot(x1),x2,cot(x2))
plot(x1,coth(x1),x2,coth(x2))
图形结果为图2-7。
图2-7 余切函数与双曲余切函数图
函数 acot、acoth
功能 反余切函数与反双曲余切函数
格式 Y = acot(X) %返回参量X(可以是向量、矩阵)中每一个元素的反余切函数Y
Y = acoth(X) %返回参量X中每一个元素的反双曲余切函数值Y
例2-8
x1 = -2*pi:pi/30:-0.1; x2 = 0.1:pi/30:2*pi; % 去掉奇异点x = 0
plot(x1,acot(x1),x2,acot(x2))
x1 = -30:0.1:-1.1; x2 = 1.1:0.1:30;
plot(x1,acoth(x1),x2,acoth(x2))
图形结果为图2-8。
图2-8 反余切函数与反双曲余切函数图
函数 sec、sech
功能 正割函数与双曲正割函数
格式 Y = sec(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的正割函数值Y,所有角度分量的单位为弧度。我们要指出的是,sec(pi/2)并不是无穷大,而是与浮点精度有关的无穷小量eps的倒数,因为pi仅仅是精确值π浮点近似的表示值而已。
Y = sech(X) %返回参量X中每一个元素的双曲正割函数值Y
例2-9
x1 = -pi/2+0.01:0.01:pi/2-0.01; % 去掉奇异点x = pi/2
x2 = pi/2+0.01:0.01:(3*pi/2)-0.01;
plot(x1,sec(x1),x2,sec(x2))
x = -2*pi:0.01:2*pi;
plot(x,sech(x))
图形结果为图2-9。
图2-9 正割函数与双曲正割函数图
函数 asec、asech
功能 反正割函数与反双曲正割函数
格式 Y = asec(X) %返回参量X(可以是向量、矩阵)中每一个元素的反正割函数值Y
Y = asech(X) %返回参量X中每一个元素的反双曲正割函数值Y
例2-10
x1 = -5:0.01:-1; x2 = 1:0.01:5;
plot(x1,asec(x1),x2,asec(x2))
x = 0.01:0.001:1; plot(x,asech(x))
图形结果为图2-10。
图2-10 反正割函数与反双曲正割函数图
函数 csc、csch
功能 余割函数与双曲余割函数
格式 Y = csc(X) %计算参量X(可以是向量、矩阵,元素可以是复数)中每一个角度分量的余割函数值Y,所有角度分量的单位为弧度。
Y = csch(X) %返回参量X中每一个元素的双曲余割函数值Y
例2-11
x1 = -pi+0.01:0.01:-0.01; x2 = 0.01:0.01:pi-0.01; % 去掉奇异点x=0
plot(x1,csc(x1),x2,csc(x2))
plot(x1,csch(x1),x2,csch(x2))
图形结果为图2-11。
图2-11 余割函数与双曲余割函数图
函数 acsc、acsch
功能 反余割函数与反双曲余割函数。
格式 Y = asec(X) %返回参量X(可以是向量、矩阵)中每一个元素的反余割函数值Y
Y = asech(X) %返回参量X中每一个元素的反双曲余割函数值Y
例2-12
x1 = -10:0.01:-1.01; x2 = 1.01:0.01:10; % 去掉奇异点x = 1
plot(x1,acsc(x1),x2,acsc(x2))
x1 = -20:0.01:-1; x2 = 1:0.01:20;
plot(x1,acsch(x1),x2,acsch(x2))
图形结果为图2-12。
图2-12 反余割函数与反双曲余割函数图
函数 atan2
功能 四象限的反正切函数
格式 P = atan2(Y,X) %返回一与参量X和Y同型的、与X和Y元素的实数部分对应的、元素对元素的四象限的反正切函数阵列P,其中X和Y的虚数部分将忽略。阵列P中的元素分布在闭区间[-pi,pi]上。特定的象限将取决于sign(Y)与sign(X)。
例2-13
z=1+2i;
r = abs(z);
theta = atan2(imag(z),real(z))
z = r *exp(i *theta)
feather(z);hold on
t=0:0.1:2*pi;
x=1+sqrt(5)*cos(t);
y=sqrt(5)*sin(t);
plot(x,y);
axis equal; hold off
计算结果为:
theta =
1.1071
z =
1.0000 + 2.0000i
图形结果为图2-13。
图2-13 四象限的反正切函数图
2.1.2 其他常用函数
函数 fix
功能 朝零方向取整
格式 B = fix(A) %对A的每一个元素朝零的方向取整数部分,返回与A同维的数组。对于复数参量A,则返回一复数,其分量的实数与虚数部分分别取原复数的、朝零方向的整数部分。
例2-14
>>A = [-1.9, -0.2, 3.1415926, 5.6, 7.0, 2.4+3.6i];
>>B = fix(A)
计算结果为:
B =
Columns 1 through 4
-1.0000 0 3.0000 5.0000
Columns 5 through 6
7.0000 2.0000 + 3.0000i
函数 roud
功能 朝最近的方向取整。
格式 Y = round(X) %对X的每一个元素朝最近的方向取整数部分,返回与X同维的数组。对于复数参量X,则返回一复数,其分量的实数与虚数部分分别取原复数的、朝最近方向的整数部分。
例2-15
>>A = [-1.9, -0.2, 3.1415926, 5.6, 7.0, 2.4+3.6i];
>>Y = round(A)
计算结果为:
Y =
Columns 1 through 4
-2.0000 0 3.0000 6.0000
Columns 5 through 6
7.0000 2.0000 + 4.0000i
函数 floor
功能 朝负无穷大方向取整
格式 B = floor(A) %对A的每一个元素朝负无穷大的方向取整数部分,返回与A同维的数组。对于复数参量A,则返回一复数,其分量的实数与虚数部分分别取原复数的、朝负无穷大方向的整数部分。
例2-16
>>A = [-1.9, -0.2, 3.1415926, 5.6, 7.0, 2.4+3.6i];
>>F = floor(A)
计算结果为:
F =
Columns 1 through 4
-2.0000 -1.0000 3.0000 5.0000
Columns 5 through 6
7.0000 2.0000 + 3.0000i
函数 rem
功能 求作除法后的剩余数
格式 R = rem(X,Y) %返回结果X - fix(X./Y).*Y,其中X、Y应为正数。若X、Y为浮点数,由于计算机对浮点数的表示的不精确性,则结果将可能是不可意料的。fix(X./Y)为商数X./Y朝零方向取的整数部分。若X与Y为同符号的,则rem(X,Y)返回的结果与mod(X,Y)相同,不然,若X为正数,则rem(-X,Y) = mod(-X,Y) - Y。该命令返回的结果在区间[0,sign(X)*abs(Y)],若Y中有零分量,则相应地返回NaN。
例2-17
>>X = [12 23 34 45];
>>Y = [3 7 2 6];
>>R = rem(X,Y)
计算结果为:
R =
0 2 0 3
函数 ceil
功能 朝正无穷大方向取整
格式 B = floor(A) % 对A的每一个元素朝正无穷大的方向取整数部分,返回与A同维的数组。对于复数参量A,则返回一复数,其分量的实数与虚数部分分别取原复数的、朝正无穷大方向的整数部分。
例2-18
>>A = [-1.9, -0.2, 3.1415926, 5.6, 7.0, 2.4+3.6i];
>>B = ceil(A)
计算结果为:
B =
Columns 1 through 4
-1.0000 0 4.0000 6.0000
Columns 5 through 6
7.0000 3.0000 + 4.0000i
函数 exp
功能 以e为底数的指数函数
格式 Y = exp(X) %对参量X的每一分量,求以e为底数的指数函数Y。X中的分量可以为复数。对于复数分量如,z = x +i*y,则相应地计算:e^z = e^x*(cos(y) + i*sin(y))。
例2-19
>>A = [-1.9, -0.2, 3.1415926, 5.6, 7.0, 2.4+3.6i];
>>Y = exp(A)
计算结果为:
Y =
1.0e+003 *
Columns 1 through 4
0.0001 0.0008 0.0231 0.2704
Columns 5 through 6
1.0966 -0.0099 - 0.0049i
函数 expm
功能 求矩阵的以e为底数的指数函数
格式 Y = expm(X) %计算以e为底数、x的每一个元素为指数的指数函数值。若矩阵x有小于等于零的特征值,则返回复数的结果。
说明 该函数为一内建函数,它有三种计算算法:
(1)使用文件expm1.m中的用比例法与二次幂算法得到的Pad近似值;
(2)使用Taylor级数近似展开式计算,这种计算在文件expm2.m中。但这种一般计算方法是不可取的,通常计算是缓慢且不精确的;
(3)在文件expm3.m中,先是将矩阵对角线化,再把函数计算出相应的的特征向量,最后转换过来。但当输入的矩阵没有与矩阵阶数相同的特征向量个数时,就会出现错误。
例2-20
>>A=hilb(4);
>>Y = expm(A)
计算结果为:
Y =
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -