Mathematics in C#

General

Complex Numbers

Illustrates how to work with complex numbers using the DoubleComplex structure.

Show code.

Elementary Functions

Illustrates how to use additional elementary functions.

Show code.

BigNumbers

Illustrates the basic use of the arbitrary precision classes: BigInteger, BigRational, BigFloat.

Show code.

Prime Numbers

Illustrates working with prime numbers and the IntegerMath class in the Extreme.Mathematics namespace.

Show code.

FFT/Fourier Transforms

Illustrates how to compute the forward and inverse Fourier transform of a real or complex signal using classes in the Extreme.Mathematics.SignalProcessing namespace.

Show code.

Generic Algorithms

Illustrates how to write algorithms that are generic over the numerical type of the arguments.

Show code.

Calculus

Basic Integration

Illustrates the basic numerical integration classes.

Show code.

Advanced Integration

Illustrates more advanced numerical integration using the AdaptiveIntegrator class.

Show code.

Higher Dimensional Numerical Integration

Illustrates numerical integration of functions in higher dimensions using classes in the Extreme.Mathematics.Calculus namespace.

Show code.

Numerical Differentiation

Illustrates how to approximate the derivative of a function.

Show code.

Differential Equations

Illustrates integrating systems of ordinary differential equations (ODE's).

Show code.

Curves

Basic Polynomials

Illustrates the basic use of the Polynomial class .

Show code.

Advanced Polynomials

Illustrates more advanced uses of the Polynomial class, including real and complex root finding, calculating least squares polynomials and polynomial arithmetic.

Show code.

Chebyshev Series

Illustrates the basic use of the ChebyshevSeries class .

Show code.

Curve Fitting and Interpolation

Linear Curve Fitting

Illustrates how to fit linear combinations of curves to data using the LinearCurveFitter class and other classes in the Extreme.Mathematics.Curves namespace.

Show code.

Nonlinear Curve Fitting

Illustrates nonlinear least squares curve fitting of predefined and user-defined curves using the NonlinearCurveFitter class.

Show code.

Piecewise Curves

Illustrates working with piecewise constant and piecewise linear curves using classes from the Extreme.Mathematics.Curves namespace.

Show code.

Cubic Splines

Illustrates using natural and clamped cubic splines for interpolation using classes in the Extreme.Mathematics.LinearAlgebra namespace.

Show code.

Solving Equations

Newton-Raphson Equation Solver

Illustrates the use of the NewtonRaphsonSolver class for solving equations in one variable and related functions for numerical differentiation.

Show code.

Root Bracketing Solvers

Illustrates the use of the root bracketing solvers for solving equations in one variable.

Show code.

Nonlinear Systems

Illustrates the use of the NewtonRaphsonSystemSolver and DoglegSystemSolver classes for solving systems of nonlinear equations.

Show code.

Optimization

Optimization In One Dimension

Illustrates the use of the Brent and Golden Section optimizer classes in the Extreme.Mathematics.Optimization namespace for one-dimensional optimization.

Show code.

Optimization In Multiple Dimensions

Illustrates the use of the multi-dimensional optimizer classes in the Extreme.Mathematics.Optimization namespace for optimization in multiple dimensions.

Show code.

Linear Programming

Illustrates solving linear programming (LP) problems using classes in the Extreme.Mathematics.Optimization.LinearProgramming namespace.

Show code.

Mixed Integer Programming

Illustrates how to solve mixed integer programming by solving Sudoku puzzles using the linear programming solver.

Show code.

Quadratic Programming

Illustrates how to solve optimization problems a quadratic objective function and linear constraints using classes in the Extreme.Mathematics.Optimization namespace.

Show code.

Nonlinear Programming

Illustrates solving nonlinear programs (optimization problems with linear or nonlinear constraints) using the NonlinearProgram and related classes.

Show code.

Random numbers and Quasi-Random Sequences

Random Number Generators

Illustrates how to use specialized random number generator classes in the Extreme.Statistics.Random namespace.

Show code.

Non-Uniform Random Numbers

Illustrates how to generate random numbers from a non-uniform distribution.

Show code.

Quasi-Random Sequences

Illustrates how to generate quasi-random sequences like Fauré and Sobol sequences using classes in the Extreme.Statistics.Random namespace.

Show code.