用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
仅定义为squareA
实际上,您需要标量运算符
^
,如A.^n
。这会将A
的每个元素提升到n
次方。也就是w
你可能指的是角频率omega
。仅仅因为\omega
看起来像w
并不意味着你应该这样命名它我按照你的建议试过了,但我收到了这个错误:矩阵维数必须一致。同样的错误。例如,考虑代码< F= -10:1:10;g=1/f。请阅读文档,因为第一个是免费的,但第二个可以自己解决。;)通常,除非你真的想做矩阵运算,否则一定要使用虚线形式的数学运算符。