Maxima
Maxima 是一种用LISP 编写的计算机代数系统(Computer Algebra System),用于公式推导和符号计算,它是一套自由软件,在GNU通用公共许可证下发行。它由麻省理工学院在美国能源部的支持下于60年代末创造的 Macsyma 演变而来。Macsyma 后来慢慢走上商业化的道路。1982年开始 Bill Schelter 教授(于2001年去世)默默地维护 Macsyma 代码,他把这个软体称为 Maxima。由于版权问题,Maxima 在很长的一段时间内不能公开发行,只有少数人能使用这个软体。在 Schelter 教授努力了16年之后,Maxima 于1998年获得许可,成为开源软体,使得更多的用户和程式设计师能自由的使用 Maxima。
开发者 | 在Project MAC中的Macsyma小组及志愿贡献者 |
---|---|
首次发布 | 1982年 |
当前版本 | 5.44.0(2020年6月8日 | )
源代码库 | |
编程语言 | Common Lisp |
操作系统 | 多平台 |
类型 | 计算机代数系统 |
许可协议 | GPL |
网站 | maxima.sourceforge.net |
Maxima 的前身 Macsyma 在当时是非常创新的软体。现代流行的商业计算机代数系统软体 Maple 及 Mathematica,都是受到 Macsyma 的启发而设计出来的。
产品功能
- 符号运算(含一定的推理能力)
- 各种基础数学函数库
- 复数和任意精度(use "bfloats")计算(只受内存限制)
- 利用 gnuplot 进行2维及3维函数绘图
- 可编程
- 可计算文档,支持插入,标题单元,章节单元,备注,输入单元,文字单元,图片
- 生成 LaTeX 格式的数学式
- 方便的加载 Common Lisp 语言或 Maxima 本身的语言写成的 Package
- 基于符号而不只是数值的微积分运算
- 矩阵运算
- 函数展开化简缩并
- 上千页的手册
版本历史
Maxima 可在 Linux, Mac OS X,及 Windows下编译。
界面
Maxima 核心提供命令行界面,wxMaxima, imaxima 提供 GUI 界面。
代码范例
对表达式 expr 赋值
expr: a*x^k+b*x+c$ ev(expr, a=1, b=2, c=3, k=2);
正弦函数,指定定义域,对数尺度绘图
wxplot2d([sin(x)], [x,-5,5], [logx])$
do 回圈
for a: -3 thru 26 step 7 do display(a)$
相似软体
外部链接
- 官方网站
- Maxima入门介绍(简)
- Maxima手册(英) (页面存档备份,存于互联网档案馆)