主要内容

的朋友

频率特性的数据模型

描述

使用的朋友创建实或复值频率特性数据模型、或转换动态系统模型频率特性数据模型形式。

频率特性数据模型存储复杂的频率响应数据与相应的频率点。例如,一个数据模型频率特性H(jw)在每个输入频率,商店的频率响应w,在那里= 1,…,n。的的朋友模型对象可以表示的输出或天线系统在连续时间和离散时间频率特性数据模型。有关更多信息,请参见频率响应数据(朋友)模型

您还可以使用的朋友创建广义频率特性数据(genfrd)模型。

创建

你可以获得的朋友模型以以下方式之一。

描述

例子

sys=朋友(响应,频率)创建了一个连续时间频率特性数据(的朋友)模型,设置ResponseData频率属性。频率可以包含两个正面和负面的频率。

例子

sys=朋友(响应,频率,ts)创建一个离散时间的朋友模型与样品时间ts。离开时间不明,集的例子ts为1。

例子

sys=朋友(响应,频率,ltiSys)创建一个数据模型频率特性与属性继承了动态系统模型ltiSys,包括样品的时间。

例子

sys=朋友(___,名称,值)频率特性的属性数据模型使用一个或多个名称参数对于任何以前的输入参数组合。

例子

sys=朋友(ltiSys,频率)将动态系统模型ltiSys频率特性的数据模型。的朋友计算指定的频率响应频率频率sys继承了其频率单位rad /TimeUnitltiSys.TimeUnit

sys=朋友(ltiSys,频率FrequencyUnits)解释频率在指定的单位FrequencyUnit

输入参数

全部展开

频率响应数据,指定为一个向量或一个多维数组的复数。

  • 对于输出系统,指定一个向量的频率响应值在指定的频率点频率

  • MIMO系统的ν输入和纽约输出,指定一个纽约——- - - - - -ν——- - - - - -Nf数组,Nf是频率点的数量。

  • 对于一个S1-…———Sn数组的模型ν输入和纽约输出,指定一个多维数组的大小(纽约νNfS1Sn]。

    例如,一个响应的大小(纽约,ν,Nf,3,4)代表3×4阵列的响应数据模型。每个模型都有纽约输出,ν输入,Nf频率点。

这个输入设置ResponseData财产。

频率点对应响应指定为一个向量,其中包含Nf点。频率可以包含正面和负面频率。

这个输入设置频率财产。

样品时间,指定为一个标量。

输入设置Ts财产。

动态系统,指定为输出或米姆动态系统模型或数组的动态系统模型。动态系统,您可以使用包括:

  • 数字连续时间和离散时间线性时不变模型,如特遣部队,zpk,党卫军,或pid模型。

  • 广义或不确定的线性时不变模型等一族号航空母舰(鲁棒控制工具箱)模型。(使用不确定的模型需要鲁棒控制工具箱™软件。)

    由此产生的的朋友模型假设:

    • 当前值可调可调控制组件的设计

    • 名义模型值不确定的控制设计街区

  • 确定了LTI模型,如idtf(系统辨识工具箱),中的难点(系统辨识工具箱),idproc(系统辨识工具箱),idpoly(系统辨识工具箱),idgrey(系统辨识工具箱)模型。(使用识别模型需要系统辨识工具箱™软件。)

属性

全部展开

频率响应数据,指定为一个多维数组的复数。

  • 对于输出系统,ResponseData是一个1——- - - - - -1——- - - - - -Nf频率响应值的数组Nf中指定的频率点频率财产。

  • MIMO系统的ν输入和纽约输出,ResponseData是一个纽约——- - - - - -ν——- - - - - -Nf数组,Nf是频率点的数量。

    例如,ResponseData (kf,肯塔基州,ku)中代表输入的频率响应ku到输出肯塔基州在频率频率(kf)

  • 对于一个S1-…———Sn数组的模型ν输入和纽约输出,ResponseData是一个多维数组的大小(纽约νNfS1Sn]。

    例如,一个ResponseData的大小(纽约,ν,Nf,3,4)代表3×4阵列的响应数据模型。每个模型都有纽约输出,ν输入,Nf频率点。

频率点对应ResponseData指定为一个向量,其中包含Nf点在指定的单位FrequencyUnit

单位的频率向量频率属性,指定为以下值之一:

  • “rad / TimeUnit”

  • “周期/ TimeUnit”

  • “rad / s”

  • “赫兹”

  • “赫兹”

  • “兆赫”

  • “GHz”

  • “转”

