ylbtech-杂项-数学软件:Mathematica
Mathematica是一款科学计算软件,很好地结合了数值和符号计算引擎、图形系统、编程语言、文本系统、和与其他应用程序的高级连接。很多功能在相应领域内处于世界领先地位,它也是使用最广泛的数学软件之一。Mathematica的发布标志着现代科技计算的开始。Mathematica是世界上通用计算系统中最强大的系统。自从1988发布以来,它已经对如何在科技和其它领域运用计算机产生了深刻的影响。
Mathematica 和 MATLABMaple 并称为三大数学软件。
 
1. 历史返回顶部
人们常说,Mathematica的发布标志着现代科技计算的开始。自从上世纪六十年代以来,在数值、代数、图形、和其它方面一直有个别的软件包存在。但是,Mathematica的基本概念是用一个连贯的和统一的方法创造一个能适用于科技计算各个方面的软件系统。实现这一点的关键之处是发明了一种新的计算机符号语言。这种语言能仅仅用很少量的基本元素制造出广泛的物体,满足科技计算的广泛性。这在人类历史上还是第一次。
当Mathematica1.0版发布时,《纽约时代报》写道:“这个软件的重要性不可忽视”;紧跟着《商业周刊》又将Mathematica评比为当年十大最重要产品。在科技界,Mathematica被形容为智能和实践的革命。
 
2. 影响返回顶部
Mathematica的用户群中最主要的是科技工作者和其它专业人士。但是,Mathematica还被广泛地用于教学中。数学中的许多计算是非常繁琐的,特别是函数的作图费时又费力,而且所画的图形很不规范,所以现在流行用Mathematica符号计算系统进行学习,从高中到研究生院的数以百计的课程都使用它,很多问题便迎刃而解。此外,随着学生版的出现,Mathematica已经在全世界的学生中流行起来,成为了一个著名的工具。
 
3. 开发工作返回顶部
Mathematica的开发工作是由世界级的队伍组成的。这支队伍自从成立以来一直由史蒂芬·沃尔夫勒姆领导。Mathematica的成功使得公司能够集中注意力在非常长远的目标上,运行独特的研发项目,以及通过各种各样的免费网站支持世界各地的知识爱好者。
长期以来,Mathematica核心设计的普遍性使得其涉及的领域不断增长。从刚开始是一个主要用于数学和科技计算的系统,到发展成许多计算领域的主要力量,Mathematica已经成为世界上最强大的通用计算系统。
 
4. 高性能计算返回顶部
Mathematica系统已经支持高性能计算。在Mathematica 5.2版本中,它已经支持自动多线程计算。在2002年,gridMathematica的引入使得用户级的并行编程可以在不同的集群和多处理器系统中进行在2008年,在所有的Mathematica许可证中囊括了并行计算技术,包括支持网格技术如Windows HPC Server 2008、Microsoft Compute Cluster Server和Sun Grid。2010年,Mathematica增加了对CUDAOpenCLGPU硬件的支持。另外,第8版还可以生成C代码,它可以自动由系统C编译器进行编译,比如Intel C++编译器或者Visual Studio 2010编译器。
 
5. 产品功能返回顶部
 
 
6. 历史版本返回顶部
 
7. 产品功能返回顶部
Mathematica的功能包括:
1、使用一行代码可显示的图形
2、各种基本数学函数库
3、各种特殊属性函数库
4、矩阵和数据操纵工具,包括对稀疏矩阵的处理
5、支持复数、任意精度数、区间算术和符号运算
6、2维和3维数据以及函数的可视化和动画工具
7、求解方程组、常微分方程偏微分方程、微分代数方程、时滞微分方程、递推关系式等等
8、离散和连续微积分的数值和符号工具
9、多变量统计程序库,包括支持100多种数据分布的数据拟合、假设检验、概率和期望的运算
10、对运算和应用程序添加用户界面的各种工具包
11、约束和非约束以及局部和全局的最优化技术支持
12、程序语言支持:过程式编程语言、函数式编程语言和面向对象的编程语言
13、图像处理工具 ,包括图像识别
14、提供用于图论中图的分析和可视化的工具
15、分析组合问题的工具
16、用于文本挖掘的工具
17、数据挖掘的工具,比如聚类分析、字符串对齐和模式匹配
18、数论函数库
19、金融运算的工具,包括期权、债券、年金、派生工具等的计算
20、群论函数
21、技术文本处理,包括公式编辑器和自动报告生成
22、用于声音、图像和数据的小波分析程序库
23、控制系统程序库
24、连续和离散的积分变换
25、导入和导出数据、图像、视频、GISCAD等各种文件格式,并支持对生物医学类数据的输入和输出
26、链接Wolfram Alpha的大量数学、科学、社会经济学类的数据集合
27、查看并且重新使用前面的输入和输出(包括图像和文本记号)的笔记本界面
28、和基于DLL、SQLJava.NETC++FORTRANCUDAOpenCL以及http的系统相链接的工具
29、编写并行程序的工具
30、当与互联网连接时,在笔记本中可同时使用“自由格式语言输入”(一个自然语言型的用户界面)和 Mathematica 语言
 
