TOC |
Previous |
Next |
Index
Chapter 2. The Core Namespace
(.NET, C#, CSharp, Visual Basic, VB.NET)
The CenterSpace.NMath.Core namespace is the foundational NMath namespace. It provides:
- Single- and double-precision complex number classes.
- Full-featured vector and matrix classes for four datatypes: single- and double-precision floating point numbers, and single- and double-precision complex numbers.
- Flexible indexing using slices and ranges.
- Overloaded arithmetic operators with their conventional meanings for those .NET languages that support them, and equivalent named methods (Add(), Subtract(), and so on) for those that do not.
- Extension of standard mathematical functions, such as Cos(), Sqrt(), and Exp(), to work with vectors, matrices, and complex number classes.
- LU factorization for a matrix, as well as functions for solving linear systems, computing determinants, inverses, and condition numbers.
- Least Squares solutions.
- Random number generation from various probability distributions.
- Fast Fourier Transforms (FFTs), and linear convolution and correlation.
- Classes for encapsulating functions of one variable, with support for numerical integration (Romberg and Gauss-Kronrod methods), differentiation (Ridders' method), and algebraic manipulation of functions.
- Polynomial encapsulation, interpolation, and exact differentiation and integration.
- Data filtering, including a moving average filter and a Savitzky-Golay smoothing filter.
To avoid using fully qualified names, preface your code with an appropriate namespace statement. For example, in C#:
using CenterSpace.NMath.Core;
In Visual Basic.NET:
imports CenterSpace.NMath.Core
TOC |
Previous |
Next |
Index