state space model has error
이전 댓글 표시
my A B C D matrices are:
A =
[ 0, 0, 1.0, 0]
[ 0, 0, 0, 1.0]
[ 0, 0.15502416677813339370370805808099, -4.7863736679940324215607420213982, -0.0000033656243151182583405463328000383]
[ 0, -26.094361926054232600130044495449, -11.022752876224010373586983854075, 0.0000077508459792499219645213236865318]
B =
0
0
0.88636549407296896004815441721882
-2.0412505326340757878851343018816
C =
[ 1.0, 0, 0, 0]
[ 1.0, 0, 1.0, 0]
D =
0
0
when i do sys = ss(A,B,C,D)
Error using ss (line 260) The value of the "a" property must be a numeric array without any Inf's or NaN's.
Error in delete6 (line 50) sys = (ss(A,B,C,D))
this error is seen
how to solve this?
답변 (3개)
Elias Hasle
2018년 10월 11일
6 개 추천
I don't know if this is relevant to your (five year old) case, but in case someone else encounters this error message: I got it after inputting data from a symbolic calculation, although the arrays did not look symbolical. Casting the arguments to double removed the error.
댓글 수: 3
Claudiu Negrau
2019년 1월 17일
Thank you very much for this answer. Casting to double worked. Interesting since matlab says the data optained with the eval function is of type double, I don't know why it needed to be casted.
Victory Friday
2021년 9월 28일
Please how do you cast to double?
Neel Dalwadi
2021년 9월 29일
You can use the function double() for Matlab.
Osman AKYUREK
2019년 11월 12일
1 개 추천
Hi,
I have the same error massage. I think this is because of the fact that some zeros in the matrix A. Therefore, the response of the model cannot be obtained through state-space modelling. You need to check out the matrix A. For example in my case:

if there is zero component in the matrix Mst, the same error pops up, because it is going to be infinitive value in the matrix A. I hope this helps you. Check your matrix A.
Best,
Osman
Azzi Abdelmalek
2013년 11월 27일
Your arrays are not correctly written
A =[ 0, 0, 1.0, 0
0, 0, 0, 1.0
0, 0.15502416677813339370370805808099, -4.7863736679940324215607420213982, -0.0000033656243151182583405463328000383
0, -26.094361926054232600130044495449, -11.022752876224010373586983854075, 0.0000077508459792499219645213236865318]
B =[0;0;0.88636549407296896004815441721882; -2.0412505326340757878851343018816]
C =[ 1.0, 0, 0, 0; 1.0, 0, 1.0, 0]
D =[ 0; 0]
sys = ss(A,B,C,D)
카테고리
도움말 센터 및 File Exchange에서 Dynamic System Models에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!