- in a comment
- in a single-quoted string
- in a double-quoted string (R2017a and later)
- proceeded by a numeric digit, such as 35.
- followed by a numeric digit, such as .35
- followed immediately by * or ^ or / such as 3.*5 or 3.^5 or 3./5
- between two variable names, or two parts of a package name, indicating structure access or property access or method invocation, such as MyStruct.field7 or matlab.lang.makevalidname
- after a variable name but before a ( indicating dynamic field access, such as MyStruct.(fn{3})
Parse error at ')'when plotting surface plot
3 views (last 30 days)
Show older comments
Eric Yeh
on 3 Mar 2019
Commented: Walter Roberson
on 4 Mar 2019
Hey, I'm trying to plot the surface plot z=(x^2-ycos(x))/sqrt(x^2+y^2)
Everytime I try to run the program though, it keeps coming up with the error: "parse error at ')': usage might be invalid Matlab syntax" after the cos(x.) in the equation. Any help would be much apreciated :)
x=-5:.1:5;y=x;[x,y]=meshgrid(x,y);
z = (x.^2-y.*cos(x.))/sqrt(x.^2+y.^2);
surfc(z)
xlabel('x axis')
ylabel('y axis')
0 Comments
Accepted Answer
Walter Roberson
on 3 Mar 2019
Edited: Walter Roberson
on 3 Mar 2019
In MATLAB, periods in source code must be in one of the following contexts:
In your expression cos(x.) this is not any of the cases.
MATLAB does not permit abbreviating floating point 0 as just plain . requiring instead 0 or 0. or .0 . And if it did accept plain . as 0, it would still be an error to have written cos(x 0) without an operator between the x and the zero.
2 Comments
More Answers (0)
See Also
Categories
Find more on Logical 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!