现在有大量的开源软件提供工程数学功能,并且节省了开支。
李兰特科克勒•执行主编
早在1999年,火星气候轨道飞行器(Mars Climate Orbiter)就登上了新闻头条,当时它沿轨道接近火星,由于距离火星太近,结果要么在火星大气层中被毁,要么绕着太阳运行。引起公众注意的与其说是失败的任务,不如说是失败的原因:一项调查发现两个软件系统之间的测量不匹配。NASA使用公制单位,而宇宙飞船制造商洛克希德·马丁公司使用英语单位。
如果在轨道飞行器上工作的工程师能够使用今天的工程数学软件,航天器可能仍然在绕着红色星球飞行。这是因为这类软件经常支持所有的度量单位,允许英语和公制单位毫无畏惧地混合在等式中。一般来说,软件用户可以自由地添加方程、文本和图像。在许多包中,方程以类似于电子表格的方式进行实时链接,因此当某些内容发生变化时,它们的值会更新。
令人高兴的是,许多这样的工程软件包现在都可以免费或接近免费。开发这些开源程序的动机似乎是希望找到低成本的替代方案,以取代已建立的数学软件包,如MathCad、Maple和Maple Flow。MathCad的最新版本称为MathCad Prime,首次发布于1986年,目前可通过商业许可订阅,通常每年支付约700美元。Maple或Maple Flow的单座票价约为2400美元。
在具有类似于这些商业包的特征的自由替代方案中是SMath工作室.用户说它的行为很像老一代的MathCad。与这个类别中的其他包一样,SMath也会跟踪单元。例如,假设您要求程序求解X + y = z告诉它X在脚上y是米。SMATH知道足以自动转换不同的单位Z.与他们一致。
在所见即所得SMath程序中给出了一些示例问题。
用户表示,该程序的用户界面类似于过去的图形计算器。虽然没有单独的帮助文件,但是可以从SMath站点获得关于各种数学形式的教程(SMath for Physics),这足以让大多数用户启动并运行。该程序将每个等式框起来并进行求解,自动为输入的数据提供一些组织。此外,该程序还提供了一个可按名称插入的函数下拉菜单,这对知道方程名称但不知道如何编写的用户很有用。
用户表示,SMath与MathCad的最新版本(现在称为MathCad Prime)之间的主要区别似乎在于MathCad Prime包含了协作功能。此外,Prime似乎更擅长处理大型方程组。
Matlab商业分析程序至少有两个免费的选择,GNU Octave和Scilab.由MathWorks开发,MATLAB被称为专有的多范式编程语言和数字计算环境。它具有处理重型数值计算任务的声誉,并允许矩阵操纵,绘制函数和数据,实现算法以及创建用户界面。可选的工具箱使用Mupad符号引擎进行符号计算。一个名为Simulink的额外包添加了用于动态和嵌入式系统的图形多域仿真和模型的设计。
Matlab使用自己的编程语言,因此等式的输入并不像Smath这样的程序直观。但MATLAB支持高级功能,如面向对象的编程,可以调用C或FORTRAN中写入的功能和子程序。目前MATLAB的永久许可证运行2,150美元,每年许可证为860美元。
在Scilab中完成的数据可视化,提供图形功能以创建行,饼图,直方图,表面等。
还类似Matlab,Scilab有许多贡献的工具箱,用于处理特定域中的任务,例如图像处理和小波。最初在1990年发布,自2016年以来,Scilab可以嵌入在浏览器中,并通过在Scilab或API中写入的接口调用。据说这种新的部署方法具有掩蔽代码和数据的优点,以及提供对大型计算能力的访问。
另一个Matlab启发的免费计划是弗里马特.FreeMat的主页说,该程序被特许超越Matlab,包括外部C/ c++ /Fortran代码的无代码接口,并行/分布式算法开发,以及先进的体积和3D可视化功能。据说FreeMat支持Matlab中大约95%的特性,但不支持GUI/Widgets。FreeMat网站也表示,这一功能正在开发中,但FreeMat的最后一次发布似乎是在2013年。
数学助手
除了面向工程的程序外,还有许多专注于代数和微积分的免费软件包。这些软件可能缺乏Matlab和mathcad启发的免费软件所具有的特定于领域的编程帮助和单元认知。但它们可以帮助解决复杂的数学问题。
这个免费的数学软件可能具有最大的计算能力,对于那些熟练使用Python语言编程的人来说是有用的。SciencificPython.是Python编程语言的科学工具的开源库。然而,截至撰写本文之时,它自2014年以来就没有更新过。该库包括数学工具,如对任意数量变量的任何顺序的函数进行微分;数值积分;数值求根的Newton-Raphson方法非线性最小二乘拟合;以及其他一些功能。
另一个Python资源是SciPy.这是另一个包含优化、线性代数、积分、插值、特殊函数、fft、信号和图像处理、微分方程求解和其他在科学和工程中常见的任务模块的库。
Sagemath.(Sage或Sage, System for Algebra and Geometry experiments)是一个计算机代数系统,涵盖了数学的许多方面,包括代数、组合学、图论、数值分析、数论、微积分和统计学。它建立在其他几个开源Python包的基础上,包括SciPy和更多。它通过通用的、基于python的语言或直接通过接口或包装器访问它们。
还有许多其他的免费数学程序,目标略低一些,计算。但是一个叫SpeQ包括与MathCad等程序一样的单元支持,因此用户不必担心输入正确的转换因子。所有计算都输入到工作表UI中。用户可以定义自定义变量和函数,并将结果图形化。该程序可以用算术、条件、逻辑和位操作符表达计算,包括大约100个内置的数学、物理和条件常量。大约有60个内置函数用于分析、算术、复数、双曲函数、统计、三角函数等。
这欧拉数学工具箱也受到Matlab的启发,但语法并不完全兼容。像Matlab一样,欧拉是一种矩阵语言,设计用于处理向量和矩阵,在大多数情况下没有显式循环。欧拉在另一个叫做Maxima的自由程序的帮助下进行符号数学运算。有一件好事:Euler仍在积极开发中,今年早些时候发布了两个更新。
“数学机制”让用户可以像在纸上写一样输入方程式。它包括一个科学计算器和一个集成的变量和函数列表窗口,以简化跟踪定义的变量和函数。它还可以生成它所建模的功能的3D图形。
Math Mechexs还提供了一个超过280个嵌入式功能的库,通常是数学,Trig,Chemistry,Geometry,统计数据等。微积分效用包含单个,双重和三重集成的数值集成模块以及单个,双和三差分的数值差分模块。DW.
你可能也会喜欢:
了下:技术+产品那所有行业那产品设计那软件









