首页/文章/ 详情

Amesim之微分元件

1年前浏览482
微分元件

该元件有两个子模型,分别是DIF00和DIF1两个子模型。其中DIF00是用隐式变量产生一个信号输出,输出是输入的导数,而DIF1是产生一个输出信号,其输出信号是使用一个时间常数。

1  
DIF00  


DIF00的特点是在工作时能够非常精确。然而,它并不完全可靠,在某些情况下他会微分失败,在它失败的情况下,这时用DIF1替换它,不太准确但更可靠。

由于x是隐式变量,因此必须设置其残差res(x)。在进入子模型时,隐式变量的残差被设置为隐式变量导数的估计值。输出信号可以直接设置为:output = der(x),而残差为res(x) = x - input,因此微分代数积分器试图使x等于输入,输出将是对输入导数的估计。在积分的开始和每次不连续之后,计算导数时可能会有一些精度的损失。这时就有了一个任务:x =input,这是一种预防措施,以防止在输入发生步骤更改时出现问题。

这里f(x)=x^2+2x+1,其关于f(x)的导数为y=2*x+2,下面是仿真结果:当x=5时,f(x)=36,导数为12.

2  
DIF1  

DIF1特点是可靠但不是很准确。如果时间常数高,则精度低。随着时间常数的降低,精度增加,直到达到精度下降的点。如果要求高精度,DIF00可能更令人满意。

该子模型有三个输出,分别是dummy state variable(隐含状态变量)、initial value(初始值)、time constant for first order lag(一阶滞后的时间常数)。在参数设置的时候时间常数必须严格为正,虚拟状态变量的初值可以由用户设置,也可以直接用运行开始时输入的值设置。当用户不知道输入的初始值并且不想产生巨大的瞬态时,可以使用自动模式。

输出和虚状态函数的导数设为:output=(input-dummy state variable)/time constant for first order lag,这里dummy state variable的值越小则精度越高。

来源:Amesim学习与应用
科普
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-07-06
最近编辑:1年前
batt
本科 微信公众号:Amesim学习与应用
获赞 81粉丝 385文章 203课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