Numerical analysis rewards careful thinking, but it also punishes small confusions brutally. Many of the most painful errors are not deep technical failures. They are category mistakes: mixing norms, mixing error layers, misreading diagnostics, or applying the right theorem to the wrong regime.
This article lists common mistakes that repeatedly appear in coursework, research prototypes, and production codes. Each mistake comes with a replacement habit that keeps you out of trouble.
Flagship Router PickQuad-Band WiFi 7 Gaming RouterASUS ROG Rapture GT-BE98 PRO Quad-Band WiFi 7 Gaming Router
ASUS ROG Rapture GT-BE98 PRO Quad-Band WiFi 7 Gaming Router
A flagship gaming router angle for pages about latency, wired priority, and high-end home networking for gaming setups.
- Quad-band WiFi 7
- 320MHz channel support
- Dual 10G ports
- Quad 2.5G ports
- Game acceleration features
Why it stands out
- Very strong wired and wireless spec sheet
- Premium port selection
- Useful for enthusiast gaming networks
Things to know
- Expensive
- Overkill for simpler home networks
Mistake: believing smaller steps always improve accuracy
Refining a mesh or timestep reduces discretization error, but it can increase arithmetic error. A useful mental model is a two-term error budget:
where $C h^p$ represents truncation error of order $p$, $\varepsilon$ is machine precision, and the $h^{-1}$ factor represents accumulation of rounding over roughly $1/h$ steps or operations.
The curve has a minimum. Past that point, smaller $h$ makes the total error worse.
A replacement habit:
- predict the order $p$ from theory,
- estimate the scale of $C$ from a coarse run,
- look for a plateau or a minimum in an error-versus-$h$ experiment,
- stop refining when the plot stops improving.
Mistake: treating a small residual as a small error
For linear systems $Ax=b$, the residual is $r = b – A\tilde x$. A small residual does not guarantee a small forward error $x-\tilde x$ when the system is ill-conditioned. The inequality to remember is:
where $\kappa(A)$ is the condition number in the relevant norm.
If $\kappa(A)$ is large, residual-based stopping criteria can claim success while the answer is still inaccurate.
A replacement habit:
- report both residual norm and an estimate of $\kappa(A)$ when feasible,
- use backward error language to interpret results,
- for iterative solvers, monitor error proxies that incorporate conditioning, such as preconditioned residuals.
Mistake: switching norms mid-proof or mid-plot
A stability bound proved in $L^2$ does not automatically control an $L^\infty$ error. A convergence plot made in one norm does not justify a claim stated in another.
This mistake shows up in PDE discretizations, where energy methods naturally live in $L^2$ or $H^1$, but applications might care about pointwise behavior.
A replacement habit:
- state the norm in every theorem statement and every error table,
- when you need a different norm, insert the inequality that connects them, such as inverse estimates or Sobolev embeddings, and make clear what constants depend on mesh resolution.
Mistake: assuming a method is stable because it converges on one example
Stability is a uniform statement over a class of inputs and refinement levels. A method can converge for a benign problem and still be unstable for nearby data or slightly different parameters.
This often happens in time stepping: an explicit scheme can look accurate on a coarse grid because the unstable modes are not resolved, then fail abruptly once the grid resolves them.
A replacement habit:
- test stability on a family of examples that refine $h$ and vary key parameters,
- include at least one example designed to excite the worst-case mode the scheme is known to struggle with,
- if the method has a known step restriction, treat it as part of the method, not as optional advice.
Mistake: ignoring scaling and non-dimensionalization
Poor scaling turns a well-posed problem into a numerically hostile one. Units and magnitudes matter because floating point has finite dynamic range and because conditioning depends on relative scales.
A replacement habit:
- scale variables so typical values are near one when possible,
- scale equations so coefficients are comparable in magnitude,
- interpret condition numbers and stability constants in the scaled variables, not in the raw units.
Mistake: reading a log-log plot without checking the asymptotic regime
Convergence rates are asymptotic statements. If you are not in the asymptotic regime, the slope you measure is not the order you think you are measuring.
Common symptoms:
- the slope changes dramatically across refinement levels,
- the finest points flatten due to rounding,
- the coarsest points reflect pre-asymptotic behavior.
A replacement habit:
- fit slopes only on the portion of the curve that is visibly linear on the log-log scale,
- report the refinement range used for the fit,
- include a reference slope line or a table of ratios so the reader can verify the order directly.
Mistake: confusing local error with global error
Many methods have a local defect of order $h^{p+1}$ but a global error of order $h^p$. The difference is accumulation over many steps.
A replacement habit:
- explicitly write the error recurrence,
- apply a discrete Grönwall inequality or a stability estimate to convert local to global,
- keep track of where factors like $1/h$ come from.
Mistake: treating roundoff as random noise you can ignore
Roundoff can behave like noise, but it can also be structured, especially when cancellation occurs. Subtracting two nearly equal numbers destroys significant digits. Summing a long list in a naive order can lose accuracy.
A replacement habit:
- rewrite expressions to avoid catastrophic cancellation when possible,
- use compensated summation for long reductions,
- check whether your problem involves subtracting close quantities and adjust the formulation.
Mistake: using default tolerances as if they were mathematical truth
Many scientific computing libraries choose defaults that are reasonable for generic tasks, not for your specific accuracy claim. A tolerance that is safe for one scale can be useless for another.
A replacement habit:
- relate tolerances \to a target error budget in physical or geometric units,
- scale stopping criteria by a meaningful norm of the data,
- report the tolerance and the norm used in the stopping condition so results are interpretable.
Mistake: assuming discretization preserves qualitative structure automatically
Many continuous problems have structure that matters: positivity, monotonicity, conservation, maximum principles, or invariants. Discretizations do not preserve these automatically.
A replacement habit:
- identify the structure that matters before you discretize,
- choose a method known to respect it, or add stabilization that enforces it,
- test the structure directly in computations as part of validation, not as an afterthought.
Mistake: thinking verification is the same as validation
Verification asks: did you solve the discrete equations correctly? Validation asks: do the equations represent the phenomenon you care about?
A numerical method can be verified and still be irrelevant.
A replacement habit:
- use manufactured solutions to verify convergence and implementation,
- use problem-specific invariants or experimental comparisons to validate the model,
- keep these two goals distinct in both writing and code structure.
Mistake: mixing discretization error with solver error
Many modern workflows have two approximation layers at once.
- a discretization produces a finite-dimensional problem, such as a linear system or a nonlinear residual
- an iterative solver produces an approximate solution of that finite problem
If you refine the mesh but keep the solver tolerance fixed, the solver error can dominate and you will mistakenly conclude the discretization is not converging. If you tighten the solver tolerance aggressively on a coarse mesh, you can waste work solving an imprecise model to unnecessary accuracy.
A replacement habit:
- decide an error budget and allocate part to discretization and part to the solver
- scale solver tolerances with refinement so the solver error stays below the discretization error
- when possible, measure both by monitoring a discretization indicator and a solver residual in the same norm
Mistake: using unstable differencing or interpolation formulas near the boundary
Boundary handling is a frequent hidden source of failure. A scheme can be stable in the interior and become unstable or low-order because boundary stencils are inconsistent or because ghost values are filled incorrectly.
A replacement habit:
- derive boundary stencils from the same accuracy principle used in the interior
- test boundary-only manufactured solutions where the interior is simple but boundary behavior is sharp
- measure error not only globally but also near boundaries so the diagnostic cannot hide local defects
Mistake: forgetting that floating point arithmetic is not associative
The identity $(a+b)+c = a+(b+c)$ is true in exact arithmetic but false in floating point. Reordering operations can change results, sometimes dramatically, especially when magnitudes vary widely.
A replacement habit:
- when summing many terms, order by magnitude or use compensated summation
- avoid formulas that subtract nearly equal quantities
- treat “fast vectorized reductions” as numerical objects that may need a stability argument, not as transparent replacements for exact sums
Mistake: treating Monte Carlo output as a deterministic approximation
Randomized methods and Monte Carlo integration come with statistical error. Reporting a single number without uncertainty is not an error bound.
A replacement habit:
- report an empirical variance estimate and a confidence interval
- ensure independent sampling assumptions are met or explain how dependence is handled
- check convergence by plotting error against sample size on a scale that reflects the $N^{-1/2}$ rate typical for plain Monte Carlo
Mistake: assuming a single refinement path is enough evidence
A method can look good on one mesh family and fail on another, especially on irregular grids or anisotropic refinement. Similarly, a method can pass a smooth manufactured test and fail on a solution with limited regularity.
A replacement habit:
- test at least one smooth case and one limited-regularity case
- use more than one refinement family when geometry allows it
- vary parameters that control difficulty, such as conditioning or frequency, not only the mesh size
Mistake: losing track of what was actually computed
The most avoidable failures are bookkeeping failures: a parameter is changed, a tolerance is altered, a normalization is forgotten, and the resulting plot is interpreted as if the setup were unchanged.
A replacement habit:
- log parameters, norms, and tolerances with every run
- store the discretization scale and solver settings alongside the output
- when presenting results, include the exact method variant and key settings so the conclusion is attached to the correct computation
Quick self-checks before you trust a result
When you are about to claim an algorithm works, the following checks catch a large fraction of failures.
- error decreases at the expected rate over a visible asymptotic regime
- residual is small and conditioning is not ignored
- refinements do not trigger instability
- norms are stated and consistent
- tolerances are tied to an error budget
- qualitative structure is monitored if it matters
- reference solutions are described and credible
Numerical analysis is rigorous when it refuses to confuse “it runs” with “it is accurate.” Avoiding these mistakes is less about memorizing warnings and more about building the habit of asking: what exactly is being bounded, in which norm, and under which stability guarantee.
Books by Drew Higgins
Prophecy and Its Meaning for Today
New Testament Prophecies and Their Meaning for Today
A focused study of New Testament prophecy and why it still matters for believers now.

Leave a Reply