Lumped Capacitance Model
M.M. Yovanovich
LCM.MWS
_________________________________________
Lumped Capacitance Model.
Analytical and Numerical Solutions.
Derive and obtain the general solution of the
lumped capacitance equation.
This model is appropriate for systems for which the Biot
number is small, i.e. < 0.2 where is the uniform heat
transfer coefficient over the active surface area , and is the thermal
conductivity of the system and is some characteristic length of
the system. The thermal conductivity does not appear in the lumped
capacitance model.
The system has volume , mass density , specific heat .
The fluid temperature is constant, and the temperature
excess .
The system is subjected to a constant uniform heat flux over the entire
surface and volumetric heat generation during the cooling process.
A heat balance where represents the energy storage within the system can be used to derive the
governing equation with parameters: , , and . The initial condition is .
Obtain the relationship for steady-state.
_______________________________________________
> restart:
> HeatBalance:= Q[gen] + Q[i] - Q[loss] = Q[storage];
> Q[gen]:= P*V;
> Q[i]:= q[i]*S;
> Q[loss]:= h*S*theta(t);
> Q[storage]:= rho*c[p]*V*diff(theta(t), t);
> HeatBalance:= HeatBalance;
Put the equation into a simpler more general form by dividing through
by and introducing the parameters , and .
The units of are and the units of are .
> eq:= expand(HeatBalance/(rho*c[p]*V));
>
eq_gen:=
subs(q[i] = rho*c[p]*V*n/S, h = rho*c[p]*V*m/S, P = rho*c[p]*p, eq);
> sol:= dsolve(eq_gen, theta(t));
Specify the initial condition.
> ic:= theta(0) = theta[i];
>
_C1:=
solve(simplify(subs(t = 0, rhs(sol)))
= theta[i], _C1);
> sol:= expand(sol);
The relationship for steady-state temperature excess is obtained by setting
, and solving for .
>
theta[ss]:= expand(solve(Q[gen]+Q[i]-Q[loss]=0, theta(t)));
Alternative relationship for the steady-state temperature excess is
> theta[ss]:= n/m + p/m;
Here we show how Maple can be used to obtain
the general solution directly.
>
restart:
> eq:= diff(theta(t), t) = - m*theta(t) + n + p;
>
sol:=
dsolve({eq, theta(0) = theta[i]}, theta(t));
> theta[ss]:= limit(rhs(sol), t = infinity);
> theta[initial]:= simplify(subs(t = 0, rhs(sol)));
> case1:= (theta[i] = 100, m = 1, n = 2, p = 1);
> sol1:= subs(case1, rhs(sol));
Here we show how Maple can be used to find a
numerical solution for a particular case.
> restart:
> case2:= (theta[i] = 50, m = 2, n = 3, p=1);
> eq:= diff(theta(t), t) = - m*theta(t) + n + p;
> subs(case2, eq);
>
solnum:=
dsolve({%, theta(0) = 50}, theta(t), numeric);
> solnum(0.5);
The result of the solution function call is a list showing floating-point
values for the independent and dependent variables. We can use subs
to extract the theta(t) part.
> subs(solnum(0.5), theta(t));
> evalf(%, 6); #6 digit value of the result.