计算4次幂差

时间:2011-12-15 08:54:40

标签: equation equation-solving modelica

我正在使用Modelica来解决传热问题的方程组,其中一个就是Ta^4-Tb^4写的辐射。有人可以给我一个独家的答案吗?用计算方法(Ta-Tb)(Ta+Tb)(Ta^2+Tb^2)来解决系统的计算速度更快?

此致

2 个答案:

答案 0 :(得分:2)

这个问题没有明确的答案。这是因为Modelica规范用于正式定义问题陈述,但它没有说明工具如何解决这些方程式。此外,由于大多数Modelica工具无论如何都要进行符号操作,因此很难预测这些方程可能采取的步骤。例如,一个工具可以很好地将其转换为Horner多项式(无需人工干预)。

如果要在非线性系统这样的等式中求解温度,请注意负温度解决方案。当这些温度是非线性问题中的迭代变量时,您应该调查“start”属性以指定初始(正)猜测。

答案 1 :(得分:0)

我想说有两个原因可以将它分成(Ta-Tb)(Ta + Tb)(Ta ^ 2 + Tb ^ 2)为SLOWER而不是更快。

  1. (Ta ^ 2 + Tb ^ 2)需要2次乘法和加法,这意味着(Ta-Tb)(Ta + Tb)(Ta ^ 2 + Tb ^ 2)需要4次乘法和3次加法。另一方面,我猜Ta ^ 4-Tb ^ 4是这样完成的:((Ta ^ 2)^ 2 - (Tb ^ 2)^ 2)这意味着1次加法和4次乘法。

    < / LI>
  2. Mathematica,就像一个更通用的编译器,可能非常清楚如何优化这些非常简单的表达式。这意味着使用简单模式在计算时间方面通常更安全,这些模式很容易引起注意并转化为超高效的机器代码。

  3. 我可能显然是错的,但我看不出任何理由(Ta-Tb)(Ta + Tb)(Ta ^ 2 + Tb ^ 2)可能更快。希望它有所帮助。

    的奥斯卡