This is the R package to support Computational Methods for Numerical Analysis with R by James P. Howard, II.
Computational Methods for Numerical Analysis with R is an overview of traditional numerical analysis topics presented using R. This guide shows how common functions from linear algebra, interpolation, numerical integration, optimization, and differential equations can be implemented in pure R code. Every algorithm described is given with a complete function implementation in R, along with examples to demonstrate the function and its use.
Computational Methods for Numerical Analysis with R with R is intended for those who already know R, but are interested in learning more about how the underlying algorithms work. As such, it is suitable for statisticians, economists, and engineers, and others with a computational and numerical background.
- Elementary and Example Algorithms
- Polynomial Expansion
- Naive (naivepoly)
- Cached Naive (betterpoly)
- Horner's Method (horner, rhorner)
- Summation
- Naive Summation (naivesum)
- Kahan Summation (kahansum)
- Division
- Naive Division (naivediv)
- Long Division (longdiv)
- Miscellaneous
- Naive Primality tester (isPrime)
- Nth Root (nthroot)
- Quadratic Formula (quadratic, quadratic2)
- Samples
- Fibbonaci (fibonacci)
- Wilinson's Polynomial (wilkinson)
- Himmelblau (himmelblau)
- Polynomial Expansion
- Linear Algebra
- Row/Vector Operations
- Row Replacement (replacerow)
- Scale Row (scalerow)
- Swap Rows (swaprows)
- Norm of a Vector (vecnorm)
- Elementary Functions
- Determinant (detmatrix)
- Matrix Inverse (invmatrix)
- Row-Echelon Form (refmatrix)
- Reduced Row-Echelon Form (rrefmatrix)
- Solve a Matrix, Using Row Reduction (solvematrix)
- Decompositions
- Cholesky Decomposition (choleskymatrix)
- LU Decomposition (lumatrix)
- Iterative Methods
- Conjugate Gradient (cgmmatrix)
- Gauss Seidel (gaussseidel)
- Jacobi (jacobi)
- Specialty Methods
- Tridiagonal Matrix Solver (tridiagmatrix)
- Row/Vector Operations
- Interpolation and Extrapolation
- Polynomial Interpolation
- Liner Interpolation (linterp)
- Polynomial Interpolation (polyinterp)
- Splines
- Piecewise Linear (pwiselinterp)
- Cubic Spline (cubicspline)
- Bezier
- Quadratic Bezier (qbezier)
- Cubic Bezier (cbezier)
- Multidimensional Interpolaters
- Bilinear (bilinear)
- Nearest Neighbor (nn)
- Applications
- Image Resizing (resizeImageNN, resizeImageBL)
- Polynomial Interpolation
- Differentiation
- Finite Differences
- One-Step (findiff)
- More Differentiators (symdiff, rdiff)
- Second Derivative (findiff2)
- Finite Differences
- Numerical Integration
- Newton-Cotes
- Midpoint Method (midpt)
- Trapezoid Method (trap)
- Simpson's Rule (simp)
- Simpson's 3/8s Rule (simp38)
- Gaussian Integration
- Driver (gaussint)
- Specific forms (gauss.hermite, gauss.laguerre, gauss.legendre)
- Adaptive Integrators
- Recursive Adaptive (adaptint)
- Romberg (romberg)
- Monte Carlo
- Monte Carlo Integration, 1D (mcint)
- Monte Carlo Integration, 2D (mcint2)
- Applications
- Shell Method for Revolved Volume (shellmethod)
- Disc Method for Revolved Volume (discmethod)
- Gini Coefficient (giniquintile)
- Newton-Cotes
- Root Finding
- Bisection Method (bisection)
- Newton's Method (newton)
- Secant Method (secant)
- Optimization
- Continuous
- Golden Section (goldsectmax, goldsectmin)
- Gradient Descent (gd, gdls, gradasc, graddsc)
- Hill Climbing (hillclimbing)
- Simulated Annealing (sa)
- Discrete
- Traveling Salesperson Problem (tspsa)
- Continuous
- Differential Equations
- Initial Value Problems
- Euler Method (euler)
- Midpoint Method (midptivp)
- Fouth-Order Runge-Kutta (rungekutta4)
- Adams-Bashforth (adamsbashforth)
- Systems of Differential Equations
- Euler Method (eulersys)
- Partial Differential Equations
- Heat Equation, 1D (heat)
- Wave Equation, 1D (wave)
- Applications
- Boundary Value Problems (bvpexample, bvpexample10)
- Initial Value Problems
- testthat
- roxygen2
- markdown
- Website for CMNA
- James P. Howard, II <jh@jameshoward.us>