Extracting values from Nyquist Diagram in a personalized way

13 Ansichten (letzte 30 Tage)
Leo
Leo am 5 Jan. 2021
Kommentiert: Jon am 8 Jan. 2021
Hello,
I have extracted data from my nyquist plot with the following code:
linearSystemAnalyzer('nyquist',(zp+zt)); %zp+zt is my transfer function
lowerbound = 20*pi;
upperbound = 50000*pi;
increase_amount_of_Values = linspace(lowerbound,upperbound,5000);
[re,im] = nyquist(zp+zt, increase_amount_of_Values);
Re = squeeze(re);
Im = squeeze(im);
The following figure shows the Nyquist plot:
The problem is, that the only values I get are where the imaginary part of the Nyquist plot goes to infinity. So I extract 5000 times values which have a real part close to Re=6.5723 and the respectively associated imaginary part which goes to infinity.
This is how it looks for all 5000 values of the real part:
However I want to have values which cover the entire Nyquist plot. How can I prevent the "system" from only considering the values near Re=6.5723?
Has anybody an idea how to figure this out?
Thanks very much!
  4 Kommentare
Leo
Leo am 6 Jan. 2021
Sry I named the upper and lower bound incorrectly. But it doesn't change anything, because I also had it in the "wrong" way in "increase_amount_of_Values". I fixed the confusion
Jon
Jon am 8 Jan. 2021
I saw that too, but just thought I'd point it out to help clarify. It was a case of two wrongs making a right :)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jon
Jon am 5 Jan. 2021
Without seeing your whole code it is a little difficult to be sure what the problem is, but it is most likely that the range of frequencies that your are evaluating the nyquist frequencies is starting at too large a frequency value.
Note that the Nyquist plot that you show is not generated by your call
[re,im] = nyquist(zp+zt, increase_amount_of_Values)
as calling nyquist with left hand arguments will not produce a plot.
So you are probably looking at an overall plot with autoscaled frequency ranges from an earlier call to nyquist. This may be leading you to believe that the range of frequencies you are using are appropriate.
I would suggest first calling nyquist without left hand arguments but using what you think are a good range of frequency points. You will then see from your plot whether the range is appropriate.
Once you determine an appropriate range of frequencies you can call nyquist with left hand arguments to get the values you need

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by