Nyquist_example.svg


Summary

Description The Nyquist Plot for a sample function that can be converted to frequency by replacing with (imaginary frequency) and . Created using Python and matplotlib.
Date
Source Own work
Author Utkarsh Upadhyay,-- Krishnavedala ( talk ) 20:21, 3 June 2011 (UTC) (python version)
Permission
( Reusing this file )
Public Domain
W3C-validity not checked.
Source Code
from numpy import *
from matplotlib.pyplot import *

def nyquist(w):		# compute the complex Nyquist response
	s = complex(0,w)
	return (1/(s**2+s+1))
	
fig = figure(figsize=(5,5))
ax = fig.add_subplot(111)
ax.grid(True)

t, N = linspace(0,5*pi,200), [] # 5*pi is approx. to infinity. 
for i in t:			# compute the complex response for +ve omega
	N = append(N,nyquist(i))
ax.plot(real(N),imag(N),label=r"$0\leq\omega\leq\infty$")
t, N = linspace(-5*pi,0,200), []
for i in t:			# compute the complex response for -ve omega
	N = append(N,nyquist(i))
ax.plot(real(N),imag(N),label=r"$-\infty\leq\omega\leq 0$")
ax.legend(frameon=False)
setp(ax.get_legend().get_texts(),fontsize='small')
ax.set_xlabel(r"$\mathrm{Re}\left[G\left(\omega\right)\right]$")
ax.set_ylabel(r"$\mathrm{Im}\left[G\left(\omega\right)\right]$")
ax.text(0.6,-1.25,r"$G(s)=\frac{1}{s^2+s+1}$",\
	fontsize=15)

#fig.show()
fig.savefig("Nyquist example.svg",bbox_inches="tight",\
	pad_inches=.15)

Licensing

Public domain I, the copyright holder of this work, release this work into the public domain . This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose , without any conditions, unless such conditions are required by law.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

27 March 2006