フィルターのクリア

Why do I get Inf for this complex expression?

1 回表示 (過去 30 日間)
Daniel Montgomery
Daniel Montgomery 2020 年 6 月 2 日
回答済み: Ayden Clay 2020 年 6 月 2 日
I have a function that generates a complex number but I get Inf for x. how could this be, if I do not make a logical error
for f=1:100
%a and b are struct passed by value, e.g. sturct(1).field
[R1,R2] = Prop(a(f),b(f),f,constant(f))
{e1=cell2mat(a)+cell2mat(b);
e2=cell2mat(a)-cell2mat(b);
w=(1-e1.*e2)./(e1-e2);}
end
  2 件のコメント
Daniel Montgomery
Daniel Montgomery 2020 年 6 月 2 日
e.g. sturct(1).field=1+j
e.g. sturct(1).field2=2+j3.5
David Goodmanson
David Goodmanson 2020 年 6 月 2 日
Hi Daniel,
if you mean that you get inf for w, then on the basis of the information given the most obvious possibliity is that for at least one value of f the value of cell2mat(b) is zero.

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

回答 (1 件)

Ayden Clay
Ayden Clay 2020 年 6 月 2 日
Hi Daniel,
So in MATLAB there are only a few ways to get an output of "inf". The most common in equations is that we are dividing by zero.
In this case since w = (1-e1*e2)/(e1-e2), it must be the case that for some f, e1 = e2. This can only be the case if a+b = a-b which is only possible if b = -b, which is only possible if b = 0.

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by