I have forgotten
my Password

Or login with:

  • Facebookhttp://facebook.com/
  • Googlehttps://www.google.com/accounts/o8/id
  • Yahoohttps://me.yahoo.com
COST (GBP)
this unit 3.74
sub units 0.00
+
0

nhm plane

Computes the temperatures at contact surfaces between the layers of a planar non-homogeneous wall.
Controller: CodeCogs

add cart

Interface

C++

Nhm Plane

 
std::vector<double>nhm_planeintn
doublet1
doublet2
double*delta
double*lambda )
For a planar non-homogeneous wall, formed by n layers of various thicknesses \delta_1, \delta_2, \ldots, \delta_n and thermal conductivities \lambda_1, \lambda_2, \ldots, \lambda_n, the conductive heat flow per unit area is unidirectional and is given by the following formula:

It is assumed that the <i>i</i>-th layer has constant thermal conductivity \lambda_i at any of its points.

The temperature at the contact surface between layer i and layer i + 1 is denoted by tw_i, for any value of i between 1 and n-1. The value of these temperatures are obtained by considering the following equality relation between the conductive heat flows per unit area which pass through each layer and the value of q given above:

where:

Hence we obtain the following formula:

In the diagram below you may notice that the temperature decreases linearly while the heat flow passes through layers of various thicknesses and thermal conductivities.

1/nhmplane-378.jpg
+

Example 1

#include <codecogs/engineering/heat_transfer/conduction/nhm_plane.h>
#include <stdio.h>
 
int main()
{
  // input data
  int n = 3;
  double t1 = 22.73, t2 = -15.4,
   delta[3] = { 0.1, 0.15, 0.2},
  lambda[3] = {0.75, 0.95, 1.2};
 
  // display the various input data
  printf("Input values:\n\n");
  printf(" n = %d\nt1 = %.2lf\nt2 = %.2lf\n\n", n, t1, t2);
  printf("delta:\n(");
  int i;
  for (i = 0; i < n - 1; i++)
    printf("%.2lf, ", delta[i]);
  printf("%.2lf)\n\n", delta[n - 1]);
  printf("lambda:\n(");
  for (i = 0; i < n - 1; i++)
    printf("%.2lf, ", lambda[i]);
  printf("%.2lf)\n\n", lambda[n - 1]);
 
  // compute the temperatures at the contact surfaces between all layers
  std::vector<double> result = 
  Engineering::Heat_Transfer::Conduction::nhm_plane
  (3, t1, t2, delta, lambda);
 
  // display the results
  printf("\nThe temperatures at contact surfaces between layers are:\n\n");
  printf("(");
  for (i = 0; i < result.size() - 1; i++)
    printf("%.5lf, ", result[i]);
  printf("%.5lf)\n\n", result[result.size() - 1]);
 
  return 0;
}

Output

Input values:
 
 n = 3
t1 = 22.73
t2 = -15.40
 
delta:
(0.10, 0.15, 0.20)
 
lambda:
(0.75, 0.95, 1.20)
 
 
The temperatures at contact surfaces between layers are:
 
(11.62701, -1.52126)

Note

The inequality t_1 > t_2 must always hold when passing values to the function.

References

Dan Stefanescu, Mircea Marinescu - "Termotehnica"

Parameters

nthe number of layers
t1the temperature of the heat flow at the entry surface (<i>degrees Celsius</i>)
t2the temperature of the heat flow at the exit surface (<i>degrees Celsius</i>)
deltaan array with the thicknesses of the layers (<i>meters</i>)
lambdaan array with the thermal conductivities of the layers (<i>Watts per meter Celsius</i>)

Returns

A vector containing the temperatures at the contact surfaces between all layers (<i>degrees Celsius</i>).

Authors

Grigore Bentea, Lucian Bentea (October 2006)
Source Code

Source code is available when you buy a Commercial licence.

Not a member, then Register with CodeCogs. Already a Member, then Login.