Delay block with vectors
조회 수: 8 (최근 30일)
이전 댓글 표시
hello all,
I get an error when I use the discrete "Delay" block with input data as a vector.
"In block 'test_delay/Delay', the size of IC is incompatible with the delay length. When IC is not scalar, the last dimension number of IC should equal to the delay length value. However, in this block, the last dimension number of IC is 3, but the delay length value is 100.
Component:Simulink | Category:Model error
Error in port widths or dimensions. Output port 1 of 'test_delay/Mux' is a one dimensional vector with 3 elements."
I understand that the delay block support the use of scalars and vectors. Apparently the problem is related to the initial condition but I don't really understand why. Can anyone help ? Attached is my test model.
Thanks & regards
Laurent
댓글 수: 1
Ibrahim Guenoune
2019년 3월 12일
Hello Laurent Dalbies,
I'm writing you for asking if you have resolve this problem, if is the case, could you inform how you were doing ?
Thanks
답변 (1개)
Mauro Fusco
2019년 3월 12일
편집: Mauro Fusco
2019년 3월 12일
Hi,
see the picture below for a solution. The initial condition has to be set consistently with the number of samples of the delay. As you are specifying 5 samples, also the IC has to be consistent with that. Assuming that you want to keep the initial value
for the first 5 samples, I have used vector concatenate to build the matrix of IC. You can change this, by specifying different vectors to concatenate. Also, note that you need to change a parameter in the initial condition block, which was set to 100. "When IC is not scalar, the last dimension number of IC should equal to the delay length value" means that you have to set this parameter to 5.
Attached you also find running simulation file.
댓글 수: 1
Ibrahim Guenoune
2019년 3월 13일
Bingo !!! your proposition Mauro Fusco works perfectely, many thanks.
Just a detail, for the outport, in dimension runbric it should be -1 for inheriting the signal dimensions.
Regards
참고 항목
카테고리
Help Center 및 File Exchange에서 Sources에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!