matlab武汉理工大学数值分析线性函数拟合实验_「首席架构师推荐」数值计算库精选...

这是一个著名的数值库列表,这些库用于软件开发中执行数值计算。它不是一个完整的列表,而是一个包含Wikipedia上文章的数字库列表,很少有例外。

典型库的选择取决于一系列不同的需求,例如:期望的特性(例如:大维线性代数、并行计算、偏微分方程)、商业/开源性质、API的可读性、可移植性或平台/编译器依赖性(例如:Linux、Windows、Visual c++、GCC)、速度性能、易用性、开发人员的持续支持、标准遵从性、针对特定应用程序场景的代码的专门优化,甚至要安装的代码库的大小。

由于我们发现很少有全面的调查可用,所以在许多可能的库中几乎总是(至少最初是)有一个艰难的选择。通常情况下,它往往是由用户根据自己的品味和舒适度来决定的,只是因为缺乏适当的信息。

878dce8167eab595570c9cd1b727d5b8.png

Multi-language

  • ALGLIB是一个开源的数值分析库,可以从c++、c#、FreePascal、Delphi、VBA中使用。
  • ArrayFire是一个用于并行计算的高性能开源软件库,具有易于使用的API。
  • IMSL数值库是用C、Java、c# . net、Fortran和Python等标准编程语言实现的数值分析功能库。
  • NAG库是针对多种编程语言(C、c++、Fortran、Visual Basic、Java、Python和c#)和包(MATLAB、Excel、R、LabVIEW)的数学和统计例程的集合。
  • GNU Octave是一种开源的高级编程语言和库,包括一个命令行接口和GUI,类似于Maple、MATLAB、Mathematica等商业替代品。可以从许多平台(包括高级工程程序)调用api、函数和库,在许多情况下,函数可以像MATLAB那样无缝地解释和集成。它也可以用于批量定位。
  • librsb是一个用于高性能稀疏矩阵计算的开源库,提供多线程原语来构建迭代求解器(也实现稀疏BLAS标准)。它可以从C、c++、Fortran和专用的GNU Octave包中使用。

C

  • BLOPEX(块局部最优预处理特征值Xolvers)是一个用于特征值问题的可伸缩(并行)解决方案的开源库。
  • FFTW(西方最快的傅里叶变换)是一个计算傅里叶和相关变换的软件库。
  • GNU Scientific Library,一个流行的,用C语言实现的免费的数值分析库。
  • GNU Multi-Precision Library是一个做任意精度算术的库。
  • hypre (High Performance preconditioning)是一个用于线性系统和预处理的可伸缩(并行)解决方案的例程开源库。
  • LabWindows/CVI是一个ANSI C IDE,包括用于分析原始测量数据、信号生成、窗口、滤波函数、信号处理、线性代数、数组和复杂操作、曲线拟合和统计的内置库。
  • Lis是一个可扩展的并行库,用于求解线性方程组和特征值问题。
  • Intel MKL,英特尔数学内核库(C语言),一个为科学、工程和金融应用程序优化数学例程的库,用C/ c++和Fortran编写。核心数学函数包括BLAS、LAPACK、ScaLAPACK、稀疏求解器、快速傅里叶变换和向量数学。
  • OpenBLAS是BLAS API的一个开源实现,具有许多针对特定处理器类型的手工优化。它在Intel处理器上的性能类似于Intel MKL,在其他各种处理器上的性能更高。
  • Portable, Extensible Toolkit for Scientific Computation (PETSc) 是一套数据结构和例程,用于偏微分方程建模的科学应用程序的可伸缩(并行)解决方案。
  • SLEPc Scalable Library for Eigenvalue Problem Computations 是一个基于petsc的面向特征值问题可伸缩(并行)解决方案的开源库。

C++

3f3023a88af06019d3df036901ecc05b.png
  • Adept是一个组合自动微分和数组库。
  • Advanced Simulation Library是一个免费的开源硬件加速多物理仿真软件,具有基于opencl的内部计算引擎。
  • ALGLIB是一个开源/商用的c++版本的数值分析库
  • Armadillo是一个c++线性代数库(矩阵和向量数学),旨在在速度和易用性之间取得良好的平衡。它使用模板类,并具有指向BLAS和LAPACK的可选链接。语法(API)类似于MATLAB。
  • Blaze是一个用于密集和稀疏运算的开源高性能c++数学库。
  • Blitz c++是一个用c++编写的高性能向量数学库。
  • Boost.uBLAS。用于数值计算的uBLAS c++库
  • deal.II是一个支持所有偏微分方程有限元解的库。
  • Dlib是一个现代c++库,易于使用线性代数和优化工具,这些工具得益于优化的BLAS和LAPACK库。
  • Eigen是一个矢量数学库,其性能可与Intel的数学内核库相媲美
  • Hermes项目:c++ /Python库,用于空间和时空自适应hp-FEM求解器的快速原型设计。
  • iml++是一个用于求解线性方程组的c++库,能够处理密集、稀疏和分布式矩阵。
  • 它是一个c++库,用于线性代数(矩阵和向量)、信号处理和通信。功能类似于MATLAB和八度。
  • IT++一个用于LAPACK和BLAS的c++包装器库
  • Intel MKL,英特尔数学内核库(C和c++),一个科学,工程和金融应用程序优化数学例程库,用C/ c++和Fortran编写。核心数学函数包括BLAS、LAPACK、ScaLAPACK、稀疏求解器、快速傅里叶变换和向量数学。
  • mlpack是一个用于机器学习的开源库,它利用c++语言特性来提供最大的性能和灵活性,同时提供一个简单和一致的API
  • MTL4是一个提供稀疏和密集BLAS功能的通用c++模板库。由于通用编程,MTL4建立了一个直观的界面(类似于MATLAB)和广泛的适用性。
  • NAG库有c++ API
  • NTL是一个用于数论的c++库。
  • triinos致力于为解决大规模、复杂的多物理工程和科学问题开发算法和实现技术。它是包的集合。

Delphi

  • Analytics & Physics:用于符号和数值计算(包括符号导数)以及处理物理值和测量单位的商用Delphi库。
  • ALGLIB一个开源的数值分析库。

.NET Framework languages C#, F#, VB.NET and PowerShell

  • Accord.NET是一个科学计算库的集合,包括数值线性代数、优化、统计、人工神经网络、机器学习、信号处理和计算机视觉。LGPLv3,部分GPLv3。
  • AForge。NET是一个计算机视觉和人工智能图书馆。它实现了多种遗传、模糊逻辑和机器学习算法,并结合几种人工神经网络体系结构和相应的训练算法。LGPLv3和部分GPLv3。
  • ALGLIB是一个c#版本的开源数值分析库。双重许可:GPLv2+,商业许可。
  • ILNumerics。Net商用高性能,类型安全数字数组类和函数的一般数学,FFT和线性代数,目标。Net / mon, 32和64位,类似脚本的语法在c#, 2D和3D绘图控件,有效的内存管理。
  • IMSL数字库有c#版本(商业许可)。. net已经宣布在2020年底结束生命。
  • Math.NET Numerics 旨在为科学、工程和日常应用中的数值计算提供方法和算法。涵盖的主题包括特殊函数,线性代数,概率模型,随机数,插值,积分变换等。麻省理工学院/X11许可下的自由软件。
  • Measurement Studio是一个商业集成套件UI控件和类库,用于开发测试和测量应用程序。分析类库提供各种数字信号处理、信号过滤、信号生成、峰值检测和其他通用数学功能。
  • ML.NET是一个免费的c#编程语言机器学习库
  • NAG库有c# API。商业许可。
  • NMath by CenterSpace Software: . net平台的商业数字组件库,包括信号处理(FFT)类、线性代数(LAPACK & BLAS)框架和统计软件包。
  • Numpy.NET为NumPy提供了c#语言绑定,这是一个用于科学计算、机器学习和人工智能的基本库。[3]Numpy。NET是麻省理工学院授权的自由软件。
  • NumSharp是一个用于数据科学、机器学习和人工智能的开源N-D张量计算库,使用纯c#编写。[4] NumSharp是在Apache 2.0许可下授权的自由软件。

Fortran

  • BLAS (Basic Linear Algebra Subprograms)是一个事实上的应用程序编程接口标准,用于发布库来执行基本的线性代数操作,如向量和矩阵乘法。
  • CERNLIB是FORTRAN 77库和模块的集合。
  • EISPACK是一个用FORTRAN语言编写的矩阵特征值和特征向量数值计算的软件库。它包含计算9类矩阵特征值的子程序:复一般矩阵、复厄米矩阵、实一般矩阵、实对称矩阵、实对称带状矩阵、实对称三对角矩阵、特殊实三对角矩阵、广义实矩阵和广义实对称矩阵。
  • IMSL数值库是跨平台的库,包含一组完整的数学和统计函数,可以嵌入到用户应用程序中。
  • Harwell子例程库是Fortran 77和95代码的集合,用于解决数值分析中的核心问题。
  • LAPACK, the Linear Algebra PACKage 是一个用于数值计算的软件库,最初用FORTRAN 77编写,现在用FORTRAN 90编写。
  • LINPACK是一个用于在数字计算机上执行数字线性代数的软件库。它是由Jack Dongarra、Jim Bunch、Cleve Moler和Pete Stewart用Fortran语言编写的,在20世纪70年代和80年代早期被用于超级计算机。它在很大程度上已经被LAPACK所取代,LAPACK将在现代架构上更有效地运行。
  • Lis是一个可扩展的并行库,用于求解线性方程组和特征值问题。
  • MINPACK是一个FORTRAN子程序库,用于求解非线性方程组,或最小化一组线性或非线性方程组的残差。
  • NAG Fortran库是Fortran的数学和统计例程的集合。
  • NOVAS是一个用于天文相关数值计算的软件库。Fortran和C版本都是可用的。
  • Netlib是一个科学计算软件库,其中包含大量独立的程序和库,包括BLAS、EISPACK、LAPACK等。
  • PAW是CERN开发的一个免费数据分析包。
  • Portable, Extensible Toolkit for Scientific Computation (PETSc)是一套数据结构和例程,用于偏微分方程建模的科学应用程序的可伸缩(并行)解决方案。
  • QUADPACK是一个FORTRAN 77库,用于一维函数的数值积分
  • SLATEC是一个FORTRAN 77库,包含1400多个通用数学和统计例程。
  • SOFA是实现天文计算的官方IAU算法的子例程集合。Fortran和C版本都是可用的。
  • ARPACK是Fortran77子程序的集合,用于解决大规模特征值问题。

Java

4e1c158866fb59ba29f2947c452c2452.png
  • ND4J是一个开源库,支持n维(ND)数组,类似于NumPy。它运行在分布式gpu或cpu跨平台上,并利用Spark进行并行计算。它支持深度学习库Deeplearning4j。
  • Apache Commons是一个用于创建可重用Java组件的开源工具。它有线性代数和非线性优化的数值包。
  • Colt提供了一组用于高性能科学和技术计算的开源库。
  • Efficient Java Matrix Library (EJML) 是一个用于处理密集矩阵的开放源码线性代数库。
  • JAMA一个用于Java编程语言的数字线性代数工具包。自2005年以来没有进行过任何积极的开发,但它仍然是Java中比较流行的线性代数包之一。
  • Jblas: Linear Algebra for Java,一个线性代数库,它是一个易于使用的BLAS和LAPACK包装器。
  • Parallel Colt是一个用于科学计算的开源库。柯尔特的平行延伸。
  • Matrix Toolkit Java是一个基于BLAS和LAPACK的线性代数库。
  • ojAlgo是一个用于数学、线性代数和优化的开源Java库。
  • exp4j是一个用于计算数学表达式的小型Java库。

Scala

  • ND4S是Scala的一个科学计算库,它支持JVM上的n维数组。

Perl

  • Perl Data Language 使标准Perl能够紧凑地存储和快速地操作大型n维数据数组。

Python

  • NumPy,一个bsd授权的库,增加了对大型、多维数组和矩阵操作的支持;它还包含大量高级数学函数。NumPy是许多其他数字库的主干,尤其是SciPy。Python中矩阵/张量运算的事实标准
  • SageMath是一个大型的数学软件应用程序,它集成了近100个自由软件项目的工作,并支持线性代数、组合学、数值数学、微积分等。
  • SciPy是bsd授权的大型科学工具库。Python中科学计算的实际标准。
  • ScientificPython一个拥有不同科学工具集的库
  • SymPy,一个基于新的BSD许可证的符号计算库。辛普森的特征从基本符号算术到微积分、代数、离散数学和量子物理都有。

Others

  • XNUMBERS -用于Microsoft Excel的多精度浮点计算和数值方法。
  • INTLAB用于MATLAB的区间算术库。

另请参阅

  • 计算机代数系统比较
  • 数值分析软件比较
  • 绘图软件列表
  • 数值分析软件列表
  • 优化软件清单
  • 统计软件包清单

原文:https://en.wikipedia.org/wiki/List_of_numerical_libraries

本文:https://pub.intelligentx.net/wikipedia-list-numerical-libraries

讨论:请加入知识星球或者小红圈【首席架构师圈】

麻烦各位道友为我投票,点击【为我投票】按钮。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434062.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DCE和DTE的区别

DCE(数据通信设备或者数据电路终端设备):该设备和其与通信网络的连接构成了网络终端的用户网络接口。它提供了到网络的一条物理连接、转发业务量,并且提供了一个用于同步DCE设备和DTE设备之间数据传输的时钟信号。调制解调器和接口…

php 弹出保存对话框,如何在不将页面留在PHP中的情况下强制保存为对话框?

当使用StijnvanBael的代码时,请小心,它会使您面临一些严重的安全漏洞攻击。尝试以下方法:--- download.php ---$allowed_files array(file.pdf, otherfile.pdf);if (isset($_REQUEST[file]) && in_array($_REQUEST[file], $allowed_files)){$filename $_REQUEST[file…

JSONP跨域原理和jQuery.getJSON用法

JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。本文主要介绍JSONP跨域原理,一起来看。 JSONP是一个非官方的协议&…

window10安装python2.7_window10下python2.7安装pip报错

get-pip.py 文件内容来源于(将网页内容保存) https://bootstrap.pypa.io/get-pip.py 报错信息 D:\softs\python\Python27>python get-pip.py DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 wont…

DAHDI与Zaptel

1、DAHDI是什么? DAHDI表示DigiumAsterisk Hardware Device Interface,Zaptel是"ZapataTelephony"的缩写。 2、DAHDI的由来 Kevin Fleming是这样介绍DAHDI的来由的:“大约2006年,ZapTel商标的持有人找上我们&#x…

php判断桌面宽度,js获取页面宽度高度及屏幕分辨率

网页可见区域宽: document.body.clientWidth;网页可见区域高: document.body.clientHeight;网页可见区域宽: document.body.offsetWidth (包括边线的宽);网页可见区域高: document.body.offsetHeight (包括边线的宽);网页正文全…

串口输出5v电压_为什么RS485比串口速度快距离远?--谈单端信号与差分信号之差异...

嵌入式系统中,串口、RS485、CAN、网络和USB等都是非常常用的通信方式。但是串口通信速度慢,距离近,为什么转换成RS485后,通信距离和速度都大幅提高了呢?USB也是近距离,为什么速度可以这么快?原因…

IIS7.0站点/虚拟目录中访问共享

目的:实现一个2008serve的IIS的虚拟目录(通过网络路径(UNC)的形式,共享在另外一个2008服务器上) 准备工作1.运行组策略编辑器(gpedit.msc);找到本地安全策略-本地策略-安…

易语言操作php文本文件,易语言对文本操作的步骤教学

在易语言编程中,我们往往需要对一些文字进行截取或分割出来,如何准确、快速的实现这一目标呢?下面笔者来为大家演示1、首先,我们打开易语言编程软件,点击左上角,新建一个文件,如图所示2、我们点…

Asterisk入门系列

什么是asterisk?开源电话平台 Asterisk 通过了电话的开源平台。基本上就是一个软件的PBX。 最初是Digium 公司的Mark Spencer编写的,这个公司就是他创立的,专门生产并销售Asterisk使用的硬件。Asterisk简直就是一场电话的革命。 为什么使用Asterisk&…

xxl-job 执行结果是空_xxljob dotnet core executor执行器开源

DotXxlJob[(github)https://github.com/xuanye/DotXxlJob][https://github.com/xuanye/DotXxlJob] xxl-job的dotnet core 执行器实现,支持XXL-JOB 2.01 XXL-JOB概述[XXL-JOB][1]是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量…

两千内给力的大屏手机(二)

一看标题就知道哈,这是接着上次来说的呢,上次介绍了四款手机,这次介绍剩下的四款,大家看好了啊 1、HTC T329t双核 你还没有忘记新渴望 VT这款产品吧,作为HTC和移动推出的性价比大众智能产品,新渴望 VT在上市…

php5.4 windows2003,PHP实战:Windows2003下php5.4安装配置教程(IIS)

《PHP实战:Windows2003下php5.4安装配置教程(IIS)》要点:本文介绍了PHP实战:Windows2003下php5.4安装配置教程(IIS),希望对您有用。如果有疑问,可以联系我们。PHP教程一、在Windows2003安装IISPHP教程1、首先打开Windo…

foxmail 怎么把邮件格式默认为html_Python SMTP发送邮件-smtplib模块

在进入正题之前,我们需要对一些基本内容有所了解:常用的电子邮件协议有SMTP、POP3、IMAP4,它们都隶属于TCP/IP协议簇,默认状态下,分别通过TCP端口25、110和143建立连接。Python内置对SMTP的支持,该协议支持…

Arm-Linux 编译Asterisk

需要重新编译的包ncurses-5.6.tar.gzopenssl-0.9.8g.tar.gztermcap-1.3.1.tar.gz Asterisk-1.2.16没有编译通过的模块chan_alsa.so //需要alsa的支持format_ogg_vorbis.sosmsqastman

Nhibernate 过长的字符串报错 dehydration property

用nhibernate发现一个错误&#xff0c;一个文本输入框输入字符过长&#xff0c;会被在固定的地方截断&#xff0c;经过试验发现4000个字符8000个字节的时候会被截断。看了一下映射文件中的xml配置&#xff0c;发现映射字段如下&#xff1a;<property column"Content&qu…

串口与modem流量控制大全(1)

MODEM是用户接入互联网的重要设备。虽然网络干线上已经普及宽带光纤传输&#xff0c;但是在拥有庞大用户群的最后一公里路段上&#xff0c;目前最现实的接入方式还是铜线连接(电话线&#xff0c;双绞线、电缆)。另外&#xff0c;随着无线技术的发展&#xff0c;采用无线接入的固…

Qt creator工程项目移植时因环境变换造成qmake错误的解决方案

1.问题描述&#xff1a;移植从他机上的qt工程项目&#xff0c;打开时提示&#xff1a; Qt Creator找到了一个由其他开发环境创建的设置文件&#xff0c;或许是来自于其他机器的。用户设置文件包含了特定的环境设定&#xff0c;它不应当被复制到其他应用环境中去。 你仍然想载入…

leftjoin多表联合查询_leetcode-sql练习精讲系列文章——一、多表如何连接

这是一个系列文章&#xff0c;涵盖了SQL最常用的知识点。题目来自于leetcode的sql题&#xff0c;文章列出了问题-完整解析-答案-知识点拓展-BAT等大厂面试真题。希望能帮你全方位的弄懂。有问题可以留言&#xff0c;码字不易&#xff0c;写一篇要好几个小时&#xff0c;希望能得…

噪声调频 matlab,如何用matlab编写噪声调频干扰信号

2013-11-01qsort函数怎么编&#xff1f;qsort,包含在stdlib。h头文件里,函数一共四个参数,没返回值。一个典型的qsort的写法如下qsort(s,n,sizeof(s[0]),cmp);其中第一个参数是参与排序的数组名(或者也可以理解成开始排序的地址,因为可以写&s[i]这样的表达式);第二个参数是…