收敛与调试外文翻译资料

 2022-08-11 02:08

英语原文共 37 页,剩余内容已隐藏,支付完成后下载完整资料


图 1

图5-20:默认变量信息对话框。

5.4调试技术

EES中的数值方法是稳健和强大的。然而,你可能会遇到你的方程组无法求解的情况。方程无法求解的最常见原因是您输入的方程中有一些错误。可能是单位转换问题或符号错误。即使是一个小问题也可能足以阻止EES能够求解已输入的方程。另一方面,有时,如果一个或多个方程是非线性的,那么即使是一组正确的方程也可能无法求解,所以它们依赖于您提供的猜测值。

EES不是一种编程语言。这是一个方程求解的应用。它并不是按照进入“方程”窗口的顺序来解方程,而是按照它认为合适的顺序重新排序,以尝试以最佳方式解方程,如第5.1节所述。当EES能够求解一组方程时,它就可以高效地求解。然而,当无法求解方程组时,它很难确定问题的原因,因为您不直接控制求解过程。本节提供了一些技巧,可以帮助您将一组顽固的方程放到EES中求解。

有效利用EES

尽管EES允许以任何顺序输入方程,但有充分的理由以逻辑顺序输入方程。在可能的情况下,应按顺序输入方程,以便在输入每个方程(或至少每几个方程)后获得中间解。这种方法与手工或使用传统编程语言解决问题的方法类似。在序列解中,每一个新的方程只使用先前方程所陈述或确定的信息。在一个大型的耦合方程组中,它可能有助于输入一个临时方程,该临时方程有效地为尚未确定的变量提供猜测。稍后,当输入其他信息时,将删除临时公式。

按顺序输入方程有几个原因。首先,它允许在编写程序时对其进行调试。令人沮丧的是,输入一个大的方程组,然后最终点击“求解”,却发现EES未能收敛。调试这么大的EES程序是很困难的。一次输入一个方程并验证EES可以解决输入每个方程后得到的方程组要容易得多。当遇到问题时,它们可以立即与输入的最后一个方程式隔离。这种方法是很好的工程实践。当实验或设备出现问题时,有经验的工程师将立即尝试通过单独测试设备的每个子系统来隔离问题。

使用上一段讨论的顺序方法还有一个优点。EES使用迭代方法求解一组非线性方程;该方法从一个初始点开始,该初始点的特征是每个变量的一组“猜测”值,并迭代地改进该解。如果每个变量的猜测值接近最终解,则求解过程更容易。获得一系列中间解通常允许用户轻松获得一组非常好的猜测值。

Update Guesses命令和指令

使用选项菜单中的Update guses命令,可以在继续执行解决方案时更新猜测值。此命令也可以使用“更新猜测速度”按钮启动()在主菜单栏下方显示的速度按钮栏上。

选择Update Guesses命令将使所有变量的猜测值设置为其最近计算的值。更新猜测值也可以通过按下变量信息窗口中的更新按钮或放置指令来完成$updategues在“公式”窗口中。$updateguesss指令与Update Guesses菜单命令略有不同。Update Guesses菜单命令更新整个EES程序(即,在主体和所有子程序中)中的猜测值,而$updateguesss指令仅在其所在的作用域(即,主程序或子程序)中运行。子程序在第10章中讨论。在任何情况下,猜测值只能在当前方程组成功求解时更新。如果方程组尚未成功求解,则“更新猜测”命令和“速度”按钮将被禁用。

下面的示例演示了顺序解决方案技术和Update Guesses命令的使用。问题是确定在TH=1000K和TL=300K两个表面上进行辐射换热。暴露于高温和低温表面的面积分别为AH=1m2和AL=0.5m2。从到表面的辐射传热速率由以下公式给出:

( 5-40 )

