Mercurial > hg > octave-lyh
diff scripts/control/base/nichols.m @ 5016:bdbee5282954
[project @ 2004-09-22 02:50:35 by jwe]
author | jwe |
---|---|
date | Wed, 22 Sep 2004 02:50:36 +0000 |
parents | 92be67bc9301 |
children | 32c569794216 |
line wrap: on
line diff
--- a/scripts/control/base/nichols.m +++ b/scripts/control/base/nichols.m @@ -20,35 +20,65 @@ ## @deftypefn {Function File} {[@var{mag}, @var{phase}, @var{w}] =} nichols (@var{sys}, @var{w}, @var{outputs}, @var{inputs}) ## Produce Nichols plot of a system. ## -## inputs: -## sys: system data structure (must be either purely continuous or discrete; -## see is_digital) -## w: frequency values for evaluation. -## if sys is continuous, then nichols evaluates G(jw) -## if sys is discrete, then nichols evaluates G(exp(jwT)), where T=sys.tsam -## (the system sampling time) -## default: the default frequency range is selected as follows: (These -## steps are NOT performed if w is specified) -## (1) via routine __bodquist__, isolate all poles and zeros away from -## w=0 (jw=0 or exp(jwT)=1) and select the frequency -## range based on the breakpoint locations of the frequencies. -## (2) if sys is discrete time, the frequency range is limited -## to jwT in [0,2p*pi] -## (3) A "smoothing" routine is used to ensure that the plot phase does -## not change excessively from point to point and that singular -## points (e.g., crossovers from +/- 180) are accurately shown. -## outputs, inputs: the names or indices of the output(s) and input(s) -## to be used in the frequency response; see sysprune. -## outputs: -## mag, phase: the magnitude and phase of the frequency response -## G(jw) or G(exp(jwT)) at the selected frequency values. -## w: the vector of frequency values used -## If no output arguments are given, nichols plots the results to the screen. -## Descriptive labels are automatically placed. See xlabel, ylable, title, -## and replot. +## @strong{Inputs} +## @table @var +## @item sys +## System data structure (must be either purely continuous or discrete; +## see @command{is_digital}). +## @item w +## Frequency values for evaluation. +## @itemize +## @item if sys is continuous, then nichols evaluates @math{G(jw)}. +## @item if sys is discrete, then nichols evaluates @math{G(exp(jwT))}, +## where @var{T}=@var{sys}. @var{tsam} is the system sampling time. +## @item the default frequency range is selected as follows (These +## steps are @strong{not} performed if @var{w} is specified): +## @enumerate +## @item via routine @command{__bodquist__}, isolate all poles and zeros away from +## @var{w}=0 (@math{jw=0} or @math{exp(jwT)=1}) and select the frequency range +## based on the breakpoint locations of the frequencies. +## @item if sys is discrete time, the frequency range is limited to jwT in +## @iftex +## @tex +## $ [0, 2p\pi] $. +## @end tex +## @end iftex +## @ifinfo +## [0,2p*pi]. +## @end ifinfo +## @item A ``smoothing'' routine is used to ensure that the plot phase does +## not change excessively from point to point and that singular points +## (e.g., crossovers from +/- 180) are accurately shown. +## @end enumerate +## @end itemize +## @item outputs +## @itemx inputs +## the names or indices of the output(s) and input(s) to be used in the +## frequency response; see @command{sysprune}. +## @end table +## @strong{Outputs} +## @table @var +## @item mag +## @itemx phase +## The magnitude and phase of the frequency response @math{G(jw)} or +## @math{G(exp(jwT))} at the selected frequency values. +## @item w +## The vector of frequency values used. +## @end table +## If no output arguments are given, @command{nichols} plots the results to the screen. +## Descriptive labels are automatically placed. See @command{xlabel}, +## @command{ylabel}, @command{title}, and @command{replot}. ## -## Note: if the requested plot is for an MIMO system, mag is set to -## ||G(jw)|| or ||G(exp(jwT))|| and phase information is not computed. +## Note: if the requested plot is for an @acronym{MIMO} system, @var{mag} is set to +## @iftex +## @tex +## $ \Vert G(jw) \Vert $ or $ \Vert G( {\rm exp}(jwT) \Vert $ +## @end tex +## @end iftex +## @ifinfo +## ||G(jw)|| or ||G(exp(jwT))|| +## @end ifinfo +## and phase information is not computed. ## @end deftypefn function [mag, phase, w] = nichols (sys, w, outputs, inputs)