DiscreteInputOutputModel

DiscreteInputOutputModel[{g0,g1,,gn-1},u]

表示在采样时刻 i 输入为 u 和输出为 的离散时间模型.

DiscreteInputOutputModel[{g0,g1,,gn-1},u,y]

可用于指定还依赖于输出变量 y 的输出 .

DiscreteInputOutputModel[,{{u1,{,u10}},},{{y1,{,y10}},}]

指定每个信号在时刻 k<=0 时的输入和输出值.

更多信息和选项

  • DiscreteInputOutputModel 表示一个系统,在定期采样时刻的输出是系统输入和先前输出的函数.
  • DiscreteInputOutputModel 可用于表示输入-输出形式的离散时间系统,包括离散时间 TransferFunctionModel 对象. 通常用于表示 ModelPredictiveController 中计算的 MPC 控制器.
  • 输入-输出模型表示过去的输入和输出组成的长度为 m 的移动窗口, ,其中 .
  • 对于 k=n,,方程则被周期性地扩展为 p=TemplateBox[{k, n}, Mod].
  • 默认情况下, 时的输入 和输出 被视为 .
  • 对于模型预测控制,经常使用两种简单的情况:
  • 状态反馈控制器
    状态准反馈控制器
  • 默认情况下,假定采样实例之间的值是恒定的. 实际上是一个插值阶数为 0 的零阶保持 (ZOH).
  • 可用 DiscreteInputOutputModel[{{k0,g0},,{kn-1,gn-1}},] 明确指定整数采样实例 ki 和输出 .
  • 时间 ti 与采样时刻 ki 之间的关系为 ti=τ ki,其中 τ 是采样周期,用 DiscreteInputOutputModel[, SamplingPeriodτ] 指定.
  • DiscreteInputOutputModel["prop"] 可用于计算属性.
  • 与输出规范 {ki,gi} 相关的属性:
  • "FirstInstant"第一时刻 Min[{k0,k1,}]
    "FirstValue"第一时刻上的值
    "Instants"采样时刻 Sort[{k0,k1,}]
    "LastInstant"最后时刻 Max[{k0,k1,}]
    "LastValue"最后时刻上的值
    "Path"时刻-值数据对 {{k0,g0},}
    "PathComponent"第一个路径分量
    "PathComponents"所有路径都拆分为单变量分量
    "PathFunction"插值路径函数
    "PathLength"路径的长度 ("Horizon")
    "Values"输出的值 {g0,g1,}
  • 基本的模型属性:
  • "InputsCount"输入的数量
    "InputVariables"输入变量 u
    "OutputsCount"输出的数量
    "OutputVariables"输出变量 y
    "Type"输入-输出关系的类型
    "SamplingPeriod"采样周期 sp
  • 时间序列的属性:
  • "FirstTime"对应于第一时刻的时间
    "LastTime"对应于最后时刻的时间
    "TemporalData"多路径 TemporalData 对象
    "TimePath"时刻-值数据对 {{t0,g0},}
    "Times"对应于采样时刻的时间
    "TimeSeries"TimeSeries 对象
    "TimeValues"采样时的输出值
  • DiscreteInputOutputModel 接受以下选项:
  • MissingDataMethod None处理缺失值的方法
    ResamplingMethod {"Interpolation", InterpolationOrder0}用于重采样路径的方法
    SamplingPeriod Automatic采样周期

范例

打开所有单元关闭所有单元

基本范例  (3)

一个输出只依赖于输入的模型:

对随机输入序列的响应:

输出依赖于输入和输出的模型:

对正弦输入的响应:

具有非零初始条件的模型:

对类似斜坡的输入序列的响应:

对于零初始条件的响应是不同的:

范围  (30)

基本用法  (8)

输出为当前输入值的系统:

它的输出与输入相同:

对于较长的输入序列,在假设周期性的情况下计算输出:

输出是之前和当前输入的平均值的系统:

输出是之前的输出和当前输入的平均值的系统:

计算移动最大值的系统:

FoldList 获取同样的结果:

计算移动最大值和最小值的多输出系统:

FoldList 获取同样的结果:

指定非零初始值:

对一组负输入的响应:

对一组正输入的响应:

默认值为零的模型:

对于负输入,最大值错误地始终为 0:

对于正输入,最小值总是错误地为 0:

周期为 3 的双输出系统:

对斜坡输入的响应:

具有一系列分段输出的系统:

对随机输入的响应:

