分享

几款不错的数学软件简介

 xine2009 2015-09-09
今天在寻找数学软件时,无意中发现了这么个网址(http://blender./6292696.html),该文简单的比较了几种免费数学工具在各种数学运算上的支持与否,总体上说这些软件都还是不错的,最后我选定了四种数学工具供自己以后使用:EigenmathSpeQSysquake LEFreeMat。其实我自己非常喜欢Speq这款软件,但是它不支持微分与积分运算,而Eigenmath正好弥补了这个不足,选择Sysquake LE是因为它能够与Matlab兼容。其实FreeMat就可以实现微分与积分运算且与Matlab兼容,仅仅留此一个不久足矣,为何还要其他三个呢?这主要是因为我有个毛病,对于功能相近的软件,我喜欢选择程序小的软件。因此这把这三个小软件保留了下来。

  Eigenmath、SpeQ和Sysquake LE这三款软件,从功能上看差不了多少,唯独Eigenmath支持微积分运算,Sysquake LE能很好的与Matlab兼容。但是从界面上看,Speq略胜一筹。

  运行Speq,可以看到它有三个窗口:左边的变量窗口、中间的命令行窗口、右边的常用软件窗口,界面上感觉很清新,使用上很方便,尤其是命令行窗口,其空间较大,输入数学算式,直接在下一行给出结果,显示很直观。作图时,在新窗口中呈现图像。

  


  Eigenmath界面上很简洁,简洁得只剩下一块空白窗口,其命令输入在最小面的那个小横条中,因此运算输入不够Speq方便。其运算结果在命令输入行上方显示,作图时使用底部的“draw”按钮进行作图,图形也直接显示在命令行上方。这与Mathematic的风格比较相近。总体上的功能与Speq差不多,但是支持微分与积分运算,分别是底部的Derivative和Integral按钮,当然直接在命令行中输入也是一样的。

  


  Sysquake LE在界面上与Eigenmath十分相似。启动后,底部的小横行就是命令输入行,与Eigenmath不同的是,它的命令输入行更像是命令输入窗口,可以通过拖动随意增减窗口大小,而Eigenmath完完全全就是命令输入行,无法拖动增减大小。上面说过,Sysquake LE最大的不同就是与Matlab兼容,其命令格式与Matlab一致,可以直接像输入Matlab命令一样进行运算。如果学过Matlab,就不需要重新学习语言了。

  


  总的说,这三款软件功能上差不多,语法上Sysquake LE和Matlab兼容。但不管怎么说,三款软件在语言上都是比较简单明的。我自己比较喜欢Speq,对于一些简单的运算使用Speq来计算就已经绰绰有余了。

  ps:Speq和Eigenmath都支持微积分运算,只是他们使用的命令不同,Speq使用fnDiff()和fnInt()命令,而Eigenmath更为直观,使用Derivative和Integral命令。

  Speq不区分大小写,而Eigenmath对大小写很敏感。这一点不如Speq。

  来源:http://hi.baidu.com/lvneng/blog/item/4662e0f010f692cb7931aa93.html

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  计算器+几何画板

  计算器

  ms自带的计算器使用太不方便了,而Matlab的个头越来越太夸张。这里收集一些免费的和/或小巧的高级计算器,并作简单的对比

  便携名称有理数虚数sin(0)/0矩阵符号运算键盘输入图形输出自定义脚本绘图文件大小上次发布

  支持微积分支持↑拷贝变量函数支持Matlab兼容支持函数高级控制

  Eigenmath1√√×√√√√√√√√√×2D××<1M2007.05

  SpeQ×√××××√××√√√×2D√部分<0.5M

  Sysquake LE×√× √××√√×√/td>√√√2D√部分<5M2006.10

  GraphCalc××× ×××√√×√×√×3D√部分<2M2003.11

  TTCalc××××××√××√√×××××<2M2007.04

  Super Calculator 2√×××××√××√××××××<0.5M2003.10

  Octave× √×√××√√×√√√√3D2×√<140M2006.03

  Ocatave Workshop<180M(含gnuplot,去除MingW)2006.02

  Standalone Python

  +Scipy

  +Matplotlib

  (+wxPython)√ √√3√××√××√√√×

  ×

  √

  -3D×√<85M (+30M)2005.04

  2007.04

  2007.02

  (2007.05)

  Yorick× √×√× ×√××√√√×3D×√<15M2007.03

  R×√×√× ×√√×√√√×3D×√<60M2007.04

  Scilab×√×√× ×√√×√√√√3D√√<130M2007.04

  非便携

  FreeMat×√×√√√√√×√√√√3D×√<30M2007.05

  O-Matrix            √

  RLab                 2001.07

  RLabPlus                 2006.07

  注1:

  绿色-原生支持,比如矩阵是Scilab的基本元素,可直接使用;

  红色-原生不支持,比如python中使用矩阵需要numpy模块;

  蓝色-部分原生支持;

  空白-待考证

  √-无论通过什么途径,总体而言支持;

  ×-总体而言,不支持

  有理数:(1/4+1/3+1/5)*2*30==47?

  sin(0)/0=1

  矩阵部分包含:矩阵是否内建数据类型、是否重载了运算符直接矩阵运算(与使用函数相对应)

  图形输出指输出数据结果是图形格式还是文本格式

  绘图中,支持3D的,亦支持2D;

  函数绘图是值不通过求值,直接绘制函数;

  高级控制指子图、ledgend、title、线型之类

  注2:

  Eigenmath的手册里面有一段滑稽的解释,说明为什么应该使用dot函数而不是*运算符计算矩阵乘法:“the software normally reorders factors internally to optimize processing. For example, inv(A)*B in symbolic form is changed to B*inv(A) internally”——用户需要管它内部如何实现吗?

  Eigenmath提供了微分,那么应该可以正确计算sin(0)/0。

  可惜作者没有留任何的联系方式,否则牡蛎一定会和他讨论一下的。

  Octave通过gnuplot绘图。说实话,我觉得gnuplot绘制的图形有以前油印试卷上手绘的图形的感觉,不好看。

  numpy.sinc(0)=sin(pi*0)/(pi*0)=1

  Matplotlib新增加3D绘图功能,还不完善

  (几何)画图板

  除了上面的可以画图的计算器之外,还有别的选择:

  Surface Explorer 3D ZGraphic GeoGebra Crispy Plotter——提供了简单的函数和自定义函数、变量的方法。可以“听”一个函数的图形。Delphi的程序就是小巧啊

  来源:http://blender./6292696.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多