Why do I receive "Error in port widths or dimensions"?
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have a system as shown in the picture. y is a scalar defined in the function(also shown in picture).
However I have received such errors. Why is this happening?
Error in port widths or dimensions. Invalid dimension has been specified for 'input port 2' of 'slxlx/Add'.
Error in port widths or dimensions. 'output port 1' of 'slxlx/Transfer Fcn' is a one dimensional vector with 1 elements.
2 comentarios
Infinite_king
el 5 de Ag. de 2024
Hi 禹辰,
It looks like the dimensions of some signals are not as expected by the solver. Check the dimensions of various signals in your model and verify that they match your expectations. Focus specifically on the 'Add' block input and the 'Transfer Fcn' output, as the errors suggest issues with these blocks.
For more detailed information on how to view signal dimensions, refer to this MATLAB resource :- Signal Dimensions Display
Respuestas (1)
Fangjun Jiang
el 9 de Ag. de 2024
Editada: Fangjun Jiang
el 9 de Ag. de 2024
Simulink uses forward propagation and back propagation to determine the size of the signal. There is a conflict in this propagation in your model.
The root cause seems to be from the square "Add" block on the left. It seems to be that there is enough info to determine the size of the output of this "Add" block is 4. The size of the first input of this "Add" block is 1. The only chance that this could work is that the second input of this "Add" block is 4. But it is not. It is determined to be size 1.
Check the downstream signal of that square "Add" block. See if there is anywhere that specify that signal to be size 4. It probably should be size 1. Correct that then your model should be working properly.
0 comentarios
Ver también
Categorías
Más información sobre Sources en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!