Currently unregistered. If one wants to use this package, then execute
using Pkg; Pkg.add(url="https://github.com/jmanthony3/LUSE_ENGR701_704_NumericalMethods.jl")
in the Julia REPL.
This package provides:
- Native Julia implementation of some numerical methods from the 10ᵗʰ edition of Numerical Analysis by Burden et al.
solve()
includes method dispatching for the following types:SingleVariableIteration
InitialValueProblem
MultiVariableIteration
SystemofEquation
Each of the method dispatches on solve()
include convenience functions for the respective numerical method as specified by the method
keyword argument.
E.g. solve(mvi::MultiVariableIteration; method=:jacobi) ≡ jacobi(mvi)
which applies the Jacobi Iterative Technique onto the system of equations defined in a MultiVariableIteration
structure.
Key comments:
- Greatly inspired by the Python package
joby_m_anthony_iii
- Leverages
StaticArrays.jl
(where appropriate) and practices of recommended Performance Tips - Heavy use of
Symbolics.jl
functions--build_function
,simplify
,expand_derivatives
, andDifferential
--for symbolic differentiation and evaluation:jacobian_form()
lagrange()
n1derivative()
maximum_slope()
newton_raphson()
newton_raphson()
will solve quicker if the functional form of the derivative or Jacobian matrix is supplied
- Single-Variable Iteration (SVI)
- Bisection Method
- Fixed-Point Method
- Secant Method
- False Position
- Newton-Raphson
- Interpolation methods
- Cubic splines
- Newton's Divided Difference
- Lagrange Polynomials
- Hermite Polynomials
- Linear Least Squares
- Bezier Curves
- Newton's Divided Difference
- Extrapolation methods
- Richardson's Extrapolation
- Solving for eigenvalues
- Power Method
- Inverse Power Method
- QR Algorithm
- Solving Systems of Equations (SOE)
- Gaussian Elimination
- Steepest Descent
- Conjugate Gradient
- Multi-Variable Iteration (MVI)
- Jacobi
- Gauss-Seidel
- Successive Relaxation
- Initial Value Problems (IVP)
- Forward Euler
- Backward Euler
- Improved/Modified Euler
- Runge-Kutta
- 2ⁿᵈ-Order
- 4ᵗʰ-Order
- Boundary Value Problems (BVP)
- Linear Shooting Method
- Finite Difference Method
- Other Ordinary/Partial Differential Equations (O/PDE)
- Decision on appropriate naming convention of types/functions/methods
- Expand base methods for other linear algebraic properties and convenience functions
- Attributes and plot recipes for plotting approximations and respective errors by iteration
See CITATION.bib
for the relevant reference(s).
- R. Burden L., D. Faires J., and A. Burden M., Numerical Analysis, 10th ed. 20 Channel Center Street, Boston, MA 02210, USA: Cengage, 2019.