Expected a scalar value. This expression has size [:? x 1].
38 views (last 30 days)
Show older comments
% Sample Code
max_index = find(sample.data1 == values,1,'first');
% max_index is always above 100 based on the nature of the data
X = sample.data1(max_index - 100: max_index + 100);
Y = sample.data2(max_index - 100: max_index + 100);
I was trying to generate code based on MATLAB coder, however I am stuck with the error: 'Expected a scalar value. This expression has size [:? x 1].'
I understand that max_index could be empty or (max_index - 100) could be empty, hence this error. How to properly declare those variables to avoid this error?
Max_index is scalar value and cannot be below 100 based on the nature of used data (also used If loops to avoid such condition).
0 Comments
Accepted Answer
KSSV
on 1 Feb 2023
Try this:
% Sample Code
tol = 10^-3 ; % can be changed
idx = find(abs(sample.data1-values)<tol) ;
max_index = idx(1) ;
4 Comments
More Answers (0)
See Also
Categories
Find more on Boundary Conditions 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!