8. 应用的连接返回顶部
Mathematica通过名为MathLink的协议与其它应用程序链接。通过该协议,Mathematica实现内核与前端的通讯,并且也提供了内核和其它应用程序之间的一个通用接口。
Mathematica不但本身具有丰富的功能,而且它也提供了大量接口用以访问其它软件,从而可以方便地调用那些其它软件具有但Mathematica暂时不具备的功能。这样做可以进一步增强Mathematica的适用性。
Wolfram Research发布了一个免费的开发工具包,该工具包允许C programming language编写的应用程序通过MathLink链接到Mathematica内核。
使用.NET/Link,任何一个.NET程序都可以调用Mathematica执行计算操作;相应地,Mathematica程序也可以加载.NETclasses、操纵.NET对象并且执行方法调用。这样我们就可以从Mathematica内部构建.NET图形用户界面。类似地,Mathematica也有J/Link。顾名思义,它可以用于Mathematica与Java程序之间的交互。
与SQL数据库之间的通讯是通过内置的JDBC支持实现的。Mathematica也可以从一个WSDL描述中安装网页服务。
其它与Mathematica相链接的语言包括Haskell、AppleScript、PLT Scheme、Visual Basic、Python和Clojure。
在Mathematica和OpenOffice.org Calc以及Microsoft Excel之间有双向的链接。
Mathematica也提供了与许多专门的数学软件包之间的链接,包括MATLAB、R、Sage、SINGULAR、MathModelica和Origin
Mathematica中的数学公式也可以与其它计算或者排版软件(比如MathML)的公式进行相互转换。
Mathematica可以通过多种方式捕获实时数据,比如与LabVIEW的链接,金融数据feeds,或者直接通过GPIB从硬件设备(IEEE 488)、USB以及串行接口获取。
其他可用界面有JMath,它基于GNU readline和MASH,并利用UNIX命令行运行内置的Mathematica程序(内含参数)。

支持语言

语言:C、.NET、Java、SQL

支持软件

软件:OpenOffice、Microsoft Excel、MATLAB、R
 
9. 可计算数据返回顶部
Mathematica囊括了大量可立即计算的数据。用户可以通过编程访问这些数据,并且也可以通过Wolfram Research的数据服务器自动更新数据。某些数据如股票价格和天气数据都是实时递送的。
数据集包括:
  • 天文数据:155,000个天体的99个属性
  • 化学数据:34,000个化合物的111个属性,118个化学元素的86个属性以及1000个亚原子粒子的35个属性
  • 地缘政治数据:237个国家的225个属性,以及全世界160,000个城市的14个属性
  • 金融数据:186,000个股票和金融工具的历史和实时属性
  • 数学数据:187种多面体的89个属性,3000种图的258个属性,6种knots的63个属性,21种晶格结构的37个属性,52个测地学方案的32个属性
  • 语言数据:149,000个英语单词的37个属性。26个其他语言的词典
  • 生物医学数据:所有40,000个人类基因的41个数据,27,000类蛋白质的30个属性
  • 天气数据:全球17,000个气象站的43个实时和历史的测量数据
  • Wolfram Alpha数据:来自Wolfram Alpha的亿万兆数据
10. 平台可用性返回顶部
Mathematica可以在许多不同的平台上运行,包括:LinuxAppleMac OS X以及基于NTMicrosoft Windows所有平台都支持64位实现。在6.0.3之前的版本还支持其它操作系统,包括:SolarisAIX、Convex、HP-UX、IRIXMS-DOSNeXTSTEPOS/2、Ultrix和Windows Me.
Mathematica家用版是Microsoft Windows、Linux和Mac OS X(Intel)上的一个32位应用程序
 
11.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

