Skip to content
fernandevdazaPublic

About

Numerical methods lab + CAS: step-by-step iterations, exact symbolic math, faithful plots, error analysis and Scilab export. Web & desktop, English/Spanish.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

English · Español

NumLab — Numerical methods, step by step

Type a function, pick a method, and NumLab shows every iteration, the plot, the error
and a step-by-step derivation with the numbers plugged in — exactly as you would write it on an exam.
Plus a symbolic CAS for everything in between.

version 0.3.2 CI 906 tests 58 methods symbolic CAS English and Spanish
React 19 TypeScript Electron exports to Scilab MIT license

🌐 Try it in your browser · ⬇️ Download for desktop · 🛠️ Develop

58 pages Symbolic CAS 906 tests 3 platforms 2 languages
a full numerical methods course derivatives · integrals · limits · solve against textbook examples macOS · Windows · Linux English · Spanish

Works offline, runs locally. Every computation happens in your browser or in the desktop app: no server, no accounts, no tracking.


✨ Features

  • Exam-style step by step. Every method renders its formulas with KaTeX and plugs the actual numbers into the first iterations: Gaussian elimination multipliers, mantissa bits, divided differences, Runge–Kutta stages…
  • A workspace like TI-Nspire or GeoGebra. Pages with a calculator, graphs (sliders, points, implicit and parametric curves, pan and zoom), a spreadsheet (formulas, named columns as lists, linreg, paste from Excel) and notes with TeX — all sharing the same variables. Save and open documents as .numlab.json.
  • A real CAS inside. Exact derivatives, antiderivatives and definite integrals, limits, Taylor series, simplification, factoring, partial fractions, equation and system solving, and matrix algebra — and the same symbolic engine powers the methods (exact Newton derivatives, exact Taylor coefficients, exact reference integrals).
  • Faithful to the course. Notation, stopping criteria and method variants follow the course textbook; its worked examples are one click away ("Ex. 2.8", "Ex. 4.12"…) and reproduce its tables digit by digit — including the 4-digit calculator when an example uses one.
  • Plots that don't lie. Adaptive sampling never misses narrow peaks or oscillations, and it breaks the curve at asymptotes and jumps instead of drawing fake vertical lines.
  • Error and convergence analysis. Estimated order of convergence, theoretical bounds vs. actual error, significant digits and condition numbers.
  • Scilab export. Every page generates a ready-to-run .sce script with your data; tables export to CSV.
  • Pleasant to use. Symbol keyboard, built-in help (?), instant search (⌘K / Ctrl+K), light and dark themes, mobile-friendly layout, and an English/Spanish interface (auto-detected, switch anytime).

🧮 The CAS

A notebook-style console with exact symbolic results (rendered in TeX), plus a function plotter that marks roots, extrema, double roots and intersections.

Category Commands
Calculus diff(f, x, n) · integrate(f, x) · integrate(f, x, a, b) (also ±∞) · limit(f, x, a) · taylor(f, x, x0, n) · sum(f, k, a, b)
Algebra simplify · expand · factor · partfrac · solve(eq, x) · solve_system(eq1, eq2, …) · roots(f, a, b)
Matrices A = [1 2; 3 4] · det · inv · A' · rref · lu · lusolve(A, b) · eig · cond · norm(A, p)
Everything else variables and user functions (f(x) = x^3 - 2x - 5), N(expr), plot(f, g, a, b), Scilab syntax (%pi, [1 2; 3 4])

Spanish command names (derivada, integrar, resolver, graficar…) work too.

📸 Screenshots

Workspace

Workspace · calculator, graphs, spreadsheet and notes sharing variables

Home

Home · course topics and exam countdown

CAS

Symbolic calculator (CAS) · exact results in TeX

Newton–Raphson

Newton–Raphson · iterations, tangents and order of convergence

Gaussian elimination

Gaussian elimination · pivoting and the augmented matrix, step by step

16-bit binary machine

16-bit binary machine · sign, exponent and mantissa

Simpson's rule

Simpson's rule · exact symbolic reference and error bound

Cubic splines

Cubic splines · natural and clamped

Runge–Kutta

