This site is deprecated. Please visit the new site for this material instead.
These are source files used to generate the online text Fundamentals of Numerical Computation by T. A. Driscoll and R. J. Braun.
It is advisable to use one of rows of this table for stable URLs whose content will not change except for typos and essential fixes.
Version | Date created | Text website | Source files |
---|---|---|---|
v1.0 | July 2020 | fncbook.github.io/v1.0 | zip and tar.gz |
Each chapter includes notebooks that were run with Julia 1.4. They should work with any later 1.x release as well (provided dependencies honor the standard versioning scheme).
To get the book functions as well as all demos:
-
Install Julia. Any of the available methods should be fine. The Julia Pro version comes with an integrated editor and many preinstalled packages, and it might be the best choice for those not comfortable with their command line shell.
-
Start Julia on your machine. Look for the
julia>
prompt. -
At the prompt type the
]
character. This will turn the prompt a different color, indicating that you can give commands to the package manager. -
At the newly colored prompt, type
add https://github.com/fncbook/fnc
The process will take several minutes.
-
Hit the backspace (delete on Mac) key to go back to the main Julia prompt. Steps 3-5 should only need to be done once per installation.
-
In order to use the functions, in each new Julia session you must enter
using FundamentalsNumericalComputation
After this completes, all the text's functions can be accessed with the prefix
FNC
. E.g.,FNC.lufact
,FNC.rk23
, etc.
There are two sources of noticeable slowness:
- Any
using
statement requires a compilation step after a package or its dependencies have been updated. As of July 2020, this can consume several or even tens of minutes forFNC
, due mainly to its dependence onPlots
andDifferentialEquations
. Even on subsequent invocations,using
this package can take 10-30 seconds to load. - The first plot created in a Julia session may take up to a minute, which is typical for
Plots
.
Both of these lag issues are well known to Julia developers and are the target of future improvements. In the meantime power users might investigate using PackageCompiler
to get vastly better performance on both issues.
The book was created using jupyter-book and VS Code with the Julia extension. These tools are already excellent and continue to evolve rapidly.
All the material is copyrighted. The text is derived from Fundamentals of Numerical Computation by T. A. Driscoll and R. J. Braun, copyright 2017 by the Society for Industrial and Applied Mathematics, with all rights reserved. The Julia exercises are licensed under CC Attribution-ShareAlike 4.0. The code generating the site is under an MIT license. Please see the LICENSE file for details.