matlab中,i作为保留字,如果没有被重新定义,就代表虚数单位
因此可以直接定义,如
a=1+i
就定义了一个复数a了
值得注意的是,如果i已经被另外定义了,就有歧义了,这时matlab会按照用户的定义来理解i,如上图。一开始直接赋值定义复数没有问题。后来由于i被定义成了符号变量,再a=1+i,a也成了一个符号变量。
你i是不是已经被定义为变量了,正常i就是复数单位,可以这样表示的
MATLAB复数处理的常用函数
一、创建复数1、赋值语句直接产生复数。
2、complex(a,b):该函数产生复数a+bi。
二、求实部
1、real(z):该函数求复数的实部。
三、求虚部
1、imag(z):求复数z的虚部。
四、求复数的值
1、abs(z):求复数z的值。
五、求复数的角度
1、angle(z):求复数z的角度。
六、求共轭复数
1、conj(z):求复数的共轭复数。
这是最简单的求复数模和相角的程序。
> x=1+1i
x =
10000 + 10000i
>> abs(x)
ans =
14142
>> angle(x)
ans =
07854
matlab作用:
是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。
使用 MATLAB,可以使用传统的编程语言(如 C、C 和 Fortran)更快地解决技术计算问题。
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。
复数从直角坐标系转换到极坐标系,这一块主要是根据公式来。
对于 z = a + bi 的形式
r = sqrt(a^2+b^2) 在matlab中可以用abs()函数求。
theta = arctan(b/a) 在matlab中可以用angle()函数求,得到弧度结果。
结果如下:
对于极坐标转化直角坐标,也是根据公式
a = rcos(theta)
b = rsin(theta)
程序如下:
1、打开MATLAB软件,输入一下指令,清空工作空间和窗口界面;clear,clc。
2、代数式复数生成:生成代码如下:a1=7+8i。
3、指数式复数生成:a2=5exp(6i)。
4、复数矩阵的生成:可以直接采用类似实矩阵的方法,a3=[2+2i4-4i5+6i,3-5i2-2i4-8i]。
5、由实矩阵生成复矩阵:先生成两个实矩阵,分别对应复矩阵的实部与虚部,b1=randn(4,4);b2=rand(4,4);formatshort,a4=b1+b2i。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)