的单位“rad / TimeUnit”“周期/ TimeUnit”相对于中指定的时间单位TimeUnit财产。

改变这个属性不重新取样或转换数据。修改属性更改现有数据的解释。使用chgFreqUnit将数据转换成不同频率的单位。

运输延迟,指定为以下之一:

  • 标量-指定的输出系统的运输延迟或同一个传输延迟的所有输入/输出对MIMO系统。

  • 纽约——- - - - - -ν数组——为每个输入/输出指定单独的运输延误对MIMO系统。在这里,纽约输出的数量和吗ν输入的数量。

对于连续时间系统,在指定的时间单位指定运输延误TimeUnit财产。对于离散时间系统,指定运输延误样品的整数倍时间,Ts

为每个输入通道输入延迟,指定为以下之一:

  • 标量-指定输入输出系统的延迟或相同的延迟所有输入的多输入系统。

  • ν1的向量,为输入指定单独的输入延迟的多输入系统,ν输入的数量。

对于连续时间系统,指定输入延迟指定的时间单位TimeUnit财产。对于离散时间系统,指定输入整数倍的样品时间延迟,Ts

有关更多信息,请参见线性系统的时间延迟

为每一个输出通道输出延迟,指定为以下之一:

  • 标量-指定的输出系统的输出延迟或相同的延迟对所有输出的多输出系统。

  • 纽约1矢量-指定单独的输出延迟输出的多输出系统纽约是输出的数量。

对于连续时间系统,指定输出延迟指定的时间单位TimeUnit财产。对于离散时间系统,指定输出整数倍的样品时间延迟,Ts

有关更多信息,请参见线性系统的时间延迟

样品时间,指定为:

  • 0连续时间系统。

  • 一个积极的标量表示一个离散时间系统的采样周期。指定Ts在指定的时间单位TimeUnit财产。

  • 1离散时间系统和一个未指明的样品时间。

请注意

改变Ts不离散化或重新取样模型。

时间变量单位,指定为以下之一:

  • “纳秒”

  • 微秒的

  • 的毫秒

  • “秒”

  • “分钟”

  • “小时”

  • “天”

  • “周”

  • “月”

  • “年”

改变TimeUnit对其他属性没有影响,但改变整个系统的行为。使用chgTimeUnit时间单位,无需修改系统行为之间的转换。

输入通道名称,指定为以下之一:

  • 一个特征向量,输入模型。

  • 单元阵列的特征向量,对多输入模型。

  • 没有指定名称,输入通道。

此外,您可以指定输入名称多输入模型使用自动矢量扩张。例如,如果sys是两个输入模型中,输入以下:

sys.InputName=“控制”;

输入名称自动扩大{“控制(1)”,“控制”(2)}

您可以使用速记符号u来指InputName财产。例如,sys.u相当于sys.InputName

使用InputName:

  • 确定渠道模式显示和阴谋。

  • 提取MIMO系统的子系统。

  • 当互连模型指定连接点。

输入通道单位,指定为以下之一:

  • 一个特征向量,输入模型。

  • 单元阵列的特征向量,对多输入模型。

  • 任何单位指定,任何输入通道。

使用InputUnit指定输入信号单元。InputUnit没有对系统行为的影响。

输入通道组,指定为一个结构。使用InputGroup分配MIMO系统的输入通道组,指每组的名字。的字段名InputGroup组名和字段值是每组的输入通道。例如,输入以下创建输入组名称控制噪音包括输入通道12,35,分别。

sys.InputGroup。控制=(12];sys.InputGroup。噪音= [3 - 5];

然后您可以提取的子系统控制使用以下输入所有输出。

sys (:,“控制”)

默认情况下,InputGroup结构没有字段。

输出通道名称,指定为以下之一:

  • 对于模型的特征向量,。

  • 单元阵列的特征向量,对多输出模型。

  • 没有指定名称,任何输出通道。

或者,您可以指定输出名称多输出模型使用自动矢量扩张。例如,如果sys是一个两个输出模型,输入以下。

sys.OutputName=“测量”;

输出名称自动扩大{“测量(1)”,“测量”(2)}

您还可以使用速记符号y来指OutputName财产。例如,sys.y相当于sys.OutputName

使用OutputName:

  • 确定渠道模式显示和阴谋。

  • 提取MIMO系统的子系统。

  • 当互连模型指定连接点。

输出通道单位,指定为以下之一:

  • 对于模型的特征向量,。

  • 单元阵列的特征向量,对多输出模型。

  • 、任何单位指定的任何输出通道。

使用OutputUnit指定输出信号单元。OutputUnit没有对系统行为的影响。

