如何在不知道积分限制的情况下集成函数

2014年4月30日

我们都知道,comsol多物理学可以采用部分衍生物。毕竟,它通过有限元方法。您知道您也可以解决积分吗?仅此一项就不足为奇了,因为解决有限元问题需要您集成功能。comsol软件体系结构使您不仅可以评估积分不可分割的事情。您也可以解决不知道积分限制的问题!就是这样。

集成功能

考虑采用二次函数积分的问题:

插图显示了二次函数的积分
积分是阴影区域的区域

我们可以通过使用comsol多物理学中评估此积分整合函数,具有语法:集成(u^2,u,0,2,1e-3)。在这里,第一个参数是表达式,第二个是要整合的变量,第三和第四参数是集成的限制,可选的第五参数是积分的相对容忍度,必须在0和1之间。如果省略了第五个参数,则使用1E-3的默认值。我们可以在模型设置中的任何位置调用此功能。

在这里,我们将在全局方程界面:

comsol多物理中全局方程接口的屏幕截图
全局方程式不可缺少的计算指定限制之间的积分。

到目前为止,这里没有任何大惊喜。我们可以在Comsol多物理学或手工解决此问题。但是,假设我们将问题扭转了一下。如果我们知道积分应该评估什么,但不知道积分的上限怎么办?

让我们看一下如何解决上限的以下问题,U_B

6 = \ int_0^{u_b} u^2du

我们可以通过更改全局方程来解决此问题,以便它解决积分的上限:

更改全局方程式以求解积分上限的屏幕截图
U_B的全局方程求解了积分评估为6的间隔的上限。

上述全局方程式有一些更改。变量更改为u_b,并且必须等于零的表达式变为:6 integrate(u^2,u,0,u_b)。因此,该软件将找到u_b的值,以使积分等于指定的值。

请注意,U_B的初始值非零。

因为我们使用牛顿 - 拉夫森法为了解决这个问题,我们不应从函数斜率为零的点开始。解决问题后,我们发现U_B = 2.621。

现在,让我们更复杂一些,并解决以下两个间隔限制的问题,U_AU_B

6 = \ int_ {u_a}^{u_b} u^2du

由于我们有两个未知数,因此我们显然需要在这里再有一个方程式,因此请问(u_b-u_a)-1 = 0

全局方程接口的屏幕截图,以表明另一个方程对于指定间隔的上和下限是必需的
添加了一个额外的方程式以指定间隔的上限和下限之间的差异。

求解上面显示的模型将为我们提供u_a = 1.932和u_b = 2.932的值。实际上,也可以通过编写6综合(u^2,u,u_b-1,u_b)作为求解u_b的方程来解决单个全局方程式解决这个问题,但是有趣的是,我们可以看到我们可以同时求解多个方程。

传热的一个例子

接下来,让我们将上述技术付诸实践,以确定热交换器的工作条件。考虑模型库的示例通过淹没在池塘中的管道网络循环的水的地热加热

从池塘循环的地热加热的例子说明
通过淹没的管道网络泵送的水被加热。

在此示例中,管道流量模块用于建模在5°C(278.15 K)中泵入管道网络并被池塘中相对温暖的水加热的水。池塘中的水温度在10°C和20°C之间变化。输出处的计算温度为11.1°C(284.25 K)。如果水的质量流量指定为4 kg/s,则总吸收热为:

q = \ int_ {278.15k}^{284.25K} \ dot m c_p(t)dt = 99kw

在哪里\ dot m是质量流量和C_P(T)是特定的热量,它取决于温度。

现在,实际上,我们在这里拥有的管道网络是一个闭环系统,但是我们根本没有对管道出口和入口之间的系统部分建模。该模型包含一个隐式假设,即当水从出口泵回入口时,它会冷却至精确的5°C。

因此,让我们考虑到连接到另一个去除指定量的热量的热交换器的闭环系统,而不是假设进入管道的水温度是恒定的温度。假设此热交换器只能提取10 kW。管道中水的温度将是多少?

显然,这里的第一步是根据未知限制编写提取热的积分,锡}t_ {out}

q = 10kw = \ int_ {t_ {in}}}^{t_ {out}} \ dot m c_p(t)dt

我们需要包括的第二个条件是输入温度和输出温度之间的关系。这是由我们现有的有限元模型计算得出的。该模型在管道入口处使用固定温度边界条件,并沿整个管道的整个长度计算温度。因此,我们要做的就是在现有模型中添加一个全局方程式,以根据提取的热量和入口和出口之间的温度差来计算(最初未知的)入口温度T_IN。

添加全局方程式的屏幕截图来指定池塘环的热量提取以及出口和入口之间的温度差
指定从池塘环提取的总热量的全局方程式。

让我们看一下T_IN的方程,详细介绍管流模型的入口温度:

10 [kW] - 融合(4 [kg/s]*mat1.def.cp,t,t_in,t_out)

从右侧开始,T_OUT是计算出的出口温度。它可以在全局方程式内通过集成耦合运算符的使用,在流网络的出口点定义。也就是说,t_out = intop1(t),该定义为组件定义中的全局变量。

T_IN是管道网络入口处的温度,这是我们要计算的数量。t是温度变量,用于材料定义中;Mat1.def.cp是材料分支中定义的温度依赖性特异性热的表达式。

解决的池塘环的插图已解决
闭环解决方案。在此操作点提取10 kW。请注意,在这些操作条件下,水如何在池塘内部加热和冷却。

闭幕致辞

您可以从我们在这里概述的技术中可以看到,您不仅可以构成不可或缺的积分,而且可以解决该集成的限制,并使该方程成为其余模型的一部分。这里提出的示例考虑了热交换器。您认为您还可以在哪里使用这种强大的技术?


评论(1)

发表评论
乐动体育app
加载...
Yaohui Chen
Yaohui Chen
2014年5月14日

挺有趣的。
在较早的版本中,我试图将一些空间积分运算符直接合并到方程中。
我有一些印象,这使得方程极为重。由于某种原因,我观察到整体操作倾向于仅使用一个CPU核心,而让其他核心闲置。从那时起,也许已经得到了改进。

探索comsol乐动体育赛事播报博客