inner matrix must agree using *

1 回表示 (過去 30 日間)
Nicholas  Jacobs
Nicholas Jacobs 2015 年 10 月 23 日
コメント済み: Star Strider 2015 年 10 月 23 日
when attempting to execute this code I get the following error, can anyone tell me why and how to resolve it, thanks
A= poly(1j*wc*exp((1j*pi)/((2*k)*(2*k-1))))
Error using * Inner matrix dimensions must agree.
Error in Lab_03 (line 29) A= poly(1j.*wc.*exp((1j.*pi)./((2.*k)*(2.*k-1))))

採用された回答

Star Strider
Star Strider 2015 年 10 月 23 日
The poly function wants a vector of roots from which to create a polynomial. I have no idea what the sizes of your arguments (variables) are, so assuming they are all otherwise compatible, (have the same numbers of elements), vectorising the assignment seems the logical direction to go (assuming also that 1j indicates the imaginary operator):
A = poly(1j*wc.*exp((1j*pi)./((2*k).*(2*k-1))))
If that doesn’t work, please provide more information, particularly the sizes of ‘wc’ and ‘k’.
  2 件のコメント
Nicholas  Jacobs
Nicholas Jacobs 2015 年 10 月 23 日
right on brother, what you said did the trick. Thanks. Why do I need not use the dot operator at the other locations like I had before or like the guy above me wrote? Thanks again
Star Strider
Star Strider 2015 年 10 月 23 日
My pleasure.
The dot operator specifies element-wise operations as opposed to conventional matrix operations. MATLAB defaults to matrix operations, so you have to specify element-wise operations. See the documentation for Array vs. Matrix Operations for a full description. (A useful function in dealing with arrays is bsxfun. I don’t know if you need it here, but it’s good to know about.)

サインインしてコメントする。

その他の回答 (1 件)

Eng. Fredius Magige
Eng. Fredius Magige 2015 年 10 月 23 日
Hi, it might be
A= poly(1j.*wc.*exp((1j.*pi)./((2.*k)*(2.*k-1))))
  1 件のコメント
Nicholas  Jacobs
Nicholas Jacobs 2015 年 10 月 23 日
thanks for the input brother.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by