102 Thermal effects of exhumation
Table 5.5. Heat1D subroutines and their functions
Routine Function
Heat1D.f Main program
init.f Where the initial temperature distribution is defined
bc.f Where the values of the boundary conditions are set
conductivity.f Where the conductivity is set as a function of time and space
heat.f Where heat production is set as a function of time and space
velo.f Where the tectonic exhumation rate is defined as a function
of time and space
Heat1D
Included with the notes is a Fortran code named Heat1D.f. It is a finite-element
code designed to solve the transient heat-conduction equation in one dimension.
It uses quadratic elements and allows for spatial and temporal variations in con-
ductivity, heat production and exhumation velocity. Various types of boundary
conditions are allowed on either side of the computational domain; and any initial
temperature distribution can be considered.
Heat1D is made of a main program, Heat1D.f, a set of routines, init.f, bc.f,
conductivity.f, velo.f and heat.f and a set of utility routines (from LAPACK),
namely sgbfa.f, sgbsl.f, isamax.f, saxpy.f, sdot.f and sscal.f. All need to be compiled
and linked to produce an executable Heat1D.exe.
A brief description of each subroutine is given in Table 5.5. All routines can
be edited and changed to define the problem to be solved. General description of
the problem should be set in Heat1D.f, including the geometry, type of boundary
conditions and time-step length. Thermal and tectonic properties (initial tem-
perature conditions, conductivity, heat production and velocity) are set in init.f,
conductivity.f, heat.f and velo.f, respectively.
Comparison with analytical solutions
When developing a numerical algorithm, it is always essential to check the accur-
acy of the solution it provides against analytical solutions. In Figure 5.10,we
compare numerical and analytical solutions to the one-dimensional, transient, con-
ductive heat-transport equation wherein a linear, conductive gradient is perturbed
(at time t =0) by a sudden doubling in basal temperature (from Tz = 1 =05to
Tz = 1 =1). The solutions are shown at two time steps, t = 005 and t = 025,
after the thermal perturbation has been introduced and are practically identical,