GithubHelp home page GithubHelp logo

pippo234 / mathnet-numerics Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mathnet/mathnet-numerics

0.0 1.0 0.0 103.4 MB

Math.NET Numerics

Home Page: http://numerics.mathdotnet.com

License: Other

mathnet-numerics's Introduction

Math.NET Numerics

Math.NET Numerics is an opensource numerical library for .Net, Silverlight and Mono.

Math.NET Numerics is the numerical foundation of the Math.NET initiative, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Covered topics include special functions, linear algebra, probability models, random numbers, statistics, interpolation, integration, regression, curve fitting, integral transforms (FFT) and more.

In addition to the core .NET package (which is written entirely in C#), Numerics specifically supports F# 3.0 and 3.1 with idiomatic extension modules and maintains mathematical data structures like BigRational that originated in the F# PowerPack. If a performance boost is needed, the managed-code provider backing its linear algebra routines and decompositions can be exchanged with wrappers for optimized native implementations such as Intel MKL.

Supports Mono and .NET 4.0 and 3.5 on Linux, Mac and Windows, the portable build (PCL) also Silverlight 5, Windows Phone 8, .NET for Windows Store apps and Xamarin Android/iOS.

Math.NET Numerics is covered under the terms of the MIT/X11 license. You may therefore link to it and use it in both opensource and proprietary software projects. See also the license file in the root folder.

Maintained by Christoph Rüegg but brought to you by all our awesome contributors of Math.NET Numerics and its predecessors dnAnalytics and Math.NET Iridium. We accept contributions!

Release Notes & Changes

Installation Instructions

The recommended way to get Math.NET Numerics is to use NuGet. The following packages are provided and maintained in the public NuGet Gallery:

  • MathNet.Numerics - core package, including .Net 4, .Net 3.5 and portable/PCL builds
  • MathNet.Numerics.FSharp - optional extensions for a better F# experience
  • MathNet.Numerics.Data.Text - optional extensions for text-based matrix input/output
  • MathNet.Numerics.Data.Matlab - optional extensions for MATLAB matrix file input/output
  • MathNet.Numerics.MKL.Win-x86 - optional Linear Algebra MKL native provider
  • MathNet.Numerics.MKL.Win-x64 - optional Linear Algebra MKL native provider
  • MathNet.Numerics.Signed - strong-named version of the core package (not recommended)
  • MathNet.Numerics.FSharp.Signed - strong-named version of the F# package (not recommended)

Alternatively you can also download the binaries in Zip packages, available on CodePlex:

  • Binaries - core package and F# extensions, including .Net 4, .Net 3.5 and portable/PCL builds.
  • Signed Binaries - strong-named version of the core package (not recommended).

Supported Platforms:

  • .Net 4.0, .Net 3.5 and Mono: Windows, Linux and Mac.
  • PCL Portable Profiles 47 and 136: Silverlight 5, Windows Phone 8, .NET for Windows Store apps (Metro).
  • PCL/Xamarin: Andoid, iOS

Building Math.NET Numerics

If you do not want to use the official binaries, or if you like to modify, debug or contribute, you can compile Math.NET Numerics locally either using Visual Studio or manually with the build scripts.

  • The Visual Studio solutions should build out of the box, without any preparation steps or package restores.
  • Instead of a compatible IDE you can also build the solutions with msbuild, or on Mono with xbuild.
  • The full build including unit tests, docs, NuGet and Zip packages is using FAKE.

How to build with MSBuild/XBuild

msbuild MathNet.Numerics.sln            # only build for .Net 4 (main solution)
msbuild MathNet.Numerics.Net35Only.sln  # only build for .Net 3.5
msbuild MathNet.Numerics.Portable.sln   # full build with .Net 4, 3.5 and PCL profiles
xbuild MathNet.Numerics.sln             # build with Mono, e.g. on Linux or Mac

How to build with FAKE

build.cmd   # normal build (.Net 4.0), run unit tests
./build.sh  # normal build (.Net 4.0), run unit tests - on Linux or Mac

build.cmd Build        # normal build (.Net 4.0)
build.cmd Build full   # full build (.Net 3.5, 4.0, PCL)
build.cmd Build net35  # compatibility build (.Net 3.5)

build.cmd Test        # normal build (.Net 4.0), run unit tests
build.cmd Test full   # full build (.Net 3.5, 4.0, PCL), run all unit tests
build.cmd Test net35  # compatibility build (.Net 3.5), run unit tests

build.cmd Clean  # cleanup build artifacts
build.cmd Docs   # generate documentation, normal build
build.cmd NuGet  # generate NuGet packages, full build

FAKE itself is not included in the repository but it will download and bootstrap itself automatically when build.cmd is run the first time. Note that this step is not required when using Visual Studio or msbuild directly.

Quick Links

Feeds:

Math.NET Numerics on other sites:

mathnet-numerics's People

Contributors

cdrnet avatar cuda avatar jvangael avatar alexkaratarakis avatar hany-abdelrahman avatar artyombaranovskiy avatar philcleveland avatar scottstephens avatar superbest avatar pvandervelde avatar rneatherway avatar anders9ustafsson avatar andreister avatar candychiu avatar lifebeyondfife avatar manyue avatar smoothdeveloper avatar gregor959 avatar iainsproat avatar kos59125 avatar tpetricek avatar vicpara avatar nyurik avatar paulvarkey avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.