其中sigma;是Stefan-Boltzmann常数(5.67x10-8 W/m2-K4);请注意,这是EES中的内置常数(sigma#),如第1.9节所述。从表面到的辐射传热速率由下式给出:

( 5-41 )

表面处于稳定状态,因此能量平衡提供:

(5-42)

按顺序进行,我们首先输入已知信息。

图 2

这将是一个解决方程输入到这一点,确保没有印刷错误的很好的做法。接下来我们可以尝试直接输入和求解方程组。(5-40)到(5-42)。

图 3

当您试图解决这些问题时,EES不会收敛,相反,它将显示如图5-21所示的错误消息。

图 4

图5-21:在试图求解等式时显示的错误消息。(5-40)到(5-42)。

错误消息指示我们查看“残差”窗口。单击Yes按钮将显示Residuals窗口,如图5-22所示。

图 5

图5-22:显示块1的残差窗口未收敛。

残差窗口显示,收敛问题出现在一起形成块1的三个方程中。块编号以粗体显示,表示方程未求解到指定的公差。此外,块1中方程式的相对残差值远大于“停止条件”对话框(选项菜单)中指定的公差值。在更大的问题中,此信息可能有用,因为它可以隔离问题的位置。然而,在这种情况下,我们已经知道我们输入的最后三个方程是收敛问题的根源。

输入等式。(5-40)到(5-42)同时引起了这个收敛问题。我们采用另一种方法,一次输入一个方程。删除“公式”窗口中的最后三个公式。为了采用顺序(而不是同时)方法,我们输入等式(5-40),然后求解它。接下来,输入等式(5-41)并求解。最后,输入公式(5-42)并求解。然而,在这个例子中,这种方法似乎失败了,因为公式(5-40)涉及两个未知因素,为了继续,最好输入一个临时方程,这为未知的温度提供了一个猜测。我们知道表面的温度必须介于T和T之间;因此合理的猜测是平均值。

图 6

这个方程显然是暂时的,为了得到正确的解,必须最终删除它;这可以通过突出显示方程来强调,如上图所示。(若要突出显示公式,请选中它,然后单击鼠标右键。)指定临时值T后,可以输入公式(5-40)并求解得到的公式集:

图 7

如有必要,可以输入和检查变量的单位,并调试解决方案。接下来可以输入方程(5-41)并求解新方程组。

图 8

虽然方程已解,但由于我们为T输入了一个任意值,所以解是不正确的。然而,该解确实有用。变量Q_dot_L、Q_dot_H和T的当前值是非常好的猜测值;比将要使用的默认猜测值要好得多。从“选项”菜单或“速度”按钮工具栏中选择“更新猜测”命令。确认后,EES将所有变量的当前值指定为这些值的猜测值。例如,变量T最初的猜测值为1k。现在它的猜测值为650k。接下来,删除(或注释掉)指定T的临时方程,并输入公式(5-42)给出的稳态要求。

图 9

现在,当你试图解方程组时,就不会有收敛问题了。T的正确值是904.5k,这离猜测值还很远,但足够接近,可以使方程收敛。这个例子说明了按顺序输入方程的基本方法,根据需要使用临时方程来提供猜测,并应用Update guesses命令。还有其他方法可以使EES求解这些方程,例如在求解过程开始时调整猜测值。然而,在作者看来,顺序法是确保你能用EES控制解决过程的最佳方法。

残差窗口作为调试工具

残差窗口中的信息有助于诱使一组顽固的方程收敛。对残差的检查将表明哪些方程已由EES求解,哪些尚未求解。例如,假设我们没有遵循上一节中建议的顺序方法,而是输入Eqs。(5-40)到(5-42)同时,以及将表面温度转换为摄氏度的附加方程。

编辑“公式”窗口,以便显示以下公式。选择“选项”菜单中的“重置猜测”命令,将所有变量的猜测值设置回其默认值。

图 10

这些方程不能用默认的猜测值求解。“残差”窗口将显示,如图5-23所示。

图 11

图5-23:显示未尝试计算的块的残差窗口。

请注意块2的残差列中的*****;这些星号表示没有尝试对该块(以及任何后续块)进行计算。未尝试计算的原因是,由于上一节中解释的原因,前面的块1中的计算失败。EES试图在块1中求解的变量在该块的方程式中以粗体显示。这个信息很快就指出了问题的根源,可能是一个庞大的方程组。调试工作可以指向块1中的方程式。例如,应检查块中未求解的方程式,以确保它们正确输入。可能需要调整以粗体显示的变量的猜测值。注意,图5-23还显示了块1中的一些方程存在单位转换问题。在进一步尝试求解方程组之前,应消除这些单位转换问题,因为它们可能是由方程中的误差引起的,而这些误差可能是问题的根源。在本例中,由于未指定变量Q_dot_H和Q_dot_H的单位,因此发生了单位转换错误。

通常,块号按顺序出现。当一个或多个方程丢失时,EES将在遇到此问题时跳过块号。应仔细审查以下各块中的方程式,以确定它们是否正确、完整地输入。如果EES跳过一个块号,那么方程组中的某个地方显然存在一个问题。

常见问题

一组方程无法求解的最常见原因是存在一个不正确的方程(通常可以用不一致的单位识别)或不适当的猜测值。如果遵循前面推荐的顺序过程,这些问题通常在输入方程的过

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[237289],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。