📄 ch2example22sfun.m
字号:
function [sys,x0,str,ts] =ch2example22Sfun(t,x,u,flag,Amp,f0, k, phi0)
% VCO的实现
switch flag,
case 0 % flag=0 初始化
sizes = simsizes; % 获取SIMULINK仿真变量结构
sizes.NumContStates = 1; % 连续系统的状态数是1
sizes.NumDiscStates = 0; % 离散系统的状态数是0
sizes.NumOutputs = 1; % 输出信号数目是1
sizes.NumInputs = -1; % 输入信号数目是自适应的
sizes.DirFeedthrough = 0; % 该系统不是直通的
sizes.NumSampleTimes = 1; % 这里必须为1
sys = simsizes(sizes);
str = []; % 通常为空矩阵
x0 = [0]; % 初始状态矩阵x0
ts = [-1 0]; % 采样时间由外部模块给出
case 1 % flag=1 计算连续系统状态方程
sys=2*pi*f0+2*pi*k*u; % VCO 状态方程
case 3 % flag=3 计算输出
sys= Amp*sin(x+phi0); % VCO 输出方程
case {2,4, 9 } % 其他作不处理的flag
sys=[]; % 无用的flag时返回sys为空矩阵
otherwise % 异常处理
error(['Unhandled flag = ',num2str(flag)]);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -