matlab.System 类
System object 的基类
描述
matlab.System
是 System object 的基类。在类定义文件中,您必须从此基类(或另一个派生自此基类的类)子类化您的对象。通过子类化,您可以使用此基类提供的实现方法和服务方法来构建您的对象。键入以下语法作为类定义文件的第一行以直接从 matlab.System
基类继承,其中 ObjectName
是您的对象的名称:
classdef ObjectName < matlab.System
注意
您必须为您的代码中使用的每个 matlab.System
方法设置 Access = protected
。
matlab.System
类是 handle
类。
方法
创建方法(受保护)
getNumInputsImpl | System object 的输入数目 |
isInputDataTypeMutableImpl | 设置 System object 输入的数据类型是否可以更改 |
isInputSizeMutableImpl | 设置 System object 输入的大小是否可以更改 |
isInputComplexityMutableImpl | 设置 System object 输入的复/实性是否可以更改 |
isInputDirectFeedthroughImpl | 输入的直接馈通状态 |
getInputDimensionConstraintImpl | 定义数据流子系统的输入维度约束 |
getNumOutputsImpl | System object 的输出数目 |
getOutputDataTypeImpl | 输出端口的数据类型 |
getOutputSizeImpl | 输出端口的大小 |
isOutputComplexImpl | 输出端口的复/实性 |
isOutputFixedSizeImpl | 固定大小或可变大小输出端口 |
getOutputDimensionConstraintImpl | 定义数据流子系统的输出维度约束 |
getDiscreteStateSpecificationImpl | 离散状态大小、数据类型和复/实性 |
isDiscreteStateSpecificationMutableImpl | 控制离散状态是否可以更改数据类型 |
getDiscreteStateImpl | 离散状态属性值 |
getSampleTimeImpl | 指定采样时间类型、偏移时间和采样时间 |
allowModelReferenceDiscreteSampleTimeInheritanceImpl | 离散采样时间的模型引用采样时间继承状态 |
getGlobalNamesImpl | MATLAB System 模块的全局变量名称 |
getInterfaceImpl (Simulink) | Set System object as message or data |
isTunablePropertyDataTypeMutableImpl | 设置可调属性是否可以更改数据类型 |
isDoneImpl | 数据结束标志 |
getSimulateUsingImpl | 指定 Simulate using 参数值 |
getSimulinkFunctionNamesImpl | 注册在 System object 中使用的 Simulink 函数的名称 |
showFiSettingsImpl | System object 的定点数据类型选项卡可见性 |
supportsMultipleInstanceImpl | 在 Simulink For Each 子系统中支持 System object |
getImpulseResponseLengthImpl | 定义数据流子系统的输入影响的长度 |
getPropertyGroupsImpl | System object 显示的属性组 |
showSimulateUsingImpl | 仿真方式参数的可见性 |
getIconImpl | 要显示为模块图标的名称 |
getHeaderImpl | System object 显示的标头 |
getInputNamesImpl | MATLAB System 模块输入端口的名称 |
getOutputNamesImpl | MATLAB System 模块输出端口的名称 |
isInactivePropertyImpl | 非活动属性的状态 |
setupImpl | 初始化 System object |
stepImpl | 系统输出和状态更新方程 |
resetImpl | 重置 System object 状态 |
releaseImpl | 释放资源 |
processTunedPropertiesImpl | 可调属性更改时的操作 |
validatePropertiesImpl | 验证 System object 的属性值 |
processInputSpecificationChangeImpl | 在输入大小、复/实性或数据类型更改时执行操作 |
validateInputsImpl | 验证 System object 的输入 |
updateImpl | 基于输入更新对象状态 |
loadObjectImpl | 从 MAT 文件加载 System object |
saveObjectImpl | 将 System object 保存在 MAT 文件中 |
infoImpl | 有关 System object 的信息 |
查询函数(受保护)
setProperties | 创建 System object 时使用名称-值对组设置属性值 |
propagatedInputComplexity | Simulink 传播期间输入的复/实性 |
propagatedInputDataType | Simulink 传播期间的输入数据类型 |
propagatedInputFixedSize | Simulink 传播期间输入的固定大小状态 |
propagatedInputSize | Simulink 传播期间的输入大小 |
createSampleTime | 创建采样时间设定对象 |
getSampleTime | 查询采样时间 |
getCurrentTime | MATLAB System 模块中的当前仿真时间 |
setNumTicksUntilNextHit (Simulink) | Set the number of ticks in Simulink sample time |
displayScalarObject | 显示标量对象的格式 |
getHeader | 构建并返回显示头部文本 |
getFooter | 构建并返回显示尾部文本 |
实现方法(公共)
nargin | System object 的输入参数的数目 |
nargout | System object 的输出参数的数目 |
getNumInputs | 调用 System object 所需的输入数目 |
getNumOutputs | 调用 System object 而得到的输出数目 |
setup | 为 System object 一次性设置任务 |
reset | 重置 System object 的内部状态 |
step | 运行 System object 算法 |
release | 释放资源并允许更改 System object 属性值和输入特性 |
clone | 创建重复的 System object |
isDone | 数据结束状态 |
isLocked | 确定 System object 是否正在使用中 |
示例
创建基本 System object
此示例说明如何编写名为 AddOne
的基本 System object。
在 MATLAB 中,选择新建 > System object > 基本。新编辑器窗口将打开,其中包含新 System object 的默认语法和注释。
将类重命名为 AddOne
。修改默认模板,使您的类如下所示:
classdef AddOne < matlab.System % ADDONE Compute an output value that increments the input by one methods (Access = protected) % Implement algorithm. Calculate y as a function of input x. function y = stepImpl(~,x) y = x + 1; end end end
通过创建 AddOne
的实例来使用该对象,并使用输入运行对象。
addingObject = AddOne; x = 5; addingObject(x)
ans = 6
详细信息
属性
您可以对 System object™ 类和属性应用特性。要了解有关特性的详细信息,请参阅类属性或属性特性。
此表显示可应用于 MATLAB® System object 类的特性。
属性名称 | 描述 |
StrictDefaults | 控制以下方法(用于限制设定修改更改)的默认值:
默认情况下,这些方法返回 对于 Simulink® 中使用的 System object,此特性仅限制输入大小更改,因为 Simulink 已经限制了可调属性、输入和状态的复/实性和数据类型。 |
请在括号中指定类特性值,后跟类名称,例如:
classdef (StrictDefaults) MySystemObject < matlab.System
您可以将以下特性应用于自定义 System object 的任何属性。
Nontunable | 使用 Nontunable 可防止在对象处于使用中状态时更改该属性值。默认情况下,所有属性均可调。Nontunable 特性对于锁定那些更改后会产生副作用的属性很有用。此特性对于锁定假定在处理过程中保持恒定的属性值也很有用。您应该始终将影响输入或输出端口数量的属性指定为 Nontunable 。 |
DiscreteState | 使用 DiscreteState 可将属性标记为在您使用 getDiscreteState 方法时显示其状态值。 |
版本历史记录
在 R2011b 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)