↑ 点击上方“Amesim学习与应用”关注我们
大家好,最近在Amesim微信交流群中答疑的时候,遇到大家咨询的一个新的问题,是一个非常常见的需求,我觉得有必要写出来,供大家知悉这样的方法。
我们来设想一个如下图所示这样的模型场景,已知一段管路进出口压力,想知道不同管路直径d(mm)和不同管路长度L(m)时,流过该管路的水流量Q(L/min)。为了更加直观的演示,我们假设管路直径d的取值分别为10mm、20mm、30mm、40mm、50mm等5组状态,管路长度L的取值分别为1m、2m、3m、4m等4组状态,通过交叉组合,我们希望得到20个组合工况下的水流量。
对于上述简单的案例,其实我们知道Amesim存在批处理功能,参数或者仿真模式下,选择“研究管理-批处理”功能,我们可以打开批处理工具框。
在批处理功能里面,我们无法实现交叉,只能按照每一个数据组分别设置,例如本例中就需要手动输入20组数据,相当的麻烦。想一想,如果我们有10000组数据,这样一个个去手动输入,岂不是累崩。这种场景又非常常见,例如有参数A、B、C、D四个参数各有10个工况,那交叉组合就是10000个参数组。
如果此时你还能接受,耐心的一个个输入进去,进行了批处理计算。然后得到的结果就成了如下图这样,需要辨别每一个工况的结果,然后手动一个个读取结果再输入到结果记录表中。如果数据足够多且结果都是曲线,那么花花绿绿的一大片,足以令人崩溃。因此,面对此类场景,显然批处理方法不是最佳方案。
为了更好的获取结果,我们还可以选择“研究管理-新的研究-设计实验”功能,“DOE批处理计算”指的是在设计实验(Design of Experiments, DOE),每个变量都是实验矩阵中的一个条件,所有条件交叉组合形成实验矩阵,然后对实验矩阵进行批量计算,也可以理解为种实验田。一般也是用于对大量的组合工况批量计算,得到最优的参数,也用于分析其内部规律。
在DOE实验视图中,我们分别输入了管路直径d和管路长度L的参数组,每个参数之间用分号隔开,则可以自动生成实验矩阵,例如本例中自动交叉生成20个实验组,然后开始批量计算。
在DOE批量计算过程中,可以看到日志中不断的提示实验矩阵中的工况编号,以及是否完成计算的提示。直至所有实验完成计算后,即可通过“DOE-右键日志文件”查看到所有数据结果。然后只需要将数据结果复 制到excel中简单处理,则可以十分直观的查看,也方便进一步的处理。
DOE日志文件复 制到Excel进行处理后,如下图所示。可以很直观的看到每个工况组合下,管路中的流量值。同时,色阶处理后,也可以明确的观察到“管路直径越大长度越短,则流量越大”这样的规律,可以说相当的直观和方便,比单独的批处理功能强了很多倍。如果大家对这部分内容感兴趣,可以参考我们制作的《第2期 Amesim参数分析与优化专题视频教程》内容。
上面介绍了DOE批处理功能,已经足够满足大家的日常批处理计算的需求了。但是,我们都知道,懒是无止境的,懒是创造力的重要源泉。
还有一个方法就是Excel脚本处理功能,简单来说,大致步骤就是:
a) 工况填写到excel中;
b) 脚本获得工况参数,调用Amesim计算;
c) 脚本将Amesim计算结果直接提取到excel中。
一共就这么几个步骤,一键开始,坐等结果。当然,这也需要一丁点VBA编程技巧就可以实现,如果大家也是有这方面的需求,还可以学习下我们制作的视频教程《第62期Excel脚本操作Amesim专题视频教程》。
本文主要介绍了Amesim在面临多参数交叉组合时候的批量计算方法,更加推荐大家多多尝试DOE工具,更好的解决自己在模型参数分析中遇到的问题。
-----------------------------------