TransferFunctionModel  (4)

单入单出 (SISO) 系统的 TransferFunctionModel

等价的 DiscreteInputOutputModel

响应是一样的:

多入单出 (MISO) 系统的 TransferFunctionModel

等价的 DiscreteInputOutputModel

响应是一样的:

单入多出 (SIMO) 系统的 TransferFunctionModel

等价的 DiscreteInputOutputModel

响应是一样的:

多入多出 (MIMO) 系统的 TransferFunctionModel

等价的 DiscreteInputOutputModel

响应是一样的:

ModelPredictiveController  (2)

ModelPredictiveController 的反馈增益模型:

反馈增益是状态的一系列分段函数:

准反馈增益模型也是一个 DiscreteInputOutputModel

它是时间 0 处状态的一系列分段函数:

多输入 ModelPredictiveController 的反馈增益模型:

分段函数的值的长度为 2,对应于两个输入:

属性  (16)

获取模型中的所有值:

第一个值:

最后一个值:

特定时刻的值:

所有时刻:

第一时刻:

最后时刻:

时刻-值数据对列表:

将多变量路径拆分为单变量分量:

第一个分量的路径:

第二个分量的路径:

"PathComponent" 给出第一个分量:

获取第二个分量:

获取几个分量:

插值路径函数:

路径的长度:

基本的模型属性:

用时间指定的属性:

以列表的形式获取多个属性:

Association 的形式获取所有属性:

Dataset 的形式获取所有属性:

选项  (3)

MissingDataMethod  (1)

指定如何处理缺失值:

ResamplingMethod  (1)

默认重采样方法的插值阶数为 0:

指定插值阶数为 1:

插值阶数为 1 时的值:

SamplingPeriod  (1)

默认采样周期为 1:

由于采样时刻和时间重合,"Path""TimePath" 给出相同的结果:

"TimePath" 也可以从 "TimeSeries""Path" 中获得:

采样周期为 2 的系统:

"Path" 是用采样时刻表示的,而 "TimePath" 是用时间值表示的:

应用  (3)

计算一个低通 FIR 内核:

将其组合为 DiscreteInputOutputModel

计算它对有噪声的正弦曲线的响应:

可用 ListConvolve 获得相同的结果:

这两个响应其实是一样的:

计算 IIR 滤波器的离散近似:

将其组合为 DiscreteInputOutputModel:

计算它对有噪声的正弦曲线的响应:

类似的 TransferFunctionModel 表示给出几乎相同的响应:

计算 MPC 设计的反馈增益模型和闭环系统:

反馈增益模型是离散输入-输出模型,是闭环系统的一部分:

对闭环系统进行仿真:

属性和关系  (4)

形成一个卷积:

ListConvolve 给出相同的结果:

一个线性递归方程:

DiscreteInputOutputModel 表示:

对输入序列的响应:

RecurrenceFilter 给出同样的响应:

带有离散 TransferFunctionModel 表示的过程:

还有一个 DiscreteInputOutputModel 表示:

响应是相同的:

如果没有输入和输出变量,DiscreteInputOutputModel 实际上是一个 TimeSeries

等价的 TimeSeries 对象:

路径:

用属性获取时间序列:

具有相同的路径:

也可以直接获取时间路径:

可能存在的问题  (2)

获取时间序列有可能会将规范从采样时刻改为时间戳:

采样时刻 1 的值:

计算等价的时间序列:

时间序列不是以采样时刻给出的:

使用等价的时间戳:

时间序列路径:

原始模型的时间序列路径是相同的:

但是,原始模型的路径是是以采样时刻给出的:

不将初始值 用于计算系统的响应:

Wolfram Research (2022),DiscreteInputOutputModel,Wolfram 语言函数,https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html.

文本

Wolfram Research (2022),DiscreteInputOutputModel,Wolfram 语言函数,https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html.

CMS

Wolfram 语言. 2022. "DiscreteInputOutputModel." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html.

APA

Wolfram 语言. (2022). DiscreteInputOutputModel. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html 年

BibTeX

@misc{reference.wolfram_2024_discreteinputoutputmodel, author="Wolfram Research", title="{DiscreteInputOutputModel}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_discreteinputoutputmodel, organization={Wolfram Research}, title={DiscreteInputOutputModel}, year={2022}, url={https://reference.wolfram.com/language/ref/DiscreteInputOutputModel.html}, note=[Accessed: 22-November-2024 ]}