Error using sin in my code

8 views (last 30 days)
Lan
Lan on 19 Sep 2023
Commented: Lan on 19 Sep 2023
I keep getting error using sin and Not enough input arguments. I'm not sure what I did wrong here
x = z + (1/s).*sin.*(s*r0*t);

Accepted Answer

Dyuman Joshi
Dyuman Joshi on 19 Sep 2023
sin is not a variable that you are multiplying with s*r0*t, it is a function which needs input arguements to provide an output.
So, remove the element-wise multiplication sign in between sin and the parenthesis, and it should work (Assuming variables have compatible sizes for the operations performed)
%Corrected
x = z + (1/s).*sin(s*r0*t);
  1 Comment
Lan
Lan on 19 Sep 2023
Thank you both so much. It worked!

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 19 Sep 2023
The .* operator is element-by-element multiplication. Your code is asking to evaluate the token sin and multiply the result by (s*r0*t) . But sin as a token is a request to evaluate the sin function with no parameters, which is a problem because sin() needs to be passed one parameter.
If you want to take the sine of something, you need sin(EXPRESSION) such as sin(s*r0*t)

Categories

Find more on Entering Commands 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!