luse_engr701_704_numericalmethods.jl
https://github.com/jmanthony3/luse_engr701_704_numericalmethods.jl
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: jmanthony3
- License: mit
- Language: Julia
- Default Branch: main
- Size: 888 KB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
LUSEENGR701704_NumericalMethods
Currently unregistered.
If one wants to use this package, then execute
julia
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, and Differential--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
Roadmap
- [x] Single-Variable Iteration (SVI)
- [x] Bisection Method
- [x] Fixed-Point Method
- [x] Secant Method
- [x] False Position
- [x] Newton-Raphson
- [ ] Interpolation methods
- [x] Cubic splines
- [x] Newton's Divided Difference
- [x] Lagrange Polynomials
- [ ] Hermite Polynomials
- [x] Linear Least Squares
- [x] Bezier Curves
- [ ] Newton's Divided Difference
- [ ] Extrapolation methods
- [ ] Richardson's Extrapolation
- [x] Solving for eigenvalues
- [x] Power Method
- [x] Inverse Power Method
- [x] QR Algorithm
- [x] Solving Systems of Equations (SOE)
- [x] Gaussian Elimination
- [x] Steepest Descent
- [x] Conjugate Gradient
- [x] Multi-Variable Iteration (MVI)
- [x] Jacobi
- [x] Gauss-Seidel
- [x] Successive Relaxation
- [ ] Initial Value Problems (IVP)
- [x] Forward Euler
- [x] Backward Euler
- [x] Improved/Modified Euler
- [ ] Runge-Kutta
- [ ] 2ⁿᵈ-Order
- [x] 4ᵗʰ-Order
- [x] Boundary Value Problems (BVP)
- [x] Linear Shooting Method
- [x] 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
Citing
See CITATION.bib for the relevant reference(s).
References
- R. Burden L., D. Faires J., and A. Burden M., Numerical Analysis, 10th ed. 20 Channel Center Street, Boston, MA 02210, USA: Cengage, 2019.
Owner
- Name: Joby M. Anthony III
- Login: jmanthony3
- Kind: user
- Location: Virginia
- Company: Liberty University
- Website: https://jmanthony3.github.io/
- Repositories: 4
- Profile: https://github.com/jmanthony3
Pursuing a PhD with Engineering under Dr. Mark Atwater to model single impact behaviors in shot peening with Integrated Computational Materials Engineering.
Citation (CITATION.bib)
@misc{LUSE_ENGR701_704_NumericalMethods-2024,
title = {LUSE_ENGR701_704_NumericalMethods.jl},
author = {Joby M. {Anthony III}},
url = {https://github.com/jmanthony3/LUSE_ENGR701_704_NumericalMethods.jl},
version = {v1.0.0},
year = {2024},
month = {9}
}
GitHub Events
Total
- Push event: 9
Last Year
- Push event: 9
Dependencies
- actions/checkout v4 composite
- julia-actions/cache v1 composite
- julia-actions/julia-buildpkg v1 composite
- julia-actions/julia-runtest v1 composite
- julia-actions/setup-julia v1 composite
- actions/checkout v2 composite
- julia-actions/setup-julia v1 composite
- JuliaRegistries/TagBot v1 composite