plot log-magnitude vs phase
System; DynamicSystems object to plot
(optional) equation(s) of the form option = value; specify options for the NicholsPlot command
contourlines = truefalse
If true, plot the constant-gain and constant-phase contours of the closed-loop response of a unity-feedback system. The default is true.
frequencies = list or Vector of nonnegative values
Specifies frequencies to mark with a symbol and add to the legend. The list or Vector must be sorted, from smallest to largest. The units are determined by the hertz option.
gainrange = range(realcons)
Extent over which the gain is plotted. The default is computed from the response.
hertz = truefalse
Specifies the unit of frequency. If this value is set to true, the unit of frequency is Hertz; otherwise, it is radians per second. The default value is assigned by DynamicSystems[SystemOptions].
legend = list or element
Specifies the legend for the plot. A list specifies a legend entry for each subsystem. The elements in the list correspond to the Matrix of subsystems taken in Fortran order. An element can be used for a one-by-one Matrix of subsystems. The default is no legend.
numpoints = posint
Specifies the number of points to plot. The default is 200.
parameters = set(name = complexcons) or list(name = complexcons)
Specifies numeric values for parameters in sys. These values override those specified by the parameters field of the system object, which in turn override the settings in in SystemOptions(parameters). The numeric value on the right-hand side of each equation is substituted for the name on the left-hand side in the expressions that define the model. No checking is done during the substitution to determine whether the substituted value is valid. For example, a complex value can be substituted for the coefficient of a polynomial. If the complex value had been originally assigned to the model at creation, a warning would be generated.
phaserange = range(realcons)
Extent over which the phase is plotted. The default is computed from the response.
range = range( realcons )
Specifies the frequency range to plot. The default setting is to compute an appropriate range based on the locations of the zeros and poles of the transfer functions of the selected subsystems. Similarly, if the right-hand side of range is infinity, a maximum is computed based on the zeros and poles. The units are specified by the hertz option.
subsystem = [ posint, posint ] or list of same
Selects subsystems of a multi-input/multi-output system. Each selected subsystem is specified as a list of two indices: the first specifies the output and the second specifies the input. For example, 1,2 specifies the subsystem from the second input to the first output. A list of lists selects multiple subsystems. The default setting is to select all subsystems, using Fortran ordering. That is, for an m x n system, the default list of subsystems is [ [1,1], ..., [m,1], ..., [1,n], ..., [m,n] ].
The NicholsPlot command plots the log-magnitude versus phase of the transfer-function of subsystems of sys, a DynamicSystems object.
If sys is a continuous system, its s-domain transfer function is computed and then converted to the real frequency domain using the transformation s -> I*omega, where omega is the angular frequency.
If sys is a discrete system, its z-domain transfer function is computed and then converted to the real frequency domain using the transformation z -> exp(I*omega*Ts), where omega is the angular frequency and Ts is the sample time.
The NicholsPlot command takes all standard plot,options.
tf := (2.94*10^7*s^4+2.74*10^8*s^3+5.93*10^9*s^2+2.12*10^10*s+1.56*10^10)/(40.*s^6+41926.85*s^5+2.00*10^6*s^4+7.41*10^7*s^3+7.08*10^7*s^2+2.00*10^9*s):
sys := TransferFunction(tf):
Add the contourlines of the closed-loop response (with unity feedback), and label selected frequencies.
NicholsPlot(sys, hertz, contourlines, frequencies = [1, 2, 5, 10, 20, 50, 100, 200, 500, 1000]);
NicholsPlot(sys,frequencies = [1, 2, 5, 10, 20, 50, 100, 200, 500, 1000, 10000], phaserange=-240..90, numpoints=200);
The DynamicSystems[NicholsPlot] command was introduced in Maple 16.
For more information on Maple 16 changes, see Updates in Maple 16.
Download Help Document
What kind of issue would you like to report? (Optional)