最近,看到有不少朋友问MATLAB在复数方面的应用问题,特此发个帖子,给大家分享点资料.
matlab在复数中的应用
1.复数的生成
复数生成语句(其中theta为复数辐角的弧度值,r为复数的模)
z=a+b*i,z=a+bi。
z=r*exp(i*theta),z=r*exp(thetai)。
2.创建复矩阵
创建复矩阵的方法有两种。
(1)如同一般的矩阵一样以前面介绍的几种方式输入矩阵
例如:A=[3+5*i,-2+3i,9*exp(i*6),23*exp(33i)]
(2)可将实、虚矩阵分开创建,再写成和的形式
例如:
re=rand(3,2)
im=rand(3,2)
com=re+i*im
注意 实、虚矩阵应大小相同。
3.复数的运算
real(x)返回复数x的实部
imag(x)返回复数x的虚部
conj(x)返回复数x的共轭复数
angle(x)返回复数x的辐角
abs(x)返回复数x的模
复数的乘除法运算由“*”和“/”实现。
ex.
x=4*exp(pi/3i)
y=4*exp(pi/(3i))
z=4*exp(pi/3*i)
>>
x =2.0000 – 3.4641i
y =2.0000 – 3.4641i
z =2.0000 + 3.4641i
sprt(x)返回复数x的平方根值
x^n返回复数x的n次幂
exp(x)返回复数x的以e为底的指数值
log(x)返回复数x的以e为底的对数值
4.复数三角函数运算
sin(x)返回复数x的正弦函数值,asin(x)返回复数x的反正弦值
cos(x)返回复数x的余弦函数值,acos(x)返回复数x的反余弦值
tan(x)返回复数x的正切函数值,atan(x)回复数x的反正切值
cot(x)返回复数x的余切函数值,acot(x)返回复数x的反余切值
sec(x)返回复数x的正割函数值,asec(x)返回复数x的反正割值
csc(x)返回复数x的余割函数值,acsc(x)返回复数x的反余割值
sinh(x)返回复数x的双曲正弦值,coth(x)返回复数x的双曲余切值
cosh(x)返回复数x的双曲余弦值,sech(x)返回复数x的双曲正割值
tanh(x)返回复数x的双曲正切值,sech(x)返回复数x的双曲余割值
5.复数方程求根
复数方程求根或实方程的复数根求解由函数solve实现
ex.
solve('x^3+1=0')或solve('x^3=-1')
>>
ans =
[ -1]
[ 1/2-1/2*i*3^(1/2)]
[ 1/2+1/2*i*3^(1/2)]
6.留数及其应用
[R,P,K]=residue(B,A)
s=2*pi*i*sum(R)—-找出满足条件的R,求积分值
ex1.
求f(z)=(z+1)/(z^2-2z)的奇点处的留数
[R,P,K]=residue([1,1],[1,-2,0])
>>
R =
1.5000
-0.5000
P =
2
0
K =
[]
ex2.
求积分,f(z)=z/(z^4-1),C为正向圆周abs(z)=2
[R,P,K]=residue([1,0],[1,0,0,0,-1])
s=2*pi*i*sum(R)%此处均符合
>>
R =
0.2500
0.2500
-0.2500 + 0.0000i
-0.2500 – 0.0000i
P =
-1.0000
1.0000
0.0000 + 1.0000i
0.0000 – 1.0000i
K =
[]
s =
0
7.Taylor级数展开
taylor(f) 返回函数的五次幂多项式近似
taylor(f,n)返回n-1次幂多项式
taylor(f,a)返回a点附近的幂多项式近似
taylor(r,x)使用独立变量代替函数findsym(f)
8.Laplace变换及其逆变换
(1)Laplace变换
L=laplace(F)返回以默认独立变量T对符号函数F的Laplace变换。函数返回默认为s的函数。如果F=F(s),则Laplace函数返回t的函数。其中定义L为对t的积分L(s)=int(F(t)*exp(-s*t),0,inf)
L=laplace(F,t)以t代替s的Laplace变换。laplace(F,t)等价于L(t)=int(F(x)*exp(-t*x),0,inf)
L=laplace(F,w,z)以z代替s的Laplace变换(相对于w的积分),laplace(F,w,z)等价于L(z)=int(F(w)*exp(-z*w),0,inf)
(2)Laplace逆变换
F=ilaplace(L)返回以默认独立变量s的数量符号L的Laplace变换,默认返回t的函数。如果L=L(t),则ilaplace返回x的函数F=F(x).F(x)定义为对s的积分F(t)=int(L(s)*exp(s*t),s,c-i*intf,c+i*inf);其中c为选定实数,使得L(s)的所有奇点都在直线s=c的左侧。
F=ilaplace(L,y)以y代替默认的t的函数,且有ilaplace(L,y)等价于F(y)=int(L(y)*exp(s*y),s,c-i*intf,c+i*inf)。这里y是个数量符号。
F=ilaplace(L,y,x)以x代替t的函数,F=ilaplace(L,y,x)等价于)F(y)=int(L(y)*exp(x*y),y,c-i*intf,c+i*inf),对y取积分。
9.Fourier变换及其逆变换
(1)Fourier积分变换
F=fourier(f)返回以默认独立变量x对符号函数f的Fourier变换,默认返回w的函数。如果f=f(w),则fourier
函数返回t的函数F=F(t)。定义F(w)int(f(x)*exp(-i*w*x),x,-inf,inf),为对x的积分。
F=fourier(f,v)以v代替默认值w的Fourier变换,且有fourier(f,v)等价于F(v)=int(f(x)*exp(-i*v*x)x,-inf,inf)
fourier(f,u,v)以v代替x且对u积分,且有fourier(f,u,v)<=>F(v)=
int(f(u)*exp(-i*v*u),u,-inf,inf)
(2)Fourier逆变换
f=ifourier(F)返回以默认独立变量w对符号函数F的Fourier逆变换,默认返回x的函数Fourier逆变换应用于返回x的函数,即由F=F(w)推出f=f(x)。如果F=F(x),则ifourier函数返回t的函数f=f(t)。定义f(x)=1/(2*pi)*int(F(w)*exp(i*w*x),w,-inf,inf),对w的积分
f=ifourier(F,u)以u代替x的函数,且有ifourier(F,u)等价于f(x)=1/(2*pi)*int(F(w)*exp(i*w*u),w,-inf,inf),对w的积分
f=ifourier(F,v,u)以v代替w的Fourier逆变换,且有ifourier(F,v,u)<=>f(u)=1/(2*pi)*int(F(v)*exp(i*v*u),v,-inf,inf),积分针对v。