Code wont work keeps giving error message: Argument to dynamic structure reference must evaluate to a valid field name.
Show older comments
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
Answers (2)
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);
Star Strider
on 30 Sep 2017
Put the ‘dot operator’ here instead:
y = a*(exp(-z*wn*t)) .* (sin(wd*t))
↑
That will do the element-wise multiplication you intend.
Categories
Find more on Structures in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!