用matlab实现误差标绘函数

用matlab实现误差标绘函数,matlab,Matlab,我试图绘制一个函数,但我收到了一个错误,因为我是一个新手,我不知道如何修复它 f=-10:0.001:10; >> w=1/sqrt(4+(2*pi*f)^2); ??? Error using ==> mpower Inputs must be a scalar and a square matrix. To compute elementwise POWER, use POWER (.^) instead. 错误在哪里?错误就在错误信息显示您有错误的地方。既然你

我试图绘制一个函数,但我收到了一个错误,因为我是一个新手,我不知道如何修复它

 f=-10:0.001:10;
 >> w=1/sqrt(4+(2*pi*f)^2);
 ??? Error using ==> mpower
 Inputs must be a scalar and a square matrix.
 To compute elementwise POWER, use POWER (.^) instead.

错误在哪里?

错误就在错误信息显示您有错误的地方。既然你是Matlab的新手,而我是一个恶毒的人,我想这将有助于你的学习,让你自己弄明白这一点。仔细阅读错误消息的最后一行。

^
矩阵幂运算符,
mpower
。语法
A^n
尝试将(方形)矩阵
A
提升到
n
次方。如果
A
不是一个方阵(在您的示例中,它是一个向量),那么这显然会失败

由于您的用户名包括
eng
,并且您正在发布关于MATLAB的帖子,我假设您是一名工科学生-您的数学入门课程应该涵盖矩阵数学,为什么
A*A
仅定义为square
A


实际上,您需要标量运算符
^
,如
A.^n
。这会将
A
的每个元素提升到
n
次方。

也就是
w
你可能指的是角频率
omega
。仅仅因为
\omega
看起来像
w
并不意味着你应该这样命名它我按照你的建议试过了,但我收到了这个错误:矩阵维数必须一致。同样的错误。例如,考虑代码< F= -10:1:10;g=1/f。请阅读文档,因为第一个是免费的,但第二个可以自己解决。;)通常,除非你真的想做矩阵运算,否则一定要使用虚线形式的数学运算符。