杂项-数学软件:Mathematica的更多相关文章

  1. 杂项-数学软件:MATLAB

    ylbtech-杂项-数学软件:MATLAB MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发.数据可视化.数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATL ...

  2. 杂项-数学软件:Maple

    ylbtech-杂项-数学软件:Maple Maple是目前世界上最为通用的数学和工程计算软件之一,在数学和科学领域享有盛誉,有“数学家的软件”之称.Maple 在全球拥有数百万用户,被广泛地应用于科 ...

  3. 利用数学软件Mathematica的三维图像进行建模

    前言 最近在使用Mathematica进行二元函数的图像绘制,在导出图像选项中看到了obj,maya等三维格式.其实很早之前我就有过这样的想法,但之前使用的是matlab作图,无法导出三维格式.那么废 ...

  4. Mathematica 和 MATLAB、Maple 并称为三大数学软件

    Mathematica是一款科学计算软件,很好地结合了数值和符号计算引擎.图形系统.编程语言.文本系统.和与其他应用程序的高级连接.很多功能在相应领域内处于世界领先地位,它也是使用最广泛的数学软件之一 ...

  5. 数学软件 之 基于MATLAB的DFP算法

    DFP算法是本科数学系中最优化方法的知识,也是无约束最优化方法中非常重要的两个拟Newton算法之一,上一周写了一周的数学软件课程论文,姑且将DFP算法的实现细节贴出来分享给学弟学妹参考吧,由于博客不 ...

  6. 数学软件Matlab的使用感受

    在我一年前的暑假,我们的小学期学习了MATLAB软件.MATLAB是一款数学软件,可以用于算法计算.数据可视化.数据分析以及数据计算. 我们主要学习了MATLAB关于数学上的经常用的一些用法和算法,M ...

  7. 数学软件实训2-MATLAB程序综合设计及应用

    数学软件实训任务二 一 题目:MATLAB程序综合设计及应用 二 目的:熟练掌握MATLAB程序设计的基本方法,会根据MATLAB程序设计的 三 要求: 1 熟练掌握控制流的基本语法结构. 2 会熟练 ...

  8. 数学软件实训1-MATLAB程序设计及应用初步

    数学软件实训任务一 一 题目:MATLAB程序设计及应用初步 二 目的:掌握MATLAB程序设计的基本方法,会利用MATLAB程序设计思想编程处理一些简单问题. 三 要求: 1 掌握控制流的基本语法结 ...

  9. [math][mathematica] archlinux 下 mathematica 的安装 (科学计算软件 mathematica/matlab/sagemath)

    ONLINE: http://www.wolframalpha.com/ GPL: segamath: http://www.sagemath.org/ famous and not free: ma ...

随机推荐

  1. C++实现Prim算法

    闲来无聊,前两天看到一篇关于算法实现的文章.里面又关于图的各种算法介绍,正好上学期还学过图论,现在还记得一点点,先来实现个prim算法: 表示图的文件的内容大体上是这样的: 2.0 1.0 1.0 3 ...

  2. LVS模式二:隧道模式(Tun)

    一.IP隧道(IP Tunneling) ip隧道是一个将ip报文封装到另一个ip报文的技术,这可以使得目标为一个ip地址的数据报文被封装和转发到另一个ip地址.ip隧道技术也成为ip封装技术.    ...

  3. iscroll中文文档

    转自:http://blog.csdn.net/sweetsuzyhyf/article/details/44195549 IScroll.js 最新版本 v5.1.2 修复了输入框无法输入和横向滚动 ...

  4. vue.js 源代码学习笔记 ----- instance proxy

    /* not type checking this file because flow doesn't play well with Proxy */ import config from 'core ...

  5. Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法

    这里也会遇到一次性关闭所有modal引起阴影遮罩的问题,也就是所有modal都关闭了,但是主页面仍然被阴影遮罩. 这个问题从哪来的,是因为modal叠加,我们点击窗口之外的空白部分,一次性关闭所有mo ...

  6. 关于Spinlock机制的一点思考

    存在两段代码同时在多核上执行的情况,这时候才需要一个真正的锁来宣告代码对资源的占有. 几个核可能会同时access临界区,这时的spinlock是如何实现的呢? 要用到CPU提供的一些特殊指令,对lo ...

  7. YXY-压测

    1.首先介绍一下组件Synchronizing Timer Number of Simulated users to Group by:集合点集合够N个用户开始并发 Timeout in millis ...

  8. [Python] dict字典排序和多条件排序

    利用lambda实现排序:要实现多条件排序,只需要依次指定排序的标准,具体实现如下 counter = {'是': 1, '不是': 1, '你': 3} counter_list = sorted( ...

  9. THREE.OrbitControls初始化设置位移/旋转/滚轮

    let oldController;//已知的一个controller //初始化旋转(鼠标左键的操作) let position=oldController.object.position; cam ...

  10. 每天一个linux命令(性能、优化):【转载】vmstat命令

    vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.他是对系统的整体情况进行统计,不足之处是无法对某个进程进行深 ...