Matlab学习篇之s-function

本文介绍了Matlab中的S-function,包括主函数的结构和各个子函数的作用,如mdlInitializeSizes, mdlDerivatives等,并展示了如何使用S函数实现线性方程y=kx+b。同时,解释了如何在Simulink环境中应用S函数。" 82350773,7977008,PDF格式解析:PageLayout与PageMode设定,"['PDF技术', '文档处理', '页面显示']
摘要由CSDN通过智能技术生成

S-function函数

在MATALAB命令行窗口输入命令,打开模板
	>>edit sfuntmpl.m
	模板文件stuntmpl.m包括:
	1个主函数
	6个子函数

(1)主函数
主函数的引导语句为:function[sys,x0,str,ts]=fname(t.x,u,flag)
fname是S函数的函数名。
输入形参t、x、u、flag分别为仿真时间、状态向量、输入向量和子函数调用标志。
输出形参sys代表一种返回参数(取决于flag的值);xo是初始状态值;对于M文件S函数,str将被置成一个空阵;ts是一个两列矩阵(状态变量的采样周期和采样时间的偏移量;连续系统:都为0)。
(2)子函数
S函数共有6个子函数,这些子函数的前辍为mdl,由flag的值来控制在仿真的各阶段调用S函数的哪一个子函数。
例如:flag取0:调用初始化子函数mdllnitializesizes 。
flag取1:调用子函数mdlDerivatives实现连续状态的更新。
flag取2:调用子函数mdUpdate实现离散状态的更新。
flag取3:调用输出子函数mdlOutputs

S函数的应用

采用S函数实现y=kx+b

(1)定义S函数

1. 主函数
function[sys.x0,str,ts
  • 0
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值