构建金融、工程和科学应用程序。
Extreme Optimization Numerical Libraries for .NET 是通用数学和统计类的集合。它为基于 Microsoft .NET 平台构建的技术和统计计算提供了一个完整的平台。它将数学库、向量和矩阵库以及统计库结合在一个方便的包中。
一般特征
- 即使对数学不太感兴趣的人也很容易使用。
- 通过最佳算法的优化实现实现出色的性能。
- 功能强大,足以满足最苛刻的高级用户的需求。
- 直观的对象模型。.NET 极端优化数值库中的对象以及它们之间的关系符合我们的日常概念。
数学库功能
- 一般的
- 机器浮点常量。
- 常见的数学常数。
- 扩展初等函数。
- 算法支持功能:迭代、容错、收敛测试。
- 复数
- 双精度复数值类型。
- 所有算术运算的重载运算符。
- 不支持运算符重载的语言的静态运算符函数。
- 将 System.Math 中的函数扩展到复杂参数。
- 支持复数无穷大和复数非数字 (NaN)。
- 复杂的向量和矩阵类。
- 数值积分与微分
- 数值微分。
- 使用辛普森规则和隆伯格方法进行数值积分。
- 非自适应高斯-克朗罗德数值积分器。
- 自适应高斯-克朗罗德数值积分器。
- 无限间隔积分。
- 具有奇点和/或不连续性的函数的优化。
- 六种集成规则可供选择,或提供您自己的规则。
- 二维或更多维度的积分。
- 曲线拟合和插值
- 使用多项式、三次样条、分段常数和线性曲线进行插值。
- 使用多项式或任意函数进行线性最小二乘拟合。
- 使用预定义函数或您自己的函数进行非线性最小二乘。
- 预定义的非线性曲线:指数、有理、高斯、洛伦兹、4 和 5 参数逻辑。
- 加权最小二乘法,具有 4 个预定义的权重函数。
- 曲线参数的缩放。
- 曲线参数的约束。
- 曲线
- 使用数学曲线的面向对象方法。
- 方法:求值、导数、定积分、正切、求根。
- 许多基本类型的曲线:常数、直线、二次曲线、多项式、三次样条、切比雪夫近似、任意函数的线性组合。
- 解方程
- 多项式的实根和复根。
- 任意函数的根:二分法、误报法、Dekker-Brent 法和 Newton-Raphson 法。
- 联立线性方程组。
- 非线性方程组:鲍威尔混合“狗腿”法、牛顿法。
- 最小二乘解。
- 优化
- 一维优化:布伦特算法,黄金分割搜索。
- N 维拟牛顿法:BFGS 和 DFP 变体。
- N 维共轭梯度法:Fletcher-Reeves 和 Polak-Ribière 变体。
- 鲍威尔共轭梯度法。
- Nelder 和 Mead 的下坡单纯形法。
- Levenberg-Marquardt 非线性最小二乘法。
- 线搜索算法:Moré-Thuente、二次、单位。
- 线性程序求解器:基于修订的单纯形法。
- 线性程序求解器:从 MPS 文件导入。
- 信号处理
- 真正的一维和二维快速傅立叶变换。
- 复杂的二维快速傅立叶变换。
- 因子 2、3、4、5 的特殊代码。
- 实数和复数卷积。
- 托管、32 位和 64 位本机实现。
- 特殊功能
- 标准 .NET Framework 类库中未包含 40 多个特殊函数。
- 组合函数:阶乘、组合、变体等等。
- 数论函数:最大公约数、最小公倍数、质因数分解、素性测试。
- Gamma 及相关函数,包括不完全和正则化 gamma 函数、digamma 函数、beta 函数、调和数。
- 实数和复数的双曲和反双曲函数。
- 第一类和第二类普通贝塞尔函数和修正贝塞尔函数。
- 艾里函数及其导数。
- 指数积分、正弦余弦积分、对数积分。
矢量和矩阵库功能
- 一般的
- 单精度、双精度或四精度实数或复数分量。
- 基于标准 BLAS 和 LAPACK 例程。
- 100% 托管实施,确保安全性、便携性和小尺寸。
- 基于英特尔® 数学核心库的本机处理器优化实施,可提高大尺寸的速度。
- 本机 64 位支持。
- GPU计算
- GPU 计算:将计算卸载到 GPU。
- 数据尽可能长时间地保留在 GPU 上,以获得最佳性能。
- 向量
- 密集的向量。
- 带向量。
- 常数向量。
- 行、列和对角向量。
- 矢量视图。
- 向量运算
- 基本算术运算。
- 逐元素操作。
- 重载算术运算符。
- 范数,点积。
- 最大值和最小值。
- 向量函数(正弦、余弦等)
- 矩阵
- 一般矩阵。
- 三角矩阵。
- 实对称矩阵和复埃尔米特矩阵。
- 带状矩阵。
- 对角矩阵。
- 矩阵视图。
- 矩阵运算
- 基本算术运算。
- 矩阵向量积。
- 重载算术运算。
- 逐元素操作。
- 行和列缩放。
- 规范、等级、条件数。
- 奇异值、特征值和特征向量。
- 矩阵分解
- LU 分解。
- QR 分解。
- 乔列斯基分解。
- 奇异值分解。
- 对称特征值分解。
- 非对称特征值分解。
- 带状 LU 和 Cholesky 分解。
- 稀疏矩阵
- 稀疏向量。
- 稀疏矩阵。
- 压缩稀疏列格式的矩阵。
- 稀疏 LU 分解。
- 读取 Matrix Market 格式的矩阵。
- 线性方程和最小二乘法
- 用于矩阵和分解的共享 API。
- 行列式、逆元、数值等级、条件数。
- 求解具有 1 个或多个右侧的方程。
- 使用 QR 或奇异值分解的最小二乘解决方案。
- 摩尔-彭罗斯伪逆。
- 非负最小二乘法 (NNLS)。
统计库功能
- 描述性统计
- 集中趋势的度量:平均值、中位数、截尾平均值、调和平均值、几何平均值。
- 尺度测量:方差、标准差、极差、四分位距、平均值和中位数的绝对偏差。
- 高矩:偏度、峰度。
- 概率分布
- 概率密度函数 (PDF)。
- 累积分布函数(CDF)。
- 百分位数或逆累积分布函数。
- 矩:均值、方差、偏度和峰度。
- 从任何分布生成随机样本。
- 选定分布的参数估计。
- 连续概率分布
- 贝塔分布。
- 柯西分布。
- 卡方分布。
- Erlang 分布。
- 指数分布。
- F分布。
- 伽马分布。
- 广义帕累托分布。
- 甘贝尔分布。
- 拉普拉斯分布。
- 物流配送。
- 对数正态分布。
- 正态分布。
- 帕累托分布。
- 分段分布。
- 瑞利分布。
- 学生 t 分布。
- 转换后的 beta 分布。
- 变换后的伽玛分布。
- 三角形分布。
- 均匀分布。
- 威布尔分布。
- 离散概率分布
- 伯努利分布。
- 二项分布。
- 几何分布。
- 超几何分布。
- 负二项分布。
- 泊松分布。
- 均匀分布。
- 多元概率分布
- 多元正态分布。
- 狄利克雷分布。
- 直方图
- 一维直方图。
- 与直方图相关的概率分布。
- 一般线性模型
- 一般线性模型和广义线性模型计算的基础设施。
- 方差分析。
- 回归分析。
- 模型特定的假设检验。
- 方差分析 (ANOVA)
- 一向和双向方差分析。
- 具有重复测量的单向方差分析。
- 回归分析
- 简单回归、多元回归和多项式回归。
- 非线性回归。
- 逻辑回归。
- 广义线性模型。
- 灵活的回归模型。
- 方差-协方差矩阵、回归矩阵。
- 回归参数的置信区间和显着性检验。
- 时间序列分析
- 将多个观察变量视为一个单元。
- 更改时间序列的频率。
- 自动应用预定义的聚合器。
- 高级聚合器:成交量加权平均。
- 时间序列数据的转换
- 滞后时间序列、总和、乘积。
- 变化、变化百分比、增长率。
- 推断变化、变化百分比、增长率。
- 期间至今的总和与差异。
- 简单、指数、加权移动平均线。
- Savitsky-Golay 平滑。
- 多元模型
- 主成分分析(PCA)。
- 层次聚类。
- K-均值聚类。
- 统计检验
- 均值检验:一个样本 z 检验,一个样本 t 检验。
- 配对和不配对的双样本 t 检验,用于检测两个样本均值之间的差异。
- 两个样本的比率 z 检验。
- 一个样本卡方方差检验。
- 两个方差之比的 F 检验。
- 一和两个样本柯尔莫哥洛夫-斯米尔诺夫检验。
- 安德森-达林正态性检验。
- 卡方拟合优度检验。
- Bartlett 和 Levene 检验方差齐性。
- 麦克尼马尔和斯图尔特-麦克斯韦测试。
- 随机数生成
- 与.NET Framework 的System.Random 兼容。
- 四种发电机,具有不同的质量、周期和速度,以满足您的应用需求。
- 从任何分布生成随机样本。
- 福雷和霍尔顿序列。
- 洗牌器和随机计数器。