Extreme Optimization > Sample Applications > M#: The .NET Language for technical Computing

Extreme Optimization Sample Applications

M#: The .NET Language for Technical Computing

Click to see a larger image.

Introduction
Reference

Introduction

The Extreme Optimization Mathematics Library.for .NET contains extensive support for numerical linear algebra. To illustrate the range and versatility of the linear algebra classes, we created M#: the the .NET language for numerical computing. M# comes with a complete environment for linear algebra computations. The language (pronounced "M sharp") implements a subset of the Matlab language. Data types supported are boolean values, scalars, vectors, matrices and strings. It supports control flow constructs such as if, for, and while, as well as a large number of built-in functions.

Reference

The following tables list the operators and functions supported by the M# language:

Operator  Description
+ Addition, unary plus.
- Subtraction, unary minus.
*  Multiplication, matrix multiplication.
/  Division, solution of linear system.
\  Backwards division, solution of linear system.
^  Raise a matrix or number to a power.
.*  Componentwise multiplication.
./ Componentwise division.
.\  Componentwise backward division.
.^  Componentwise power operator.
'  Matrix transpose.
== ~= < > <= >=   Relational operators.
:  Colon ('range') operator.
Table 1. Supported operators. 

Function  Description
size  Size of a matrix.
numel Number of elements.
cat  Concatenate matrices.
horzcat  Concatenate matrices horizontally.
vertcat  Concatenate matrices vertically.
repmat  Tile a matrix horizontally and vertically.
flipud  Flip a matrix horizontally.
fliplr  Flip a matrix vertically.
find Find non-zero elements of a matrix.
tril Extract lower triangular matrix.
triu Extract upper triangular matrix.
Table 2. Supported array operations. 

Function  Description
sum  Sum of elements in matrix columns.
cumsum Cumulative sum of elements in matrix columns.
prod  Product of elements in matrix columns.
cumprod  Cumulative product of elements in matrix columns.
min  Return largest component(s).
max  Return smallest component(s).
Table 3. Supported matrix operations. 

Function  Description
zeros  Creates a matrix of all zeros.
ones Creates a matrix of all ones.
eye  Creates an identity matrix.
rand  Creates a matrix with random components.
magic  Creates a magic square.
hilb  Creates a Hilbert matrix.
pascal  Creates a part of the Pascal triangle..
linspace   Creates a vector of equally spaced components.
logspace   Creates a vector of logarithmically spaced components.
Table 4. Supported special matrices. 

Function  Description
det  Determinant of a matrix.
trace Trace of a matrix.
inv  Inverse matrix.
rcond  Estimate for the reciprocal of the condition number.
lu  LU decomposition of a matrix.
qr  QR decomposition of a matrix..
Table 5. Supported linear algebra operations. 

Function  Description
blanks  Returns a string of spaces.
deblank  Removes trailing spaces from a string.
findstr  Finds all occurrances of a string in another string.
lower  Converts a string to lower case.
strcat Concatenates two or more strings.
strcmp  Compares two strings for equality.
strcmpi  Compares two strings for equality independent of case.
strjust  Aligns a string.
upper  Converts a string to upper case.
Table 6. Supported string functions. 

Overview
Introduction
Features
Documentation
QuickStart Samples
Sample Applications
Downloads
Get it now!
Download trial version
How to Buy
Information
Resources
Contact Us
Search

"The Extreme Optimization Statistics Library for .NET is a major boon for those doing statistical work in .NET. I strongly recommend this product."
- Marc Brooks

"I have made it my mission to institutionalize the value of good API design.  I strongly believe that this is key to making developers more productive and happy on our platform. It is clear that you value good API design in your work, and take to heart developer productivity and synergy with the .NET framework."
- Brad Abrams,
Lead Program Manager, Microsoft.

This is a partial list of companies who are using our libraries:
ABB Robotics
Allstate
Applied Materials
Arcam
Astra Schedule
Babson College
Canadian Council on Learning
Canyon Associates
Caxton Associates
CECity
Constellation Energy
CreditSights
DeepOcean
Duke University
Dynamotive
Elecsoft
Engelhard Corporation
Epcor
Equipoise Software
Galileo International
GAM UK
Gammex
GlaxoSmithKline
Global Matrix
The Hartford
Infinera Corporation
Intel
JDS Uniphase
LaBranche & Co.
Learning & Skills Council
Jacobs Consultancy
Litman Gregory
Lucas Systems
Malvern Instruments
Medrio
Merck & Co.
Mintera.
Monitor Software
MorningStar
NanoString Technologies
Paletta Invent
Parametric Portfolio Associates
Prosanos
RATA Associates
RiskShield
Ramboll
Standard & Poor's
Strategic Analysis Corporation
Univ. of Alicante
Univ. of South Carolina
vielife
Xerox
US Army