.Net上真正的计算利器ILNumerics

使用ILNumerics在.Net执行计算 一.下载安装ILNumerics函数库 在http://ilnumerics.net/$Editions.html下载ILNumerics社区版压缩包,现在版本为v2.13,约27.3MB。解压缩后目录结构如图1所示。 图1 ILNumerics源码包解压内容 现在需要编译ILNumerics函数库,用VisualStudio打开工程文件ILNumerics.csproj,编译一遍, 阅读详情

            起因:前段时间写程序时需要大量的线性代数方面的运算,当时比较了几种.Net上的数学库,选择使用了Math.net,它是支持.net的一个开源数学库,提供了包括线性代数,随机数生成器,概率统计傅立叶变换等一系列库函数。那时做的矩阵运算都不超过100x100,所以程序运行起来勉强还可以接受,但后来随着数据库增长,矩阵(从数据库获取数据构造)包含的数据量逐渐超过10000,程序就卡在那里不动了。在确认的确是矩阵运算导致程序性能急剧下降后,我不得不寻找新的数学库,最终我发现了ILNumerics!Math.net有的功能它基本都有,但ILNumerics的执行性能远远超过了Math.net。

           在读了ILNumerics大量文档后,我先做了个小测试,计算大矩阵的逆矩阵,比较ILNumerics和Math.net的矩阵运算性能,结果如下图(由于我使用的计算中,矩阵求逆,转置和相乘使用较多,我仅比较了这几个,故不算严格测试,算个感性的估计吧,所以,就不给出测试代码了)。


可以看到,在计算大矩阵时,ILNumberics明显要快得多。经测试,ILNumerics在计算元素数量在千万级时仍然保持在30s以内,但Math.net的计算时间已经超过了我的耐心。

于是我正式将它用到正在开发的程序中,瞬间感到了飞的感觉。

独乐不如众乐,所以我简单介绍一下ILNumerics,希望可以帮到有需要的朋友。

--------------------------------------------*****-----------------------------------------------------------------------------**************----------------------------------------------------------------------------------------

首先是ILNumerics网站:http://ilnumerics.net/$Home.html。

