关于Octave

来源:互联网 发布:网络墙 编辑:程序博客网 时间:2024/06/06 01:29
1.1 Octave是什么?Octave是一款用于数值计算和绘图的开源软件。和Matlab一样,Octave尤其精于矩阵运算:求解联立方程组、计算矩阵特征值和特征向量等等。在许多的工程实际问题中,数据都可以用矩阵或向量表示出来而问题转化为对这类矩阵的求解。另外,Octave能够通过多种形式将数据可视化,并且Octave本身也是一门编程语言而易于扩展。因此我们可以称Octave是一款非常强大的可编程可视化计算程序。Octave让解决很大范围内的数值问题变得简单,给使用者更多的时间来进行实验和考虑问题。Octave最初被开发时只是一款用于本科生化学课程的辅助程序。当前Octave项目的开发由J.W.Eation博士领导并遵循GNUGeneralPublicLicence发布。Octave与科研和工程中普遍使用的Matlab基本兼容,因此其易用性也越来越好。1.2 Octave不是什么?Octave是用于数值地解决数学问题的,即在计算机内存内处理相应的数值。因此Octave和Mathemat-ica、Maple这类通过数学推导给出问题符号解的程序不同,它不能给出问题的精确解。这无所谓好或者坏——不同软件处理不同的问题罢了。而且,很多实际的数学问题(尤其是工程问题)都没有解析解。1.3 Octave的适用对象Octave和Maltab被工程人员和科研人员广泛使用来进行各种工业和学术上的数值计算和仿真。例如,NASA使用它来开发飞行器的对接系统;JaguarRacing使用它来可视化和分析从F1赛车传来的数据;Sheffield大学用它来开发用于识别癌细胞的软件。Octave这样的软件让编写数值处理程序变得简单,并提供数据可视化的多种方式。1.4 与常见的高级语言(如C++)的区别C++以及其他的常用的编程语言更多得用来编写具有特定功能的软件。然而,使用C++来处理数值方面的问题过于复杂费时,而且这样的编程语言不原生的支持一些数学概念或者生成图形。Octave是专为解决这类问题而设计的。即使人们最终使用C++这样的语言来编写软件,他们很多时候都用Octave来编写软件的原型或者数学部分,因为这样能够很快的检验其算法