Revision history  [back]

Is temperature inversion correction in stratified tank model of Buildings Library dimensionally correct?

I was reading code for the stratified tank model in particular the buoyancy model (Buildings.Fluid.Storage.BaseClasses.Buoyancy, see code on GitHub).

Q_flow[i] = k*noEvent(smooth(1, if dT[i]>0 then dT[i]^2 else 0));

Now k has dimensions W/K, so right hand side becomes [W/K * K^2] while left hand side is [W].

The old implementation was:

Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0);

which is dimensionally correct.

The smooth operator does not differentiate dT^2. Is this a correction factor kind of equation and so we do not look at dimensions? What am I missing here?

Is temperature inversion correction in stratified tank model of Buildings Library dimensionally correct?

I was reading code for the stratified tank model in particular the buoyancy model (Buildings.Fluid.Storage.BaseClasses.Buoyancy, see code on GitHub).

Q_flow[i] = k*noEvent(smooth(1, if dT[i]>0 then dT[i]^2 else 0));

Now k has dimensions W/K, so right hand side becomes [W/K * K^2] while left hand side is [W].

The old implementation was:

Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0);

which is dimensionally correct.

The smooth operator does not differentiate dT^2. Is this a correction factor kind of equation and so we do not look at dimensions? What am I missing here?

Is temperature inversion correction in stratified tank model of Buildings Library dimensionally correct?

I was reading code for the stratified tank model in particular the buoyancy model (Buildings.Fluid.Storage.BaseClasses.Buoyancy, see code on GitHub).

Q_flow[i] = k*noEvent(smooth(1, if dT[i]>0 then dT[i]^2 else 0));

Now k has dimensions W/K, so right hand side becomes [W/K * K^2] while left hand side is [W].

The old implementation was:

Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0);

which is dimensionally correct.

The smooth operator does not differentiate dT^2. Is this a correction factor kind of equation and so we do not look at dimensions? What am I missing here?

Is temperature inversion correction in stratified tank model of Buildings Library dimensionally correct?

I was reading code for the stratified tank model in particular the buoyancy model (Buildings.Fluid.Storage.BaseClasses.Buoyancy). (Buildings.Fluid.Storage.BaseClasses.Buoyancy).

Q_flow[i] 

$Q_flow[i] = k*noEvent(smooth(1, if dT[i]>0 then dT[i]^2 else 0));

0));$

Now k "k" has dimensions W/K, "W/K", so right hand side becomes [W/K * K^2] K^2] while left hand side is [W].[W].

The old implementation was:

Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0);

0);

which is dimensionally correct.

The smooth operator does not differentiate dT^2. dT^2. Is this a correction factor kind of equation and so we do not look at dimensions? What am I missing here?

Is temperature inversion correction in stratified tank model of Buildings Library dimensionally correct?

I was reading code for the stratified tank model in particular the buoyancy model (Buildings.Fluid.Storage.BaseClasses.Buoyancy).

$Q_flow[i] Q_flow[i] = k*noEvent(smooth(1, if dT[i]>0 then dT[i]^2 else 0));$0));

Now "k" has dimensions "W/K", so right hand side becomes [W/K * K^2] while left hand side is [W].

The old implementation was:

Q_flow[i] = k*max(heatPort[i+1].T-heatPort[i].T, 0);

which is dimensionally correct.

The smooth operator does not differentiate dT^2. Is this a correction factor kind of equation and so we do not look at dimensions? What am I missing here?here?