然后当然要说说运行速度,大家都知道程序语言越高级,执行效率越低,所以在.net编写计算类的程序就要把性能放在首位。而ILNumerics在性能上做得相当出色。下面是来自官网(图片网址:http://ilnumerics.net/img/perfcomp_numpy_matlab_fortran_ilnumericsc_th.png)的一张图片,显示其优秀的执行性能。


ILNumerics主要在垃圾回收上下了功夫,所以运行速度甚至可以追赶本地C库函数。

另外,ILNumerics具有超强绘图功能,如果希望在程序中加入类似Matlab绘图功能的话,那么ILNumerics会是不错的选择,如下图所示(图片来自http://ilnumerics.net/$VisualExamples.html)。



还有和Matlab相似之处是,ILNumerics的矩阵运算有很多语法都和matlab很相似,使用它写相关运算时让人感觉就是在写matlab程序,这一点详细查看帮助文档就知道了。说到这里,就需要附带说一下,好软件一定要配套好文档,ILNumerics的文档是非常丰富的,让人用起来有理有据,入门迅速。

最后说一句,ILNumerics是开源软件!

我将在下一篇文章中简单介绍一下ILNumerics入门使用,以供参考。

ILnumerics资料 ILnumerics是一个十分好用的类库 对于数学运算尤其是矩阵的计算有着强大的功能 与MATLAB类库使用方式很相似 早期作为开源软件 后变为商业软件 立即下载

相关推荐

ILNumerics曲线图展示

ILNumerics.32Bit.3.1.0.1,32位,版本3.1,内含vs2010的小demo,包含所需dll。

ILNumerics 6.0.124 Crack

工业数据科学Ω578867473 ILNumerics ® 使金融、汽车和许多其他行业的工程师和科学家能够开发、部署和维护要求苛刻的技术应用程序。比以往任何时候都更快、更容易。在很短的时间内创造出更好、完全可扩展的结果——并立即推动研发创新。 计算 ILNumerics 数学、基于数组的语言极大地简化了 numpy 和 Matlab 风格的生产级 .NET 算法的编写。以最快的方式创建和运行您的项目。您专注于数学——剩下的交给我们! 可视化 将交互式 3D 可视化添加到您的 .NET 应用程序.

控件与插件之大全 1638

.net科学计算库ILNumerics

ILNumerics是一种NET框架的高性能数学库,它简化了各种数学算法的使用,优化到了C和FORTRAN的速度。它的独立版本ILView,已经宣布支持REPL的3D可视化工具,可以运行在.NET/Windows和Mono/Linux环境里。

ILNumerics项目的应用之线性方程

      ILNumerics是一个开源的数值项目,一种NET框架的高性能数学库,它简化了各种数学算法的使用,优化到了C和FORTRAN的速度。现在它提供了一个支持“任何CPU”的NuGet包。它的独立版本ILView,已经宣布支持REPL的3D可视化工具,可以运行在.NET/Windows和Mono/Linux环境里。支持线性方程计算,数值计算,机器学习。             在...

weixin_34168880的博客 388

HeatMapDemos_src.zip_HeadMap_ilnumerics_热力图

HeadMap热力图模型,采用ILNumerics控件开发,可用于Winform版本界面热力图开发参考资料

ch32v103xx 烧写

烧写方式 串口uart, usb,swd(wch link)但不建议按此使用,参官方说明。

qq_39239990的博客 637

探索高性能计算的未来 —— 深入介绍MKL.NET

探索高性能计算的未来 —— 深入介绍MKL.NET 在这个数据驱动的时代,高性能计算库是科研和工业界的强大工具。今天,我们来探讨一个将Intel MKL(Math Kernel Library)的强大力量带入.NET世界的开源宝藏——MKL.NET。 项目介绍 MKL.NET是一个简洁的跨平台.NET API,旨在无缝对接Intel MKL的强大数学运算功能。它精心设计,保持了与C开发者参考文档...

gitblog_00051的博客 505

神领物流-day01-项目概述

公司从2019年开始业务快速扩张,网点数量从138家扩展至540家,车辆从170台增长到800台。同时,原有的系统非常简单,比如车辆的调度靠人工操作、所有的货物分拣依靠人员,核心订单数据手动录入,人效非常低。随着业务不断演进,技术的不断提升,原有运输管理系统已无法满足现有快速扩展下的业务需求,但针对现有系统评估后发现,系统升级成本远高于重新研发。因此,公司决定基于现有业务体系进行重新构建,打造一套新的TMS运输系统,直接更替原有系统。

心飞为你飞 2255

数学运算

JMathLib是一个用于计算复杂数学表达式并能够图形化显示计算结果的Java开源类库。它是Matlab、Octave、FreeMat、Scilab的一个克隆,但完全采用纯Java实现。   .Net上真正的计算利器ILNumerics http://blog.csdn.net/qjpcpu/article/details/8066372   dmath(tpmath):Math li...

iteye_9067的博客 219

达芬奇Pro开发板硬件验证全流程指南

FPGA开发板硬件验证是嵌入式系统可靠性的基石,其核心在于理解SoC启动时序、IO资源映射与高速接口物理层约束。基于Xilinx Zynq-7000异构架构的开发平台,需围绕电源完整性、时钟稳定性、信号完整性及软硬协同启动链路展开分层测试。技术价值体现在规避量产失效率、支撑高可靠工业控制与实时图像处理等场景。典型应用涵盖千兆以太网通信验证、DVP摄像头与RGB LCD显示链路调试、以及SFP+光纤接口PRBS误码率测试。本文聚焦达芬奇Pro系列开发板,深入解析JTAG下载、QSPI Flash重烧录、RGM

weixin_42453228的博客 122

告别社区5级:一个脚本搞定小米/红米BL解锁的账号绑定限制(附资源下载与避坑指南)

本文提供了一种绕过小米/红米设备Bootloader解锁社区等级限制的技术方案,适用于MIUI 12.5-14和HyperOS 1.0系统。通过自动化脚本临时修改系统组件,用户可快速完成账号绑定和设备解锁流程,附详细操作指南和常见问题解决方案。

weixin_27330481的博客 730

ILNumerics 5.5.X Crack-工业数据科学

工业数据科学 在 C# 和 .NET 中:简单的。快速地。可靠的。 工业数据科学 ????578867473知道ILNumerics ® 使金融、汽车和许多其他行业的工程师和科学家能够开发、部署和维护要求苛刻的技术应用程序。比以往任何时候都更快、更容易。在很短的时间内创造更好的、完全可扩展的结果——并立即推动研发创新。 计算 ILNumerics 数学、Ω578867473基于数组的语言极大地简化了 numpy 和 Matlab 风格的生产级 .NET 算法的编写。以最快的方式创建和运行您的项目

控件与插件之大全 1083

ISO 15118-3协议栈开发避坑指南:从EvseSlac状态机设计看电动汽车充电握手难题

本文深入剖析了ISO 15118-3协议栈开发中的核心挑战,特别是SLAC握手流程的实现难点。以Everest项目的EvseSlac状态机为例,详细解读了从状态机设计、多厂商PLC芯片兼容性处理,到严苛的时序与超时控制等关键工程实践,为开发者提供了一套超越协议文档的、可直接落地的避坑指南和软件实现方案。

jump7的博客 266

c# 生成svg_使用C#和ILNumerics在SVG中生成复杂的数学可视化

c# 生成svgI was recently turned on to the ILNumerics library. It's a high performance math library for .NET developers that my math skills can barely comprehend. It has a clean and elegant syntax, but m...

cunfuteng7334的博客 1334

多智能体系统在AI物流优化中的实际应用案例

订单波峰波谷难应对(如双11订单量暴增300%);动态干扰难处理(如突发交通拥堵、客户临时改地址);全局优化难实现(单辆车最优≠整体最优)。本文聚焦“多智能体系统(MAS)”这一AI技术,讲解其如何通过“群体智能”破解物流调度难题,并结合实际案例展示落地效果。本文从“生活故事→核心概念→技术原理→实战案例→未来趋势”逐步展开,用“快递员团队协作送外卖”类比MAS运作,结合Python代码模拟任务分配,最后通过某物流企业的真实项目验证效果。

AIGC应用创新大全的博客 1631

C++实现复制粘贴文本功能

要实现这个功能,我们需要使用操作系统提供的函数来操作剪贴板。在Windows操作系统中,我们可以使用Windows API函数来访问剪贴板。总结起来,使用C++实现复制和粘贴文本功能涉及使用操作系统提供的API函数来操作剪贴板。在本篇文章中,我将向您展示如何使用C++编程语言实现复制和粘贴文本的功能。我们将使用操作系统提供的API来进行剪贴板操作,并编写相应的代码来完成这个任务。如果您使用的是Linux操作系统,您需要使用适当的库和函数来访问剪贴板。函数中,我们首先将一个字符串复制到剪贴板中,然后使用。

PixelDyno的博客 1233

matlab第三方控件,第三方控件介绍

ILNumercisILNumerics是一种NET框架的高性能数学库,它简化了各种数学算法的使用,使用起来和MATLAB类似。另外,ILNumerics具有超强绘图功能,如果希望在程序中加入类似MATLAB绘图功能可考虑。IocompIocomp ActiveX/VCL 是一套用于工业控制的仪表盘控件,适用于 ActiveX 或 VCL 开发环境。Iocomp 工业仪表盘控件包(VCL版)包括多...

weixin_32243075的博客 928

PCIE2.0/PCIE3.0/PCIE4.0/PCIE5.0接口的带宽、速率计算

一、PCIE接口速率: 二、PCIE相关概念: 传输速率为每秒传输量GT/s,而不是每秒位数Gbps,因为传输量包括不提供额外吞吐量的开销位; 比如 PCIe 1.x和PCIe 2.x使用8b / 10b编码方案,导致占用了20% (= 2/10)的原始信道带宽。 GT/s —— Giga transation per second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率属性,可以不和链路宽度等关联。 Gbps —— Giga Bits Per Second

技术联盟 1万+

开源数学库

C/C++,java开源数学计算库   有限元分析、数值计算、三维建模、信号处理、性能分析、仿真分析。。。这些或多或少与我们常用的软件息息相关,假如有一天你只需要这些大型软件系统的某一个很有限的功能,你是不是也要因此再用一用那动辄几个g的软件呢?其实我觉得如果系统不是很大,不是很复杂,我们个人完全有可能自己去编写代码来实现这些‘’有限的功能‘’。别以为这是件很困难的事情,我总以为大...

an4455的博客 1443

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

ILnumerics资料下载介绍

ILnumerics资料下载介绍 去发现同类优质开源项目:https://gitcode.com/ ILnumerics资料为您提供了一个强大的数学运算类库,特别在矩阵计算方面表现出色。ILnumerics的使用方式与MATLAB类库类似,使得进行数学运算更加简便高效。 ILnumerics最初作为开源软件受到广大用户的喜爱,随后转变为商业软件。这份资料包含了ILnumerics的相关文档和教程,...

gitblog_06770的博客 353

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

常见的C/C++开源数值计算库

常见的C/C++开源数值计算库介绍

罗伯特祥的博客 3465

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

开源数学库 Numerical Python

NumPy(Numerical Python的简称)是一个基于Python的开源数学库,它提供了了一个易于使用的数组对象和一系列操作数组的函数,可以高效地进行大规模数值运算。

汉阳Hann's Home 3324

ilnumerics 7.4.40 FOR .NET

ILNumerics Compuiting Engine brings efficiency for numerical array codes to .NET. Its array based mathematical language is fully compatible to Matlab and numpy. Its algorithms run on any architecture supporting .NET. And its execution speed exceeds the spe

控件与插件之大全 728

.Net平台科学计算库Math.Net Numerics

     C#数值计算实现处理麻烦,如今发现一个库,可以大大提高C#数值能力,为处理数据提供极大便捷,这个库叫Math.NET Numerics。该库旨在为科学,工程和日常使用中的数值计算提供方法和算法。涵盖的主题包括特殊函数,线性代数,概率模型,随机数,插值,积分,回归,优化问题等。 Visual studio 2012安装这个库的时候,先更新Nuget,Nuget是C#的程序包管理器,许多扩...

Abaqus3_0的博客 4996

C、C++开源的数学库有哪些

C和C++中有许多开源的数学库,涵盖了从基础数学运算到高级数学计算、数值分析等多种功能。

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 3413
上一篇: 心静自得
下一篇: 使用ILNumerics在.Net执行计算
qjpcpu
博客等级 码龄15年 59粉丝 106原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值