Finding zero poles in eigenvalues

조회 수: 6 (최근 30일)
Tobias Engelhardt
Tobias Engelhardt 2017년 2월 3일
댓글: Tobias Engelhardt 2017년 2월 3일
Hello Matlab Community, I have problems finding the zero pole of my eigenvalues of a matrix. I have a given 4x4 matrix A:
A=[0 1 0 0;
-35.7 -d/841.5 35.7 d/841.5;
0 0 0 1;
1200 d/25 -9200 (-100-d)/25];
lambda=eig(A);
I can imagine the code to be something like: find(min(real(lambda(1)-lambda(2)))&&min(imag(lambda(1)-lambda(2))));
I can change the value of d within a given range of 800 till 12000;
As you can see in the picture, the steps at the results get even bigger, so a loop didn't really do the trick for me, as I would need to adapt the stepsize of d when I get closer to my desired result.
Could it be possible to solve this problem with fminsearch(@d eig(A))? I have no idea how to get the matrix into my fminsearch function.
Would be nice if no optimization toolbox is needed.
Thank you for your help.

답변 (1개)

Star Strider
Star Strider 2017년 2월 3일
If I remember correctly, the eigenvalues of the ‘A’ matrix of a control system are the poles. To find the zeros of your system, you first need to convert it to a transfer function.
  댓글 수: 1
Tobias Engelhardt
Tobias Engelhardt 2017년 2월 3일
That is correct sir, but I am looking for a different use:
If I find the value of d to the given poles above, I know that my system will be critically damped (D=1), which is what I am trying to accomplish here. The matrix A represents my system matrix.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by