Weird Port width mismatch error.
5 次查看(过去 30 天)
显示 更早的评论
I got the sollowing error:
Port width mismatch. Input 'signal' expects a signal of size [1.3608e+06x1]. The signal received is of size [1360800x1].
However, 1.3608e+06 is exactly 1360800. How to dispose the error message?
1 个评论
Paul
2023-7-23
Hi Lorant,
Assuming this is Simulink, can you post a screen shot of the relevant portion of the model that's causing the error and the full text of the error message that comes up in the diagnostics window? Overlay the signal dimensions on the diagram from Debug -> Information Overlays.
Also, I wonder if there is a maximum allowable dimension for a signal. I coudn't find that info in the documentation.
回答(1 个)
Walter Roberson
2023-7-21
A = 1.3608e+06
B = A+1
fprintf('A = %.4e\n', A)
fprintf('B = %.4e\n', B)
A == B
The two values both display as 1.3608e+06 but the values are not the same.
2 个评论
Walter Roberson
2023-7-23
Does this happen to be for a MATLAB Function Block, or is the signal output of a MATLAB Function Block? And if so then is the size of the array being calculated in terms of an expression that involves either division or non-integer values ? For example 13608000*0.1 is not guaranteed to be exactly the integer 1360800
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 String 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!