matlab 中复数如何表示?我i前面已经有*就是表示不出来?不知到为什么

例如:a=1+2*i

你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):求复数的共轭复数。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-16

你i是不是已经被定义为变量了,正常i就是复数单位,可以这样表示的


追问

>> a=1+2*i
??? Attempt to execute SCRIPT i as a function.
我的咋是这个样子?

追答

你i是不是已经被定义为变量或函数了,如果是函数把它删掉,如果是变量,把它clear掉

追问

>> clear
>> a=1+2*i
??? Attempt to execute SCRIPT i as a function.
没有定义,就是做不出来

追答

Attempt to execute SCRIPT *** as a function
在运行MATLAB程序的时候,出现如题的报错。
原因:
在系统中,现有的.m文件有的与***函数重名,所以matlab编译器不知道在遇到***的时候到底该执行哪一个函数。
例如:我编写了一个.m文件,命名为:fft2.m.用于实现通过频域分析提取图像的纹理特征。
当命令执行到X=fft2(ImageM)这句话的时候,不知道fft2是指系统函数还是自定义的纹理特征提取函数。
解决:
把自定义的函数名改成其他名字。如上例中的fft2改为ffttexture.m。

本回答被提问者采纳
相似回答