In the following table, each line/entry contains the program file name, the page number where it can be found in the textbook, and a brief description. Click on the program name to display the source code, which can be downloaded.
Chapter 1: Introduction | ||
first.f90 | 6-7 | First programming experiment |
pi.f90 | 8 | Simple code to illustrate double precision |
Chapter 2: Number Representation and Errors | ||
oct.f90 | 49 | Print in octal format |
hex.f90 | 50 | Print in hexadecimal format |
numbers.f90 | 60-61 | Print internal machine representation of various numbers |
xsinx.f90 | 77-79 | Example of carefully programming f(x) = x - sinx |
Chapter 3: Locating Roots of Equations | ||
bisection.f90 | 94-95 | Bisection method |
rec_bisection.f90 | 95-96 | Recursive version of bisection method |
newton.f90 | 106-107 | Sample Newton method |
secant.f90 | 127-128 | Secant method |
Chapter 4: Interpolation and Numerical Differentiation | ||
coef.f90 | 152-155 | Newton interpolation polynomial at equidistant pts |
deriv.f90 | 185-186 | Derivative by center differences/Richardson extrapolation |
Chapter 5: Numerical Integration | ||
sums.f90 | 200 | Upper/lower sums experiment for an integral |
trapezoid.f90 | 207 | Trapezoid rule experiment for an integral |
romberg.f90 | 223-224 | Romberg arrays for three separate functions |
Chapter 6: More on Numerical Integration | ||
rec_simpson.f90 | 241 | Adaptive scheme for Simpson's rule |
Chapter 7: Systems of Linear Equations | ||
ngauss.f90 | 270-271 | Naive Gaussian elimination to solve linear systems |
gauss.f90 | 285-287 | Gaussian elimination with scaled partial pivoting |
tri.f90 | 301-302 | Solves tridiagonal systems |
penta.f90 | 304 | Solves pentadiagonal linear systems |
Chapter 8: More on Systems of Linear Equations | ||
Chapter 9: Approximation by Spline Functions | ||
spline1.f90 | 385 | Interpolates table using a first-degree spline function |
spline3.f90 | 404-406 | Natural cubic spline function at equidistant points |
bspline2.f90 | 427-428 | Interpolates table using a quadratic B-spline function |
schoenberg.f90 | 430-431 | Interpolates table using Schoenberg's process |
Chapter 10: Ordinary Differential Equations | ||
euler.f90 | 448-449 | Euler's method for solving an ODE |
taylor.f90 | 451 | Taylor series method (order 4) for solving an ODE |
rk4.f90 | 462-463 | Runge-Kutta method (order 4) for solving an IVP |
rk45.f90 | 472-473 | Runge-Kutta-Fehlberg method for solving an IVP |
rk45ad.f90 | 474 | Adaptive Runge-Kutta-Fehlberg method |
Chapter 11: Systems of Ordinary Differential Equations | ||
taylorsys1.f90 | 489-490 | Taylor series method (order 4) for systems of ODEs |
taylorsys2.f90 | 491 | Taylor series method (order 4) for systems of ODEs |
rk4sys.f90 | 491-493,496 | Runge-Kutta method (order 4) for systems of ODEs |
amrk.f90 | 510-513 | Adams-Moulton method for systems of ODEs |
amrkad.f90 | 513 | Adaptive Adams-Moulton method for systems of ODEs |
Chapter 12: Smoothing of Data and the Method of Least Squares | ||
Chapter 13: Monte Carlo Methods and Simulation | ||
test_random.f90 | 562-563 | Example to compute, store, and print random numbers |
coarse_check.f90 | 564 | Coarse check on the random-number generator |
double_integral.f90 | 574-575 | Volume of a complicated 3D region by Monte Carlo |
volume_region.f90 | 575-576 | Numerical value of integral over a 2D disk by Monte Carlo |
cone.f90 | 576-577 | Ice cream cone example |
loaded_die.f90 | 581 | Loaded die problem simulation |
birthday.f90 | 583 | Birthday problem simulation |
needle.f90 | 584 | Buffon's needle problem simulation |
two_die.f90 | 585 | Two dice problem simulation |
shielding.f90 | 586-587 | Neutron shielding problem simulation |
Chapter 14: Boundary Value Problems for Ordinary Differential Equations | ||
bvp1.f90 | 602-603 | Boundary value problem solved by discretization technique |
bvp2.f90 | 605-606 | Boundary value problem solved by shooting method |
Chapter 15: Partial Differential Equations | ||
parabolic1.f90 | 618-619 | Parabolic partial differential equation problem |
parabolic2.f90 | 620-621 | Parabolic PDE problem solved by Crank-Nicolson method |
hyperbolic.f90 | 633-634 | Hyperbolic PDE problem solved by discretization |
seidel.f90 | 642-645 | Elliptic PDE solved by discretization/ Gauss-Seidel method |
Chapter 16: Minimization of Functions | ||
Chapter 17: Linear Programming |
Addditional programs can be found at the textbook's anonymous ftp site:
ftp://ftp.ma.utexas.edu/pub/cheney-kincaid/
[Home] | [Features] | [TOC] | [Purchase] | [Sample Code] | [Web] | [Manuals] | [Errata] | [Links] |
Last updated: |