admin管理员组

文章数量:1660205

在尝试用脚本实现这一功能的过程中发现一些新的东西,记录一下。

搜索“Estimate Model Parameters”发现了以下几个例子,可能有用。

一、Estimate Model Parameters and Initial States (GUI)

为每组实验选择需要评估的初始状态。给定一个初始值和评估范围,与参数的处理方法相似。选中后,在参数评估过程中,初始状态也会被评估。

初值的脚步实现方式参考“Estimate Model Parameters and Initial States (Code)”中的“Estimate the Initial State”。

Exp.InitialStates = sdo.getStateFromModel('sdoRCCircuit','C1');
Exp.InitialStates.Value = 1;


二、Estimate Model Parameters Per Experiment (GUI)

关于Experiment中Initial States和Parameters属性的理解

(目前是这么理解的,后续发现有误的话再修改)

从被选内容来看Initial States是Parameters的一个子集

从功能上看,Initial States用于指定当前Experiment对象的初始状态,Parameters用于指定哪些参数会被估算,此处指定的参数只会使用当前Experiment的数据来进行估算。

(注意区别:在Parameters处指定的参数可以选择多个Experiment里的数据来估算。)

以本例为例,估算过程中一共涉及四个变量,K、V、Q0、Loss。其中K、V两个参数的估计会用到Charge Exp和DCharge Exp两组实验的数据;Loss的估算只用到Charge Exp的数据;Q0是初始荷电状态,分别指定为固定值,不对其进行估算,Charge Exp的初值设为0,DCharge Exp的初值设为6.5。

注意此案例中的初值并不进行估算,只是指定为固定值,对比“1、Estimate Model Parameters and Initial States (GUI)”案例中的初值勾选了Estimate,因此会进行估算。

本文标签: 参数SimulinkDesignoptimization