什么是S函数

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 04:38:21
什么是S函数

什么是S函数
什么是S函数

什么是S函数
S函数是对一个动态系统的计算机程序语言描述.S函数可以使用MATLAB或者C怨言写成.用C语言写成的S函数要用Mex工具编译成Mex文件.与其他的Mex文件一样,他们在需要的时候动态地链接到MATLAB.
S函数使用一种特殊的调用语法,通过它可以与ODE求解器进行交互.这种交互同求解器与Simulink内建模之间的交互非常相似.
S函数的形式非常全面,它包括连续、离散和混合系统,因此,几乎所有的Simulink模型都可以描述为S函数.通过User-Defined Functions库中的S-Function模块,可以将S函数加进Simulink模型,使用S-Function模块对话框可以制定S函数的名字,模块可以是一个CMex文件或者M文件,如果存在具有相同名字的CMex文件和M文件,S函数有限使用CMex文件.
可以使用Simulink的模块工具为S-Function模块创建一个定制的对话框和图标.模块对话框使得为S函数制定附加的参数变得更容易一些.
S函数的作用与原理
S函数最通常的用法是创建一个定制的Simulink模块,可以在许多应用程序中使用S函数,包括:
(1)Simulinkl中加进新的通用模块;
(2)将已存在的C代码融合并入一个仿真中;
(3)将一个系统描述为一系列的数学方程;
(4)使用图形动画.
使用S函数的一个有点是可以创建一个通用的模块,在模型中可以多次使用它,使用时只需要改变它的参数值即可.
Simulink模型中的每一个模块都有如下的共同特征:一个输入向量U,一个输入向量Y,以及一个状态向量X.
状态向量可能包括连续状态、离散状态或连续状态的组合.
Simulink将状态向量分为两部分:连续状态和离散状态.连续状态占据着向量的第一部分,离散状态占据第二部分.对于没有状态的模块,x是一个控的向量.