输出通道组,指定为一个结构。使用OutputGroup分配MIMO系统的输出通道组,指每组的名字。的字段名OutputGroup组名和字段值是每组的输出通道。例如,创建输出组命名温度测量包括输出通道1,35,分别。

sys.OutputGroup。温度=(1];sys.OutputGroup。测量=(35];

然后您可以从所有输入提取子系统测量使用下列输出。

系统(“测量”:)

默认情况下,OutputGroup结构没有字段。

系统名称、指定为一个特征向量。例如,“system_1”

指定的文本,你想要的系统,指定为一个字符特征向量的向量或单元阵列。例如,系统分配的

用户指定的数据,你想与系统关联,指定为任何MATLAB数据类型。

采样网格模型数组,指定为一个结构数组。

使用SamplingGrid跟踪每个模型在模型中相关的变量值数组,包括确定线性定常模型(IDLTI)数组。

结构的字段名称设置为抽样变量的名字。设置字段值的采样与数组中的每个模型相关的变量值。所有抽样变量必须是一个数字标量,所有数组的采样值必须匹配模型的维度的数组。

例如,您可以创建一个11-by-1一系列线性模型,sysarr,通过一个线性时变系统的快照t = 0:10。下面的代码存储时间和样品线性模型。

sysarr。SamplingGrid =结构(“时间”0:10)

类似地,您可以创建一个数组6-by-9模型,独立采样两个变量,ζw。下面的代码映射(ζ,w)

[ζ,w] = ndgrid(< 6的值ζ>、< 9 w的值>)。SamplingGrid =结构(“ζ”ζ,' w 'w)

当您显示数组中的每一项都包含相应的ζw值。

(::1,- 1)(ζ= 0.3 w = 5) = 25 - - - - - - - - - - - - - - - - s ^ 2 + 3 s + 25米(:,:,2,1)(ζ= 0.35 w = 5) = 25 - - - - - - - - - - - - - - - - - s ^ 2 + 3.5 s + 25…

线性化模型数组生成的仿真软件模型在多个参数值或操作点,软件填充金宝appSamplingGrid自动变量的值,对应于每个条目数组中。例如,金宝app仿真软件控制设计命令线性化(金宝app仿真软件控制设计)slLinearizer(金宝app仿真软件控制设计)填充SamplingGrid自动。

默认情况下,SamplingGrid结构没有字段。

对象的功能

以下列表中包含了代表功能的子集可以使用的朋友模型。一般来说,适用于许多功能动态系统模型也适用于的朋友对象。的朋友模型不使用任何时域分析功能。

全部展开

波德 波德图的频率响应,或大小和相位数据
σ 奇异值的动态系统
尼奎斯特 奈奎斯特频率响应的阴谋
尼克尔斯 尼科尔斯图的频率响应
带宽 频率响应带宽
freqresp 评估网格系统响应的频率
保证金 增益裕度、相位容限和交叉频率
chgFreqUnit 改变频率的频率特性数据模型单元
chgTimeUnit 改变时间单位的动态系统
frdfun 应用一个函数在每个频率的频率响应值的朋友模型对象
fselect 在朋友模型选择频率点或范围
插值函数 插入的朋友模型
fcat 连接的朋友沿着频率维度模型
fnorm 朋友模型的点态峰值增益
反馈 反馈连接的多个模型
连接 框图互联的动态系统
系列 串联的两个模型
平行 并联的两个模型
pidtune PID调节算法线性模型

例子

全部折叠

创建一个的朋友从频率响应数据对象。

对于这个示例,加载频率响应数据收集水箱模型。

负载wtankData.mat

这些数据包含频率响应数据收集的频率范围 10 - - - - - - 3 rad /年代 10 2 rad / s。

创建模型。

sys =朋友(响应、频率)
sys =频率(rad / s)反应- - - - - - - - - - - - - - - - - - - - - - - - 0.0010 - 1.562 e + 01 - 1.9904我0.0018 - 1.560 e + 01 - 2.0947 0.0034 1.513 e + 01 - 3.3670 0.0062 1.373 e + 01 - 5.4306我0.0113 - 1.047 e + 01 - 7.5227我0.0207 - 5.829 e + 00 - 7.6529 0.0379 2.340 e + 00 - 5.6271我e-01 7.765 0.0695 - 3.4188 0.1274 - 2.394 e-01 - 1.9295我e-02 7.216 0.2336 - 1.0648 0.4281 - 2.157 e-02我0.7848 - 6.433 e 03 - 0.3188 - 0.5834 1.4384 - 1.916 e 03 - 0.1740我e-04 5.705 2.6367 - 0.0950 4.8329 - 1.698 e-04 - 0.0518我e-05 5.055 8.8587 - 0.0283 16.2378 - 1.505 e-05 - 0.0154我e-06 4.478 29.7635 - 0.0084 54.5559 - 1.333 e-06 - 0.0046 100.0000 3.967 e-07 - 0.0025我连续时间频率响应。

