NMath (产品编号:12307)

NMath是一个.NET的数学库,包含了NET平台上的面向对象数字计算的基础类。

标签:数学计算

开发商: CenterSpace

当前版本: v6.2

产品类型:控件

产品功能:算法

平台语言:.NET

开源水平:源码可选

用户推荐:

用户评分:

本产品的分类与介绍仅供参考,具体以商家网站介绍为准,如有疑问请来电 023-68661681 咨询。

同类软件推荐:

optiGA
optiGA

optiGA是用于遗传算法 (GA) 的ActiveX 控件(.OCX)

XFlows
XFlows

针对XML和XSLT的综合编辑器,支持批处理模式和用户界面模式

中文   |   英文
阅读更多
NMath
NMathNMath套包中基础的.NET函数库,它包含了复数类,通用向量与矩阵类,结构化稀疏矩阵类与因式分解,通用稀疏矩阵类与因式分解,通用矩阵分解,最小二乘解,随机数生成器,快速傅里叶变换(FFT算法) ,数值积分与微分方法,函数最小化,曲线拟合,求根法,线性与非线性编程等内容。
需要培训、定制、外包?请联系我们!企业QQ:800018081 慧都专业技术团队帮助您提高效率,节省成本,降低风险!

关于本产品的分类与介绍仅供参考,精准产品资料以官网介绍为准,如需购买请先行测试。

