1、引言
在建立数学模型后,设置算例,然后编程实现得到结果,之后进行算例分析,是常见的研究流程。但是在编程后,通常无法直接得到自己想要的结果,无从下手,该如何处理呢,这就是今日的问题。
首先分析问题,得不到想要的结果,按照不遗漏不重复原则,分为以下两类:程序无解和程序有解两类。但是这两类问题都会归结到程序、模型以及算例设置上。接下来进行简单分析:
2、简单分析
程序计算有解,不代表就是正确的结果,此时我们还应该进行相应的检查。检查应该有以下方面流程:1)将中间结果或者最终结果都打印出来,观察。2)根据观察结果,问题在以下选项中出现,包括程序、模型、算例设置等。3)进而在这几个选项中进行检查。
2.1 程序
程序错误通常会造成无解或者解没有意义。归结到底就是程序编错了,例如运算符号或者变量编错了。
2.2 模型
模型应该是在编程序前就应该好好检查的,毕竟程序编写完毕后,再进行修改,一是做了许多无用功,二是就算有结果也不意味着是正确的结果。而计算结果不理想可能就是第二个情况出现了。
2.3 算例设置
如果从小算例开始计算,那么有时候就可以肉眼看出是否有计算结果。所以在调初始程序时,最开始就用小算例,例如IEEE5节点算例。在设置算例时,我们可以手写计算条件,大致就可以看出是否问题有解,甚至可以手推出来结果,这样才可以跟程序算出来的结果相比较。
3、解决方案
综上所述,模型程序算例分析一般流程如下:
1)在建立模型后,应该仔细检查模型,是否有符号错误或者是变量错误。如果有模型等效变化,观察甚至计算自己变化后的模型与原模型的计算结果是否是正确的。
2)对模型有很大的信心后,设置算例,这时先不上大算例,上一个很小的算例,例如3节点,进行手算。可以算出来一个结果。看看是否合理。
3)模型和小算例结果验证后,现在可以开始编写程序了,编完程序便到了验证结果的时候了。这时可以将程序计算结果和第二步的手推结果进行比较,从而验证程序的正确性。
4)此时再在简单算例基础上加上之前手推未加上的数据,例如电网线路数据等。防止其它位置也会出现问题,此时对程序再次进行了复查。如果有结果,一般就是正确的结果。
5)经过以上步骤,肯定自己模型和程序一定是对的,再上大算例进行计算。
通过该方法,可以尽量避免程序出错,并且可以了解到自己是哪一步出错的,从而规避无从下手的情况。
文章介绍了在建立数学模型并编程后,当结果不符合预期时的分析流程。首先,应区分程序无解和有解但不正确的情况,然后分别检查程序错误、模型问题和算例设置。建议在建模后仔细检查模型,设置小算例进行手动计算验证,逐步增加复杂度以确保程序的正确性。
7478

被折叠的 条评论
为什么被折叠?