情节sys

波德(系统)

图包含2轴对象。轴与ylabel对象1级(dB)包含一个类型的对象。这个对象表示系统。坐标轴对象2 ylabel阶段(度)包含一个类型的对象。这个对象表示系统。

对于这个示例,考虑随机生成的响应数据和频率。

生成一个3-by-2-by-7复杂的数组和一个频率向量之间有7分0.01和100 rad / s。样品时间Ts5秒。

rng (0) r = randn(3 2 7) + 1我* randn (3 2 7);w = logspace (2, 2、7);Ts = 5;

创建模型。

sys =朋友(r, w, Ts)
sys =从输入1:频率(rad / s)输出1输出2输出3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.0100 - 0.5377 + 0.3192我1.8339 + 0.3129 -2.2588 - 0.8649 0.0464 - -0.4336 + 1.0933我0.3426 + 1.1093 3.5784 - 0.8637 0.2154 - 0.7254 - 0.0068我-0.0631 + 1.5326 0.7147 - 0.7697 1.0000 - 1.4090 0.6715 - 1.0891我1.4172 + 0.0326 + 0.5525我4.6416 0.4889 - 1.4916 1.0347 - 0.7423 0.7269 - 1.0616 21.5443 - 0.8884 - 0.1924我-1.1471 + 0.8886我-1.0689 - 0.7648 100.0000 0.3252 - 0.1774 -0.7549 - 0.1961 1.3703 + 1.4193我从输入2:频率(rad / s)输出1输出2输出3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -我0.0100 0.8622 - 0.0301 0.3188 - 0.1649 -1.3077 0.0464 2.7694 + 0.0774 + 0.6277我我-1.3499 - 1.2141 3.0349 - 1.1135 0.2154 - -0.2050 + 0.3714我-0.1241 - 0.2256 1.4897 0.7172 1.0000 -1.2075 + 1.1006 + 1.1174我我1.6302 + 0.0859 + 1.5442 4.6416 - -0.3034 0.2939 - 0.6156 + 2.3505我-0.7873 + 0.7481我21.5443 -0.8095 - 1.4023 -2.9443 - 1.4224 1.4384 100.0000 -1.7115 + 0.2916 + 0.4882我-0.1022 -0.2414 + 1.5877 + 0.1978我样品时间:5秒离散频率响应。

指定的数据结果在两个输入三输出的朋友模型。

对于这个示例,创建一个数据模型频率特性与属性继承自一个传递函数模型。

创建一个传递函数sys1TimeUnit属性设置为“分钟”InputDelay属性设置为3。

numerator1 = (2,0);denominator1 = (1 8 0);sys1 =特遣部队(numerator1 denominator1,“TimeUnit”,“分钟”,“InputDelay”3)
sys1 = 2 s exp (3 * s) * - - - - - - - - - - - - ^ 2 + 8年代连续时间传递函数。
propValues1 = {sys1.TimeUnit, sys1.InputDelay}
propValues1 =1×2单元阵列{“分钟”}{[3]}

创建一个的朋友模型属性继承sys1

rng反应(0)= randn(1 1 7) + 1我* randn (1 1 7);w = logspace (2, 2、7);sys2 =朋友(响应,w, sys1)
sys2 =频率响应(rad /分钟)- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0.0100 - 0.5377 + 0.3426我0.2154 - -2.2588 0.0464 - 1.8339 + 3.5784 + 2.7694我1.0000 0.8622 - 1.3499 4.6416 - 0.3188 21.5443 - -1.3077 + 0.7254 + 3.0349我100.0000 - -0.4336 - 0.0631我输入延迟(分钟):3连续时间频率响应。
propValues2 = {sys2.TimeUnit, sys2.InputDelay}
propValues2 =1×2单元阵列{“分钟”}{[3]}

观察到的的朋友模型sys2有性质一样吗sys1

对于这个示例,加载频率响应数据收集水箱模型。

负载wtankData.mat

电压,模型具有一个输入和一个输出,水的高度。

创建一个的朋友模型,指定输入和输出的名称。

sys =朋友(响应、频率、“InputName”,“电压”,“OutputName”,“高度”);