产品特点如下: 

  • 单精度和双精度复数类

  • 为以下四种数据类型提供全功能的向量和矩阵类:单精度浮点数,双精度浮点数,单精度复数和双精度复数。

  • 利用切片和排列灵活的标定指数。

  • 重载那些传统意义的运算符,使其支持.NET语言,相当于那些没有的命名的方法(Add(), Subtract()等)。

  • 结构稀疏的矩阵类的全部特征包括,三角形矩阵,对称矩阵,埃米特共轭矩阵,,三对角矩阵,带状对称矩阵和带状埃米特共轭矩阵。

  • 一般矩阵之间和结构稀疏矩阵类型之间的转换函数。

  • 结构稀疏矩阵置换,计算内积和计算矩阵范数的函数。

  • 结构稀疏矩阵的分解类包括,带状矩阵和三对角线矩阵的LU分解,对称矩阵和埃米特共轭矩阵的Bunch-Kaufman分解和对称矩阵和埃米特共轭正定矩阵的Cholesky分解。这些矩阵分解一旦建成,就可以用来求解线性系统和计算行列式,求逆,和条件数。 

  • 一般稀疏向量和矩阵类和矩阵分解类.

  • 一般矩阵的正交分解类,包括QR分解类和单值分解(SVD)类。

  • 一般矩阵的高等最小平方分解类,包括Cholesky, QR, and SVD.

  • 一般矩阵的LU分解,以及求解线性系统,计算行列式,求逆和条件数的函数。

  • 解决对称,埃尔米特和非对称特征值问题的类 

  • 标准数值函数的扩展,如与向量,矩阵和复数类协同使用的Cos(), Sqrt(), and Exp()函数。

  • 各种概率分布的随机数生成。

  • 快速傅立叶变换和线性旋积和相关

  • 支持数值积分(Romberg and Gauss-Kronrod methods),微分(Ridders' method)和代数运算函数的单变量封装函数的类

  • 多项式封装,插值和精确的积分和微分。 

  • 用黄金分割搜索和Brent方法最小化单变量函数的类

  • 用单形法,鲍威尔的方向设置法,共轭梯度法和变尺度(或类似牛顿法)法最小化多变量函数的类。 

  • 模拟退火法

  • 单形法线性规划

  • 最小平方的多项式拟合

  • 非线性的最小平方最小化,曲线拟合和曲面拟合

  • 用正割法,Ridders法和 Newton-Raphson 法查找单变量函数的根的类

  • 二元函数的二重积分的数值方法 

  • 用Trust-Region方法和Levenberg-Marquardt方法的变体最小化非线性最小平方

  • 非线性最小平方的曲线拟合和曲面拟合

  • 用标准的,NET机制的完全持久化数据类

  • 与ADO.NET的整合

线性规划

NMath中有2个类被用于线性规划(LP)的问题,第一个类LinearProgrammingProblem用来封装标准的LP问题,第二个类MixedIntegerLinearProgrammingProblem用来封装包含整数或二进制约束的的LP问题。

PrimalSimplexSolver使用初始单纯形法(primal simplex method)解决线性规划的问题,而类DualSimplexSolver则是使用了对偶单纯形法(dual simplex method)。单纯形法通过在一个单纯形的顶点上构建初始解来处理线性规划的问题,然后沿着单纯形的边沿到达顶点,通过依次筛选目标函数中更高的数值直到最优化。


线性规划文档:
NMath用户指南提供了相关的背景信息
线性规划代码示例:
LinearProgrammingExample [C#]  [VB]
解决普通线性规划问题的代码示例。
PrimalDualSimplexExample [C#]  [VB]
使用初始单纯形和对偶单纯型法解决Klee-Minty多面体线性规划问题的代码示例。
MixedIntLinearProgrammingExample [C#]  [VB]
解决在限制变量为整数的情况下线性规划问题的代码示例。
BinaryLinearProgrammingExample [C#]  [VB]
解决在所有变量都为二进制数的情况下线性规划问题的代码示例。

随机数生成器

NMath可提供随机生成器功能,用于生成各种概率分布的随机偏离,包括β分布二项分布指数分布γ分布几何分布对数正态分布正态分布Pareto分布Poisson分布三角型分布均匀分布以及Weibull分布。这个功能可以用于包括VB.NET和F#在内的任意.NET语言。

NMath库是 CenterSpace软件公司NMath Suite的数学库的一部分,它提供了用于 .NET平台上数学、金融、工程和科学应用程序的构建模块。其特性包括了矩阵向量类、线性代数、随机数生成器、数值积分法、插值法、统计、生物统计学、多元线性回归、方差分析(ANOVA)、优化和通往公共域计算程序包(含线性代数基本子程序及线性代数包)的面向对象接口,所有NMath的日常活动都可从包括C#、 Visual Basic.NET和 F#在内的任何 .NET语言上调用。


随机生成器文档:

NMath参考指南中包含了下列表格里可用的生成器类API文档:

                          Class
                            Distribution
                            Beta distribution(β分布
                          Binomial distribution(二项分布
                            Exponential distribution(指数分布
                            Gamma distribution(γ分布
                          Geometric distribution(几何分布
                            Log-Normal distribution(对数正态分布
                            Normal distribution(正态分布
                          Pareto distribution(Pareto分布
                          Triangular distribution(三角型分布
                            Uniform distribution(均匀分布
                            Weibull distribution(Weibull分布

所有的NMath内核生成器都通过抽象基类RandomNumberGenerator的公共接口进行继承。

随机生成器代码示例:
RandomNumberExample [C#]  [VB]
如何使用RandGenNormal类生成正态分布的随机数,并将其用于直方图的示例。
AdvancedRNGExample [C#]  [VB]
如何使用指定的均匀偏离法创建用于特定概率分布的随机数字生成器的示例。
MonteCarloRNGExample [C#]  [VB]
如何使用蒙特卡罗法和均匀随机数生成器类RandGenUniform计算π的近似值

快速傅里叶变换

NMath作为一个.NET类库可提供一般向量与矩阵类、复数类、数值微分与积分、最小化与求根类以及用于信号处理的相关性、卷积和快速傅里叶变换(FFT)类。

NMath的快速傅里叶变换包含了单双精度的一维和二维傅里叶变换,并且 NMath还包含了傅里叶变换的正向、逆向、实数、复数等类型的类,支持任意长度的输入数据。所有的FFT实现使用的是在单一和多核机器上性能最优秀的类算法。易用性和内存效率可通过使用正向实数快速傅里叶变换的标准对称信号压缩来实现,其提供的阅读器类能够像遍历数组那样轻松读取压缩结果。NMath的 FFT算法性能属于世界一流,最适宜运行在英特尔处理器上。该功能可用于包括VB.NET 和F#在内的任意 .NET语言。


快速傅里叶变换文档:
                            Class
Distribution
计算一维和二维的双精度、正向、实数FFT。
计算一维和二维的双精度、正逆向、复数FFT。
计算由正向实数一维FFT生成的逆向实数FFT的对称信号。
用于管理数据集的抵消和跨过的先进灵活的一维FFT类
用于配置一般FFT类的FFT配置类
助手类,生成并返回实数正向FFT类自身,帮助读取复-共轭对称信号
快速傅里叶转换代码示例:
Examples using the 1D FFT classes [C#]  [VB]
Examples using the 2D FFT classes [C#]  [VB]
类型 标题 发布时间
版本更新 NMath v6.2

.NET数学库NMath更新至v6.2,移除了32位系统上的GPU计算的支持。

2016-08-17 17:31:24.000
版本更新 NMath v6.1

NMath v6.1将NMath Premium GPU code升级至CUDA 6

2015-05-04 17:25:22.000
文章 .NET数学库NMath使用教程——矩阵类函数

NMath是NMath套包中基础的.NET函数库,它包含了复数类,通用向量与矩阵类,结构化稀疏矩阵类与因式分解,通用稀疏矩阵类与因式分解,通用矩阵分解,最小二乘解等内容。本节展示NMath数学库中的矩阵类函数。

2019-07-01 09:34:06.980
文章 .NET数学库NMath使用教程——通用函数

NMath是NMath套包中基础的.NET函数库,它包含了复数类,通用向量与矩阵类,结构化稀疏矩阵类与因式分解,通用稀疏矩阵类与因式分解,通用矩阵分解,最小二乘解等内容。本节展示在NMatht中简单的将一元和二元函数应用于向量元素的便捷方法。

2019-06-28 13:34:15.070
演示或示例 NMath代码示例:TaskControlExample(VB)

Example showing how route individual threads to a given compute device.

2017-02-07 15:12:11.000
演示或示例 NMath代码示例:TaskControlExample(C#)

Example showing how route individual threads to a given compute device.

2017-02-07 15:11:35.000

更新时间:2017-05-27 14:34:10.000 | 录入时间:2009-11-16 11:52:13.000 | 责任编辑:况鱼杰

登录慧都网发表评论登录


152*3183790 2016-10-14 09:16:24.000
0

可以,收藏下,这工具不错。


叮叮 2015-01-22 17:01:28.000
0

111


浪漫王子 2015-01-22 15:22:23.000
0

NMath为解决MS VS C ++ / CLI.NET语言的数值问题,提供了简单、方便的工具。


慧都网友 2015-01-22 14:14:50.000
0

如果性能,文档和可靠的技术支持,对你很重要,那么NMath就是你所需要的。在我们的应用中,我们并行大,稀疏Ax = b的系统解决方案。使用NMath,我们看到了Math.NET显著的性能提升。此外,NMath有一个非常大的一套满足我们的需要在其他数据方面,以及类,我们非常高兴与NMath的性能和高度推荐给其他人,这个库是你的必须选择。


慧都网友 2010-04-26 17:03:24.000
0

功能挺多的,支持矩阵的相关基本计算,不过比较复制,想完全发挥其作用,还要花费些时间!


相关产品
optiGA

optiGA是用于遗传算法 (GA) 的ActiveX 控件(.OCX)

XFlows

针对XML和XSLT的综合编辑器,支持批处理模式和用户界面模式

JFormula

一款用来执行各种表达式的Java库(布尔数学体系,数学,选择式……)

JServices

Java应用程序管理框架,包括工具管理、状态监控等常用功能,可大大节省开发时间

英特尔 数学内核库 Windows 版

经过高度优化的线程安全数学函数,对于英特尔平台上性能要求很高的工程、科学及金融等领域的应用程序,都可以大幅提高其性能

相关厂商
在线客服 在线QQ 电话咨询
400-700-1020
反馈
在线客服系统
live chat