主要内容gydF4y2Ba

nicholsplotgydF4y2Ba

带有额外定制选项的尼科尔斯频率响应图gydF4y2Ba

    描述gydF4y2Ba

    nicholsplotgydF4y2Ba让您绘制动态系统模型的Nichols频率响应,具有更广泛的绘图自定义选项gydF4y2Ba尼克尔斯gydF4y2Ba。你可以使用gydF4y2BanicholsplotgydF4y2Ba获取绘图句柄并使用它来自定义绘图,例如修改轴标签、限制和单位。你也可以使用gydF4y2BanicholsplotgydF4y2Ba在由轴句柄表示的现有轴集上绘制尼克尔斯图。使用plot句柄定制一个现有的Nichols plot:gydF4y2Ba

    1. 获得图句柄gydF4y2Ba

    2. 使用gydF4y2BagetoptionsgydF4y2Ba获取选项集gydF4y2Ba

    3. 使用以下命令更新情节gydF4y2BasetoptiongydF4y2Ba修改所需的选项gydF4y2Ba

    有关更多信息,请参见gydF4y2Ba从命令行定制响应图gydF4y2Ba。若要使用默认选项创建Nichols图或提取Nichols频率响应数据,请使用gydF4y2Ba尼克尔斯gydF4y2Ba。gydF4y2Ba

    例子gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2BasysgydF4y2Ba)gydF4y2Ba的频率尼克尔斯响应gydF4y2Ba动态系统模型gydF4y2BasysgydF4y2Ba并返回绘图句柄gydF4y2BahgydF4y2Ba到情节。你可以使用这个句柄gydF4y2BahgydF4y2Ba方法自定义情节gydF4y2BagetoptionsgydF4y2Ba而且gydF4y2BasetoptiongydF4y2Ba命令。如果gydF4y2BasysgydF4y2Ba是多输入多输出(MIMO)模型,那么gydF4y2BanicholsplotgydF4y2Ba生成尼克尔斯图网格,每个图显示一个I/O对的频率响应。gydF4y2Ba

    例子gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2BasysgydF4y2Ba1,gydF4y2BasysgydF4y2Ba2……gydF4y2BasysgydF4y2BaN)gydF4y2Ba图中为多个动力系统的Nichols频率响应gydF4y2Basys1 sys2,…,sysNgydF4y2Ba在同一个地块上。所有系统必须有相同数量的输入和输出才能使用此语法。gydF4y2Ba

    例子gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2BasysgydF4y2Ba1,gydF4y2BaLineSpecgydF4y2Ba1、……gydF4y2BasysgydF4y2BaN,gydF4y2BaLineSpecgydF4y2BaN)gydF4y2Ba为每个系统的Nichols响应设置线样式、标记类型和颜色。所有系统必须有相同数量的输入和输出才能使用此语法。gydF4y2Ba

    例子gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2Ba___gydF4y2Ba,gydF4y2BawgydF4y2Ba)gydF4y2Ba中频率指定的频率的尼克尔斯响应gydF4y2BawgydF4y2Ba。gydF4y2Ba

    • 如果gydF4y2BawgydF4y2Ba单元格数组的形式是gydF4y2Ba{wmin, wmax}gydF4y2Ba,然后gydF4y2BanicholsplotgydF4y2Ba绘制频率范围为gydF4y2BawmingydF4y2Ba而且gydF4y2BawmaxgydF4y2Ba。gydF4y2Ba

    • 如果gydF4y2BawgydF4y2Ba是频率向量吗gydF4y2BanicholsplotgydF4y2Ba绘制每个特定频率下的响应。gydF4y2Ba

    你可以使用gydF4y2BawgydF4y2Ba使用以前语法中的任何输入-参数组合。gydF4y2Ba

    看到gydF4y2BalogspacegydF4y2Ba生成对数间隔的频率向量。gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2Ba斧头gydF4y2Ba,gydF4y2Ba___gydF4y2Ba)gydF4y2Ba尼科尔斯的反应gydF4y2Ba轴gydF4y2Ba对象的句柄gydF4y2Ba斧头gydF4y2Ba。gydF4y2Ba

    例子gydF4y2Ba

    hgydF4y2Ba= nicholsplot (gydF4y2Ba___gydF4y2Ba,gydF4y2BaplotoptionsgydF4y2Ba)gydF4y2Ba用中指定的选项集绘制Nichols频率响应gydF4y2BaplotoptionsgydF4y2Ba。您可以使用这些选项使用命令行自定义Nichols图外观。指定的设置gydF4y2BaplotoptionsgydF4y2Ba覆盖MATLAB中的首选项设置gydF4y2Ba®gydF4y2Ba运行的会话gydF4y2BanicholsplotgydF4y2Ba。因此,当您希望编写一个脚本来生成多个看起来相同的图而不考虑本地首选项时,此语法非常有用。gydF4y2Ba

    例子gydF4y2Ba

    全部折叠gydF4y2Ba

    对于本例,使用plot句柄更改标题、打开网格并设置轴限制。gydF4y2Ba

    生成具有5个状态的随机状态空间模型,并使用图句柄创建Nichols图gydF4y2BahgydF4y2Ba。gydF4y2Ba

    rng (gydF4y2Ba“默认”gydF4y2Ba) sys = rss(5);H = nicholsplot(sys);gydF4y2Ba

    图中包含一个轴对象。axis对象包含一个line类型的对象。该节点表示sys。gydF4y2Ba

    更改标题,启用网格,并设置轴限制。为此,编辑plot句柄的属性,gydF4y2BahgydF4y2Ba使用gydF4y2BasetoptiongydF4y2Ba。gydF4y2Ba

    标题。字符串=gydF4y2Ba“Nichols频率响应”gydF4y2Ba;setoption (h,gydF4y2Ba“标题”gydF4y2Ba、标题、gydF4y2Ba“网格”gydF4y2Ba,gydF4y2Ba“上”gydF4y2Ba,gydF4y2Ba“XLim”gydF4y2Ba{(2、4)},gydF4y2Ba“YLim”gydF4y2Ba, {[3.3, 4.3]});gydF4y2Ba

    图中包含一个轴对象。axis对象包含一个line类型的对象。该节点表示sys。gydF4y2Ba

    你打电话时,尼科尔斯的地图会自动更新gydF4y2BasetoptiongydF4y2Ba。gydF4y2Ba

    或者,也可以使用gydF4y2BanicholsoptionsgydF4y2Ba命令指定所需的绘图选项。首先,根据工具箱首选项创建一个选项集。gydF4y2Ba

    Plotoptions = nicholsoptions(gydF4y2Ba“cstprefs”gydF4y2Ba);gydF4y2Ba

    更改选项集的所需属性。gydF4y2Ba

    plotoptions.Title.String =gydF4y2Ba“Nichols频率响应”gydF4y2Ba;plotoptions。网格=gydF4y2Ba“上”gydF4y2Ba;plotoptions。XLim={[-2,4]}; plotoptions.YLim = {[3.3,4.3]}; nicholsplot(sys,plotoptions);

    图中包含一个轴对象。axis对象包含一个line类型的对象。该节点表示sys。gydF4y2Ba

    您可以使用相同的选项集创建多个具有相同自定义的Nichols图。根据您自己的工具箱首选项,您获得的图形可能与此图形不同。在本例中,只有显式设置的属性gydF4y2Ba标题gydF4y2Ba,gydF4y2Ba网格gydF4y2Ba,gydF4y2BaXLimgydF4y2Ba而且gydF4y2BaYLimgydF4y2Ba,覆盖工具箱首选项。gydF4y2Ba

    对于本例,创建一个Nichols图,标题使用15点红色文本。不管生成该图的MATLAB会话的首选项如何,该图看起来应该是相同的。gydF4y2Ba

    首先,使用创建一个默认选项集gydF4y2BanicholsoptionsgydF4y2Ba。gydF4y2Ba

    Plotoptions = nicholsoptions;gydF4y2Ba

    接下来,更改选项集的必需属性gydF4y2BaplotoptionsgydF4y2Ba。gydF4y2Ba

    plotoptions.Title.FontSize = 15;plotoptions.Title.Color = [1 0 0];plotoptions。FreqUnits =gydF4y2Ba“赫兹”gydF4y2Ba;plotoptions。网格=gydF4y2Ba“上”gydF4y2Ba;gydF4y2Ba

    现在,使用选项集创建Nichols图gydF4y2BaplotoptionsgydF4y2Ba。gydF4y2Ba

    nicholsplot (tf ([1]), {0, 15}, plotoptions);gydF4y2Ba

    图中包含一个轴对象。axis对象包含一个line类型的对象。该对象表示untitled1。gydF4y2Ba

    因为gydF4y2BaplotoptionsgydF4y2Ba从一组固定的选项开始,绘图结果独立于MATLAB会话的工具箱首选项。gydF4y2Ba

    对于本例,创建以下连续时间SISO动态系统的尼克尔斯图。然后,打开网格并重命名该图形。gydF4y2Ba

    年代gydF4y2Ba ygydF4y2Ba 年代gydF4y2Ba (gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba =gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba 0gydF4y2Ba 。gydF4y2Ba 1gydF4y2Ba 年代gydF4y2Ba +gydF4y2Ba 7gydF4y2Ba 。gydF4y2Ba 5gydF4y2Ba 年代gydF4y2Ba 4gydF4y2Ba +gydF4y2Ba 0gydF4y2Ba 。gydF4y2Ba 1gydF4y2Ba 2gydF4y2Ba 年代gydF4y2Ba 3.gydF4y2Ba +gydF4y2Ba 9gydF4y2Ba 年代gydF4y2Ba 2gydF4y2Ba 。gydF4y2Ba 连续时间SISO动态系统gydF4y2Ba

    创建传递函数gydF4y2BasysgydF4y2Ba。gydF4y2Ba

    Sys = tf([1 0.1 7.5],[1 0.12 9 0 0]);gydF4y2Ba

    接下来,使用创建选项集gydF4y2BanicholsoptionsgydF4y2Ba并更改所需的绘图属性。gydF4y2Ba

    Plotoptions = nicholsoptions;plotoptions。网格=gydF4y2Ba“上”gydF4y2Ba;plotoptions.Title.String =gydF4y2Ba传递函数的Nichols图gydF4y2Ba;gydF4y2Ba

    现在,使用自定义选项集创建Nichols图gydF4y2BaplotoptionsgydF4y2Ba。gydF4y2Ba

    nicholsplot (sys plotoptions)gydF4y2Ba

    图中包含一个轴对象。axis对象包含一个line类型的对象。该节点表示sys。gydF4y2Ba

    nicholsplotgydF4y2Ba根据系统动态自动选择绘图范围。gydF4y2Ba

    对于本例,考虑一个具有3个输入、3个输出和3个状态的MIMO状态空间模型。创建一个频率单位为Hz的尼克尔斯图,并打开网格。gydF4y2Ba

    创建MIMO状态空间模型gydF4y2Basys_mimogydF4y2Ba。gydF4y2Ba

    J = [8 -3 -3;3 - 8 -3;3 -3 - 8];F = 0.2*眼(3);A = -j \ f;B = inv(J);C =眼睛(3);D = 0;sys_mimo = ss(A,B,C,D);大小(sys_mimo)gydF4y2Ba
    具有3个输出、3个输入和3个状态的状态空间模型。gydF4y2Ba

    用情节句柄创建Nichols情节gydF4y2BahgydF4y2Ba和使用gydF4y2BagetoptionsgydF4y2Ba获取可用选项的列表。gydF4y2Ba

    H = nicholsplot(sys_mimo);gydF4y2Ba

    图中包含9个轴对象。在(1)中包含一个line类型的对象。该对象表示sys\_mimo。坐标轴对象2包含一个line类型的对象。该对象表示sys\_mimo。Axes对象3包含一个line类型的对象。该对象表示sys\_mimo。轴对象4标题From: In(2)包含一个line类型的对象。该对象表示sys\_mimo。Axes对象5包含一个line类型的对象。 This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

    P = getoptions(h)gydF4y2Ba
    p = FreqUnits: 'rad/s' MagLowerLimMode: 'auto' MagLowerLim: 0 PhaseUnits: 'deg' phasewrapper: 'off' PhaseMatchingFreq: 0 PhaseMatchingValue: 0 PhaseWrappingBranch: -180 IOGrouping: 'none' InputLabels: [1x1 struct] OutputLabels: [1x1 struct] InputVisible: {3x1 cell} OutputVisible: {3x1 cell} Title: [1x1 struct] XLabel: [1x1 struct] YLabel: [1x1 struct] TickLabel: [1x1 struct] Grid: 'off' GridColor: [0.1500 0.1500 0.1500] XLim: {3x1 cell} YLim: {3x1 cell} XLimMode:YLimMode: {3x1 cell}gydF4y2Ba

    使用gydF4y2BasetoptiongydF4y2Ba更新情节需要自定义。gydF4y2Ba

    setoption (h,gydF4y2Ba“FreqUnits”gydF4y2Ba,gydF4y2Ba“赫兹”gydF4y2Ba,gydF4y2Ba“网格”gydF4y2Ba,gydF4y2Ba“上”gydF4y2Ba);gydF4y2Ba

    图中包含9个轴对象。在(1)中包含一个line类型的对象。该对象表示sys\_mimo。坐标轴对象2包含一个line类型的对象。该对象表示sys\_mimo。Axes对象3包含一个line类型的对象。该对象表示sys\_mimo。轴对象4标题From: In(2)包含一个line类型的对象。该对象表示sys\_mimo。Axes对象5包含一个line类型的对象。 This object represents sys\_mimo. Axes object 6 contains an object of type line. This object represents sys\_mimo. Axes object 7 with title From: In(3) contains an object of type line. This object represents sys\_mimo. Axes object 8 contains an object of type line. This object represents sys\_mimo. Axes object 9 contains an object of type line. This object represents sys\_mimo.

    你打电话时,尼科尔斯的地图会自动更新gydF4y2BasetoptiongydF4y2Ba。对于MIMO模型,gydF4y2BanicholsplotgydF4y2Ba生成Nichols图的数组,每个图显示一个I/O对的频率响应。gydF4y2Ba

    对于这个例子,比较从输入/输出数据识别的参数模型的Nichols响应,与使用相同数据识别的非参数模型。根据数据确定参数模型和非参数模型。gydF4y2Ba

    加载数据并创建参数化和非参数化模型gydF4y2Ba特遣部队gydF4y2Ba而且gydF4y2Ba水疗中心gydF4y2Ba,分别。gydF4y2Ba

    负载gydF4y2Baiddata2gydF4y2Baz2gydF4y2Ba;W = linspace(0,10*pi,128);Sys_np = spa(z2,[],w);Sys_p = tfest(z2,2);gydF4y2Ba

    水疗中心gydF4y2Ba而且gydF4y2Ba特遣部队gydF4y2Ba需要系统识别工具箱™软件。该模型gydF4y2Basys_npgydF4y2Ba为非参数辨识模型,gydF4y2Basys_pgydF4y2Ba是一个参数识别模型。gydF4y2Ba

    创建一个选项集来打开相位匹配和网格。然后,使用这个选项集创建一个包含两个系统的Nichols图。gydF4y2Ba

    Plotoptions = nicholsoptions;plotoptions。PhaseMatching =gydF4y2Ba“上”gydF4y2Ba;plotoptions。网格=gydF4y2Ba“上”gydF4y2Ba;plotoptions。XLim={[-240,0]}; h = nicholsplot(sys_p,r -。gydF4y2Basys_np,gydF4y2Bab -。gydF4y2Baw plotoptions);传奇(gydF4y2Ba的参数模型gydF4y2Ba,gydF4y2Ba非参数模型的gydF4y2Ba);gydF4y2Ba

    图中包含一个轴对象。标题为From: u1 To: y1的axis对象包含2个line类型的对象。这些对象分别表示参数化模型、非参数化模型。gydF4y2Ba

    输入参数gydF4y2Ba

    全部折叠gydF4y2Ba

    动态系统,指定为SISO或MIMO动态系统模型或动态系统模型数组。您可以使用的动态系统包括:gydF4y2Ba

    • 连续时间或离散时间数值LTI模型,例如gydF4y2Ba特遣部队gydF4y2Ba,gydF4y2BazpkgydF4y2Ba,或gydF4y2Ba党卫军gydF4y2Ba模型。gydF4y2Ba

    • 稀疏状态空间模型,例如gydF4y2Ba桅杆gydF4y2Ba或gydF4y2BamechssgydF4y2Ba模型。电网频率gydF4y2BawgydF4y2Ba必须为稀疏模型指定。gydF4y2Ba

    • 广义的或不确定的LTI模型,如gydF4y2Ba一族gydF4y2Ba或gydF4y2Ba号航空母舰gydF4y2Ba(鲁棒控制工具箱)gydF4y2Ba模型。(使用不确定模型需要鲁棒控制工具箱™软件。)gydF4y2Ba

      • 对于可调控制设计块,该函数计算模型的当前值,以绘制频率响应数据。gydF4y2Ba

      • 对于不确定的控制设计块,该函数绘制模型的标称值和随机样本。gydF4y2Ba

    • 频响数据模型等gydF4y2Ba的朋友gydF4y2Ba模型。对于这样的模型,函数在模型中定义的频率处绘制响应图。gydF4y2Ba

    • 确定的LTI模型,例如gydF4y2BaidtfgydF4y2Ba(系统识别工具箱)gydF4y2Ba,gydF4y2Ba中的难点gydF4y2Ba(系统识别工具箱)gydF4y2Ba,或gydF4y2BaidprocgydF4y2Ba(系统识别工具箱)gydF4y2Ba模型。对于这样的模型,该函数还可以绘制置信区间并返回频率响应的标准差。gydF4y2Ba(使用识别的模型需要系统识别工具箱™软件。)gydF4y2Ba

    如果gydF4y2BasysgydF4y2Ba是一个模型数组,函数在同一轴上绘制数组中所有模型的频率响应。gydF4y2Ba

    线条样式、标记和颜色,指定为包含符号的字符向量或字符串。这些符号可以以任何顺序出现。您不需要指定所有三个特征(线条样式、标记和颜色)。例如,如果省略了线条样式并指定了标记,那么绘图将只显示标记而不显示线条。gydF4y2Ba

    例子:gydF4y2Ba”,或“gydF4y2Ba红色虚线与圆标记gydF4y2Ba

    线条样式gydF4y2Ba 描述gydF4y2Ba
    -gydF4y2Ba 实线gydF4y2Ba
    --gydF4y2Ba 虚线gydF4y2Ba
    :gydF4y2Ba 虚线gydF4y2Ba
    -.gydF4y2Ba Dash-dot线gydF4y2Ba
    标记gydF4y2Ba 描述gydF4y2Ba
    “o”gydF4y2Ba 圆gydF4y2Ba
    “+”gydF4y2Ba 加号gydF4y2Ba
    ‘*’gydF4y2Ba 星号gydF4y2Ba
    “。”gydF4y2Ba 点gydF4y2Ba
    “x”gydF4y2Ba 交叉gydF4y2Ba
    “_”gydF4y2Ba 水平线gydF4y2Ba
    “|”gydF4y2Ba 垂直的线gydF4y2Ba
    “年代”gydF4y2Ba 广场gydF4y2Ba
    ' d 'gydF4y2Ba 钻石gydF4y2Ba
    “^”gydF4y2Ba Upward-pointing三角形gydF4y2Ba
    “v”gydF4y2Ba 向下的三角形gydF4y2Ba
    “>”gydF4y2Ba 三点三角形gydF4y2Ba
    “<”gydF4y2Ba 只左向三角形gydF4y2Ba
    “p”gydF4y2Ba 五角星形gydF4y2Ba
    “h”gydF4y2Ba 六角星形gydF4y2Ba
    颜色gydF4y2Ba 描述gydF4y2Ba

    ygydF4y2Ba

    黄色的gydF4y2Ba

    米gydF4y2Ba

    品红色的gydF4y2Ba

    cgydF4y2Ba

    青色gydF4y2Ba

    rgydF4y2Ba

    红色的gydF4y2Ba

    ggydF4y2Ba

    绿色gydF4y2Ba

    bgydF4y2Ba

    蓝色的gydF4y2Ba

    wgydF4y2Ba

    白色gydF4y2Ba

    kgydF4y2Ba

    黑色的gydF4y2Ba

    目标轴,指定为gydF4y2Ba轴gydF4y2Ba对象。如果您没有指定轴,并且当前轴是笛卡尔轴,则gydF4y2BanicholsplotgydF4y2Ba在当前轴上绘制。使用gydF4y2Ba斧头gydF4y2Ba绘制成特定的轴gydF4y2Ba

    尼科尔斯绘图选项集,指定为gydF4y2BaNicholsPlotOptionsgydF4y2Ba对象。您可以使用此选项集自定义Nichols图外观。使用gydF4y2BanicholsoptionsgydF4y2Ba创建选项集。指定的设置gydF4y2BaplotoptionsgydF4y2Ba重写运行其中的MATLAB会话中的首选项设置gydF4y2BanicholsplotgydF4y2Ba。因此,gydF4y2BaplotoptionsgydF4y2Ba当您希望编写脚本以生成看起来相同的多个图而不考虑本地首选项时,此选项非常有用。gydF4y2Ba

    有关可用选项的列表,请参见gydF4y2BanicholsoptionsgydF4y2Ba。gydF4y2Ba

    计算和绘制频率响应的频率,指定为单元阵列gydF4y2Ba{wmin, wmax}gydF4y2Ba或者作为频率值的向量。gydF4y2Ba

    • 如果gydF4y2BawgydF4y2Ba单元格数组的形式是gydF4y2Ba{wmin, wmax}gydF4y2Ba,则该函数计算频率范围为gydF4y2BawmingydF4y2Ba而且gydF4y2BawmaxgydF4y2Ba。gydF4y2Ba

    • 如果gydF4y2BawgydF4y2Ba为频率向量,则该函数计算每个指定频率下的响应。例如,使用gydF4y2BalogspacegydF4y2Ba生成具有对数间隔频率值的行向量。gydF4y2Ba

    以rad/为单位指定频率gydF4y2BaTimeUnitgydF4y2Ba,在那里gydF4y2BaTimeUnitgydF4y2Ba是gydF4y2BaTimeUnitgydF4y2Ba模型的属性。gydF4y2Ba

    输出参数gydF4y2Ba

    全部折叠gydF4y2Ba

    图形句柄,返回为gydF4y2Ba处理gydF4y2Ba对象。使用手柄gydF4y2BahgydF4y2Ba来获取和设置Nichols图的属性gydF4y2BagetoptionsgydF4y2Ba而且gydF4y2BasetoptiongydF4y2Ba。有关可用选项的列表,请参见gydF4y2Ba属性和值参考gydF4y2Ba部分gydF4y2Ba从命令行定制响应图gydF4y2Ba。gydF4y2Ba

    R2006a之前介绍gydF4y2Ba