Runge–Kutta · stages, exact solution and global error

Function plotter

Function plotter · roots, extrema and intersections

📚 Contents

Topic Methods
1 · Number representation and errors Base conversion · 16-bit binary machine · IEEE 754 · Floating-point system F(β, t, L, U) · Machine epsilon · Absolute and relative error · 7-digit decimal machine · Error propagation · Catastrophic cancellation · Condition number · Numerical stability · Taylor series
2 · Nonlinear equations Bisection · Fixed point · Aitken (Δ²) · Steffensen · Newton–Raphson · Secant · False position · Modified Newton (multiple roots) · Comparison
3 · Systems of linear equations Gaussian elimination · Thomas algorithm · LU factorization · Jacobi · Gauss–Seidel and SOR · Condition number · Newton for systems · Fixed point for systems · Power method
4 · Interpolation Lagrange · Divided differences · Finite differences · Error estimate · Runge phenomenon · Cubic splines
5 · Numerical differentiation and integration Finite differences · Trapezoidal rule · Simpson's rule · Newton–Cotes · Romberg–Richardson · Gauss–Legendre · Double integrals · Comparison
6 · Ordinary differential equations Euler · Midpoint · Trapezoidal / modified Euler · Implicit trapezoidal · Adams–Moulton · Taylor · Runge–Kutta · First-order systems · Higher-order equations · Comparison · Pursuit missile in R³
Tools Workspace (calculator, graphs, spreadsheet, notes) · Symbolic calculator (CAS) · Function plotter

⬇️ Download

Get the installer for your system from Releases:

System File
macOS (Apple Silicon and Intel) NumLab-x.y.z-mac-arm64.dmg · NumLab-x.y.z-mac-x64.dmg
Windows NumLab-x.y.z-win-x64.exe
Linux NumLab-x.y.z-linux-*.AppImage · NumLab-x.y.z-linux-*.deb

Note

The apps are not code-signed yet. macOS: the first time, right-click the app → Open (or run xattr -cr /Applications/NumLab.app). Windows: if SmartScreen appears, click More info → Run anyway.

Don't want to install anything? The web version is the same app.

✅ Verification

Correctness comes first:

pnpm test
Test What it checks
test:metodos 906 assertions reproducing the worked examples of all six chapters of the course textbook, Burden & Faires tables and closed forms. When a book contains an arithmetic slip, the app uses the correct value and the test documents it.
test:graficas That the plotted curve stays close to the true function: narrow peaks, oscillations, asymptotes and jumps.
test:tex That no formula loses its backslashes inside the code (\;, \frac…).

🛠️ Development

Requirements: Node.js 22+ and pnpm.

pnpm install
pnpm dev            # web version at http://localhost:5173
pnpm desktop        # build and open the desktop app (Electron)
pnpm dist           # build the installer for your system into release/
pnpm capturas       # regenerate the icon, banners and screenshots in docs/
src/
  modules/<topic>/    one module per topic: pure algorithms, pages, theory and index.ts (registry)
  components/         shared UI (MethodPage, DataTable, ScilabCode, Plot, help, symbol keyboard…)
  lib/                expressions (mathjs), number formatting, plot sampling
  i18n.ts             English/Spanish: L('texto', 'text')
  config.ts           course data (name, exam dates, repository)
electron/             desktop app main process
scripts/              tests and image generation
.github/workflows/    CI, web demo (GitHub Pages) and desktop installers

Using it for your own course? Edit src/config.ts. Leave the exam dates empty to hide the countdown.

Releasing: push a vX.Y.Z tag (matching version in package.json). GitHub Actions builds the installers for all three platforms and attaches them to a draft release.

🤝 Contributing

Contributions are welcome: numerical bug reports, new methods, UI improvements and translations. See CONTRIBUTING.md.

📄 License

MIT © 2026 Fernando Daza and contributors.

Built with React, TypeScript, Vite, mathjs, nerdamer, KaTeX, Plotly and Electron.

About

Numerical methods lab + CAS: step-by-step iterations, exact symbolic math, faithful plots, error analysis and Scilab export. Web & desktop, English/Spanish.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages