paraheat_pwc_1d, a MATLAB program which sets up and solves a parameterized steady heat equation in a 1d spatial domain, with a piecewise constant diffusivity.
The steady state heat equation to be solved is:
- d/dx ( k(x) * du/dx ) = f(x)in the interval x_min < x < x_max.
Dirichlet boundary conditions are applied, of the form:
u(x_min) = UA; u(x_max) = UB.
Currently, the following data values are assumed:
x_min = 0.0 x_max = 1.0 UA = 0.0 UB = 0.0 f(x) = 1000 * x * ( 1 - x )
The diffusivity is represented by k(x). For this problem, k(x) is a piecewise constant function, taken to be:
k(x) = 10 until x = 0.4, then k(x) = 1 until x = 0.5, then k(x) = 3
The value of the solution is reported at several sensor locations. Currently, these are set to x = 0.22, 0.43, 0.75.
The solution is estimated using the finite element method. NN equally spaced nodes are placed between x_min and x_max, piecewise linear elements are defined, and a two point Gauss quadrature rule is used to estimate the integrals.
This program is a first step in studying the relationship between the parameters chosen to specify the diffusivity, and the subsequent sensor readings. In particular, it would be desirable to be able to estimate the parameters from the sensor data.
The computer code and data files made available on this web page are distributed under the GNU LGPL license.
paraheat_pwc_1d is available in a MATLAB version.
paraheat_gaussian, a MATLAB program which sets up and solves a parameterized steady heat equation in a 2D spatial domain, with a gaussian diffusivity parameterized by (xc,yc), sc and vc.
paraheat_pwc, a MATLAB library which can set up and solve a parameterized steady heat equation in a 2D spatial domain, using diffusivity parameterized by vc, and reporting selected solution values vs.