收藏 分享(赏)

simulink中的solver各选项表示的意思.doc

上传人:精品资料 文档编号:8659809 上传时间:2019-07-07 格式:DOC 页数:2 大小:30KB
下载 相关 举报
simulink中的solver各选项表示的意思.doc_第1页
第1页 / 共2页
simulink中的solver各选项表示的意思.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、构建好一个系统的模型之后,接下来的事情就是运行模型,得出仿真结果。运行一个仿真的完整过程分成三个步骤:设置仿真参数,启动仿真和仿真结果分析。一、设置仿真参数和选择解法器设置仿真参数和选择解法器,选择 Simulation 菜单下的 Parameters 命令,就会弹出一个仿真参数对话框,它主要用三个页面来管理仿真的参数。Solver 页,它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项。Workspace I/O 页,作用是管理模型从 MATLAB 工作空间的输入和对它的输出。Diagnostics 页,允许用户选择 Simulink 在仿真中显示的警告信息的等

2、级。1、Solver 页此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项。仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如 10 秒的仿真时间,如果采样步长定为 0.1,则需要执行 100 步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为 0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。仿真步长模式:用户在 Type 后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有 Var

3、iable-step(变步长)和 Fixed-step(固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。用户还可以在第二个下拉选项框中选择对应模式下仿真所采用的算法。变步长模式解法器有:ode45,ode23,ode113 ,ode15s,ode23s,ode23t,ode23tb 和 discrete。ode45:缺省值,四/五阶龙格库塔法,适用于大多数连续或离散系统,但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算 y(tn)时,它仅需要最近处理时刻的结果 y(tn-1)。一般来

4、说,面对一个仿真问题最好是首先试试 ode45。ode23:二/三阶龙格库塔法,它在误差限要求不高和求解的问题不太难的情况下,可能会比 ode45 更有效。也是一个单步解法器。ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常比 ode45 有效。ode113 是一种多步解法器,也就是在计算当前时刻输出时,它需要以前多个时刻的解。ode15s:是一种基于数字微分公式的解法器(NDFs)。也是一种多步解法器。适用于刚性系统,当用户估计要解决的问题是比较困难的,或者不能使用 ode45,或者即使使用效果也不好,就可以用 ode15s。ode23s:它是一种单步解法器,专门应用于

5、刚性系统,在弱误差允许下的效果好于 ode15s。它能解决某些 ode15s 所不能有效解决的 stiff 问题。ode23t:是梯形规则的一种自由插值实现。这种解法器适用于求解适度 stiff 的问题而用户又需要一个无数字振荡的解法器的情况。ode23tb:是 TR-BDF2 的一种实现, TR-BDF2 是具有两个阶段的隐式龙格库塔公式。discrtet:当 Simulink 检查到模型没有连续状态时使用它。固定步长模式解法器有:ode5,ode4 ,ode3,ode2,ode1 和 discrete。ode5:缺省值,是 ode45 的固定步长版本,适用于大多数连续或离散系统,不适用于刚

6、性系统。ode4:四阶龙格库塔法,具有一定的计算精度。ode3:固定步长的二/ 三阶龙格库塔法。ode2:改进的欧拉法。ode1:欧拉法。discrete:是一个实现积分的固定步长解法器,它适合于离散无连续状态的系统。步长参数:对于变步长模式,用户可以设置最大的和推荐的初始步长参数,缺省情况下,步长自动地确定,它由值 auto 表示。Maximum step size(最大步长参数):它决定了解法器能够使用的最大时间步长,它的缺省值为“仿真时间/50”,即整个仿真过程中至少取 50 个取样点,但这样的取法对于仿真时间较长的系统则可能带来取样点过于稀疏,而使仿真结果失真。一般建议对于仿真时间不超

7、过 15s 的采用默认值即可,对于超过 15s 的每秒至少保证 5 个采样点,对于超过 100s 的,每秒至少保证 3 个采样点。Initial step size(初始步长参数):一般建议使用“auto” 默认值即可。仿真精度的定义(对于变步长模式)Relative tolerance(相对误差):它是指误差相对于状态的值,是一个百分比,缺省值为 1e-3,表示状态的计算值要精确到 0.1%。Absolute tolerance(绝对误差):表示误差值的门限,或者是说在状态值为零的情况下,可以接受的误差。如果它被设成了 auto,那么 simulink 为每一个状态设置初始绝对误差为 1e-

8、6。Mode(固定步长模式选择)Multitasking:选择这种模式时,当 simulink 检测到模块间非法的采样速率转换,它会给出错误提示。所谓的非法采样速率转换指两个工作在不同采样速率的模块之间的直接连接。在实时多任务系统中,如果任务之间存在非法采样速率转换,那么就有可能出现一个模块的输出在另一个模块需要时却无法利用的情况。通过检查这种转换,Multitasking 将有助于用户建立一个符合现实的多任务系统的有效模型。使用速率转换模块可以减少模型中的非法速率转换。Simulink 提供了两个这样的模块:unit delay 模块和 zero-order hold 模块。对于从慢速率到快

9、速率的非法转换,可以在慢输出端口和快输入端口插入一个单位延时 unit delay 模块。而对于快速率到慢速率的转换,则可以插入一个零阶采样保持器 zero-order hold。Singletasking:这种模式不检查模块间的速率转换,它在建立单任务系统模型时非常有用,在这种系统就不存在任务同步问题。Auto:这种模式,simulink 会根据模型中模块的采样速率是否一致,自动决定切换到 multitasking 和 singletasking。输出选项Refine output:这个选项可以理解成精细输出,其意义是在仿真输出太稀松时,simulink 会产生额外的精细输出,这一点就像插值

10、处理一样。用户可以在 refine factor 设置仿真时间步间插入的输出点数。产生更光滑的输出曲线,改变精细因子比减小仿真步长更有效。精细输出只能在变步长模式中才能使用,并且在 ode45 效果最好。Produce additional output:它允许用户直接指定产生输出的时间点。一旦选择了该项,则在它的右边出现一个 output times 编辑框,在这里用户指定额外的仿真输出点,它既可以是一个时间向量,也可以是表达式。与精细因子相比,这个选项会改变仿真的步长。Produce specified output only:它的意思是让 simulink 只在指定的时间点上产生输出。为此解法器要调整仿真步长以使之和指定的时间点重合。这个选项在比较不同的仿真时可以确保它们在相同的时间输出。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报