Skip to content

Latest commit

 

History

History
194 lines (117 loc) · 9.06 KB

File metadata and controls

194 lines (117 loc) · 9.06 KB

Numeric data structures and algorithms

Table of contents


Floating-point arithmetic

Floating-point arithmetic is arithmetic in which real numbers are represented approximately to a fixed number of significant digits and scaled using an exponent in some fixed base: r = significand × baseexponent.

📝

  • The relative error due to rounding is uniform, i.e. it is independent of the magnitude of the number.
  • The binary-based floating-point system has the smallest possible wobble (a range of relative errors).

🔗

📄

IEEE 754

IEEE 754 is a technical standard for floating-point arithmetic established in 1985 by the Institute of Electrical and Electronics Engineers (IEEE).

📝

  • If two (non-extended) floating-point numbers in the same format are ordered, then they are ordered the same way when their bits are reinterpreted as sign-magnitude integers.
  • NaNs are endowed with a field of bits into which software can record, say, how and/or where the NaN came into existence; no software exists now to exploit this feature.

🔗

📄

📖

🎥

Denormal numbers

🔗

🎥


Arithmetic algorithms

Arithmetic means

To compute the arithmetic mean μ = 1 / n ∑ xi in a numerically stable way, use the following recurrence relation: μn = μn - 1 + 1 / n (xn - μn - 1).

🔗

Binomial coefficient

🔗

Division algorithms

Integer division

🔗

Horner’s method

Horner’s method is a polynomial evaluation method expressed by p(x) = a0 + a1 x + a2 x2 + ... + an xn = a0 + x (a1 + x (a2 + ... + x (an) ... )).

🔗

Kahan summation algorithm

🔗


Linear equations solution algorithms

Iterative methods

🔗

📖

Jacobi method

A recurrence relation: xk+1 = D-1 (D - A) xk + D-1 b, where the preconditioner D is the diagonal part of A: D = diag(A).

🔗

🎥


Matrix diagonalization

Jacobi eigenvalue algorithm

🔗

📖


Wavelets

🎥

📖