FEM2D_HEAT_SQUARE
A Problem in a Square Region for FEM2D_HEAT
FEM2D_HEAT_SQUARE is a MATLAB library which
defines the geometry and other data for the the heat equation
over a square region, for solution by FEM2D_HEAT.
This mesh uses 81 nodes and forms 32 quadratic triangular elements.
We assume that the equation to be solved is
dUdT - Laplacian U + K * U = F
with
K = 0,
and
F = (2*pi*pi-1)*sin(pi*x)*sin(pi*y)*exp(-t).
The exact solution is:
U = sin(pi*x) * sin(pi*y) * exp(-t).
which is the formula we use to define our functions G
(for the boundary conditions) and H (for the initial
conditions).
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Related Data and Programs:
CONTOUR_SEQUENCE4,
a MATLAB program which
makes a sequence of contour plots based on a single XY coordinate file,
and a sequence of Z(X,Y) data files.
FEM2D_HEAT,
a MATLAB program which
uses the finite element method and the backward Euler method to solve the
2D time-dependent heat equation on an arbitrary triangulated region.
In order to run, it requires
user-supplied routines that define problem data.
TRIANGULATION_DISPLAY,
a MATLAB program which
displays the nodes and elements of a triangulation on the MATLAB graphics screen;
Reference:
-
Hans Rudolf Schwarz,
Finite Element Methods,
Academic Press, 1988,
ISBN: 0126330107,
LC: TA347.F5.S3313.
-
Gilbert Strang, George Fix,
An Analysis of the Finite Element Method,
Cambridge, 1973,
ISBN: 096140888X,
LC: TA335.S77.
-
Olgierd Zienkiewicz,
The Finite Element Method,
Sixth Edition,
Butterworth-Heinemann, 2005,
ISBN: 0750663200,
LC: TA640.2.Z54
Source Code:
-
dirichlet_condition.m,
the user-supplied routine to evaluate the boundary conditions;
-
initial_condition.m,
the user-supplied routines to evaluate the initial conditions;
-
k_coef.m,
the user-supplied routines to evaluate the linear coefficient.
-
rhs.m,
the user-supplied routines to evaluate the right hand side;
-
square.out,
output from a run of the program;
-
square_nodes.png,
a PNG image of
the 49 nodes;
-
square_nodes.txt,
a text file containing a list, for each node, of its X and Y
coordinates;
-
square_elements.png,
a PNG image of
the 32 elements;
-
square_elements.txt,
a text file containing a list, for each element, of the six
nodes that compose it;
-
square_time.txt,
a text file containing the solution times;
-
u0000.txt,
the solution U at time step 0;
-
u0001.txt,
the solution U at time step 1;
-
u0002.txt,
the solution U at time step 2;
-
u0003.txt,
the solution U at time step 3;
-
u0004.txt,
the solution U at time step 4;
-
u0005.txt,
the solution U at time step 5;
-
u0006.txt,
the solution U at time step 6;
-
u0007.txt,
the solution U at time step 7;
-
u0008.txt,
the solution U at time step 8;
-
u0009.txt,
the solution U at time step 9;
-
u0010.txt,
the solution U at time step 10;
The MATLAB program CONTOUR_SEQUENCE4 can make contour
plots from the sequence of solutions:
-
u0000.png,
the solution U at time step 0;
-
u0001.png,
the solution U at time step 1;
-
u0002.png,
the solution U at time step 2;
-
u0003.png,
the solution U at time step 3;
-
u0004.png,
the solution U at time step 4;
-
u0005.png,
the solution U at time step 5;
-
u0006.png,
the solution U at time step 6;
-
u0007.png,
the solution U at time step 7;
-
u0008.png,
the solution U at time step 8;
-
u0009.png,
the solution U at time step 9;
-
u0010.png,
the solution U at time step 10;
You can go up one level to
the MATLAB source code page.
Last revised on 11 January 2011.