Code wont work keeps giving error message: Argument to dynamic structure reference must evaluate to a valid field name.

this is my code:
t=0:0.001:10; wn= 0.898; a= 0.843; z= 0.005122; wd=0.897;
y= a*(exp.(-z*wn*t))*(sin(wd*t)) and I keep getting the same error message can someone help please thanks

回答 (2 件)

Jan
Jan 2017 年 9 月 30 日
編集済み: Jan 2017 年 9 月 30 日
In "exp.(-z*wn*t)" the term "exp" is treated as a struct and "(-z*wn*t)" as a field name. "S.(name)" is a reference by a dynamic field name, when S is a struct and name a string.
Most likely you want:
y = a * exp(-z * wn * t) * sin(wd * t);
Put the ‘dot operator’ here instead:
y = a*(exp(-z*wn*t)) .* (sin(wd*t))
That will do the element-wise multiplication you intend.

カテゴリ

ヘルプ センター および File ExchangeStructures についてさらに検索

質問済み:

2017 年 9 月 30 日

回答済み:

2017 年 9 月 30 日

Community Treasure Hunt

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

Start Hunting!

Translated by