What is wrong with this expression, why is MATLAB not being able to understand it?
조회 수: 1 (최근 30일)
이전 댓글 표시
(50*y).*(28.065*cos(60*t+0.2094395101999999*x)+22.7058*cos(2*(60*t+0.2094395101999999*x))+15.1368*cos(3*(60*t+0.2094395101999999*x))+7.014*cos(4*(60*t+0.2094395101999999*x));
The error given is 'unexpected paranthesis'.
댓글 수: 0
채택된 답변
Walter Roberson
2012년 6월 21일
You have one more '(' than you have ')'
Count brackets. Each time you encounter a '(' add 1, each time you encounter a ')' subtract 1. If you do not end up with 0 then you have a mismatch.
You will find that the '(' in front of '28.065' is not matched.
댓글 수: 2
Sargondjani
2012년 6월 21일
tip: if you go with your cursor over a bracket, you will see which bracket it is 'connected' with
Jan
2012년 6월 21일
@Yagnaseni Roy: The error message "unexpected parenthesis" clearly hits the point. Walter's re-phrasing is more detailed.
@Walter: It is not trivial to decide, which of the parentheses is the unmatched one. It could be "(28.065*cos(60*t)+ 0.2094395101999999*x)" also. I'm convinced that you have used a smart pattern matching method trained by years of experiences with structured formulas. Nice, +1.
추가 답변 (1개)
Dr. Siva Malla
2012년 6월 21일
this is correct:
(50*y)*(28.065*cos(60*t+0.2094395101999999*x))+22.7058*cos(2*(60*t+0.2094395101999999*x))+15.1368*cos(3*(60*t+0.2094395101999999*x))+7.014*cos(4*(60*t+0.2094395101999999*x));
댓글 수: 1
Jan
2012년 6월 21일
I agree that it is likely, that there is no COS inside the argument of a COS, but I would not dare to call this correct without asking the OP before.
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!