频率响应。

波德(系统)

图包含2轴对象。坐标轴对象1的标题:电压:身高、ylabel级(dB)包含一个类型的对象。这个对象表示系统。坐标轴对象2 ylabel阶段(度)包含一个类型的对象。这个对象表示系统。

输入和输出的名称出现在波德图。命名的输入和输出可以是有用的在处理响应MIMO系统的情节。

对于这个示例,计算的朋友模型的状态空间模型如下:

一个 = ( - - - - - - 2 - - - - - - 1 1 - - - - - - 2 ] , B = ( 1 1 2 - - - - - - 1 ] , C = ( 1 0 ] , D = ( 0 1 ]

创建一个使用了状态矩阵状态空间模型。

一个= [2 1;1 2];B = (1 1 1; 2);C = 0 [1];D = [0 1];ltiSys = ss (A, B, C, D);

状态空间模型转换ltiSys到一个的朋友模型之间的频率0.01和100 rad / s。

w = logspace (2, 2, 50);sys =朋友(ltiSys w);

比较的频率响应。

波德(ltiSys“b”系统,“r——”)

图包含4轴对象。坐标轴对象的标题1:在(1),ylabel:(1)包含2线类型的对象。这些对象代表ltiSys,系统。轴与ylabel对象2:(1)包含2线类型的对象。这些对象代表ltiSys,系统。坐标轴对象的标题3:在(2)包含2线类型的对象。这些对象代表ltiSys,系统。坐标轴对象4包含2线类型的对象。这些对象代表ltiSys,系统。

的反应是相同的。

创建数组的朋友模型,您可以指定一个频率响应数据的多维数组。

例如,当您指定响应数据的数值数组大小(纽约νNFS1Sn),这个函数返回一个S1——-…——-Sn的数组的朋友模型。每一个模型纽约输出,ν输入,NF频率点。

生成一个2×3组与一个输出随机响应数据,两个输入模型频率点0.1到10点10 rad / s。

10 w = logspace (1, 1);r = randn(1、2、10 2 3) + 1我* randn (1、2、10、2、3);sys =朋友(r, w);

提取模型索引数组(2,1)模型。

sys21 =系统(:,:2 1)
sys21 =从输入1:频率(rad / s)输出1 - - - - - - - - - - - - - - - - - - - - - - - - 0.1000 - 0.6715 + 0.0229我0.1668 0.7172 - 1.7502 0.2783 - 0.4889 - 0.8314我0.4642 0.7269 - 1.1564 0.7743 0.2939 - 2.0026 1.2915 - 0.8884 + 0.5201我2.1544 -1.0689 - 0.0348 3.5938 - -2.9443 5.9948 - 0.3252 - 0.7145 + 1.0187我我从输入2到10.0000 - 1.3703 - 0.2248:频率(rad / s)输出1 - - - - - - - - - - - - - - - - - - - - - - - - 0.1000 - -1.2075 - 0.2620我0.1668 1.6302 - 0.2857 0.2783 - 1.0347 0.4642 - -0.3034 - 0.5336 - 0.9792我0.7743 - -0.7873 + 0.9642我1.2915 -1.1471 - 0.0200 2.1544 - -0.8095 - 0.7982我3.5938 1.4384 - 0.1332 5.9948 - -0.7549 10.0000 - -1.7115 - 0.5890 + 1.3514我连续时间频率响应。

您可以指定-频率值在一个朋友的对象。这个功能是非常有用的,当你想要捕获的频率响应数据模型复杂系数。

创建一个频率向量与积极的和消极的价值观。

w0 =排序([-logspace (2, 2, 50) 0 logspace (2, 2, 50)]);

创建一个具有复杂状态空间模型系数。

一个= [-3.50,-1.25 - -0.25;2、0];B = (1, 0);C = (-0.75 - -0.5, 0.625 - -0.125);D = 0.5;Gc = ss (A, B, C, D);

将模型转换为一个朋友模型在指定的频率。

sys =朋友(Gc, w0);

情节的频率响应模型。

波德(Gc,“b”系统,“r——”)

图包含2轴对象。轴与ylabel对象1级(dB)包含2线类型的对象。这些对象代表Gc系统。坐标轴对象2 ylabel阶段(度)包含2线类型的对象。这些对象代表Gc系统。

情节反应密切匹配。情节展示了模型与复系数两个分支,一个积极的频率,箭头,和一个负频率,与一只左向箭头。在这两个分支,箭头指示方向的频率增加。

版本历史

之前介绍过的R2006a