含有章节索引的中文 文章模板
::-- hoxide [2005-07-30 14:02:03]
Maxima
简介
- 用LISP语言编写的强大的计算机代数系统.
官方页面
http://maxima.sourceforge.net/
例子
讨论
- 暂时还不太会用, 比较复杂.
含有章节索引的中文 文章模板
::-- hoxide [2005-07-30 12:36:55]
Mathomatic
简介
- 是 Mathomatic 不是 Mathematica , 公元2005年7月30日, 在更新 cygwin 的时候偶然发现的. Mathematica 是一个轻便的通用计算机代数系统 CAS (Computer Algebra System), 它是用C写成的, 使用 GNU LGPL license.
官方页面
http://mathomatic.orgserve.de/math/
文档
例子
一些简单的例子
Mathomatic Version 12.3.2 (www.mathomatic.com)
Copyright (C) 1987-2005 George Gesslein II.
40 equation spaces allocated (total size is 9600 KBytes).
1-> ; Simplification tests.
1->
1-> clear all
1-> t=2*(x^2 - y^2)^6 - (x^2 - y^2)^5*(2 x^2 - 3)
#1: t = (2*(((x^2) - (y^2))^6)) - ((((x^2) - (y^2))^5)*((2*(x^2)) - 3))
1-> simplify
#1: t = (((y^2) - (x^2))^5)*((2*(y^2)) - 3)
1-> t=a^3/((a-b)*(a-c)) + b^3/((b-c)*(b-a)) + c^3/((c-a)*(c-b))
(a^3) (b^3) (c^3)
#2: t = ----------------- + ----------------- + -----------------
((a - b)*(a - c)) ((b - c)*(b - a)) ((c - a)*(c - b))
2-> simplify
#2: t = a + b + c
2-> t=(x^6+a^6)*(x+1)/((x^6+a^6)*(x^2-a^2)+a^2*x^2*(x^4-a^4))+a^2*x^2*(x+1)/(x^6-a^6-a^2*x^2*(x^2-a^2))
((x^6) + (a^6))*(x + 1) (a^2)*(x^2)*(x + 1)
#3: t = ------------------------------------------------------------------- + -----------------------------------------------
((((x^6) + (a^6))*((x^2) - (a^2))) + ((a^2)*(x^2)*((x^4) - (a^4)))) ((x^6) - (a^6) - ((a^2)*(x^2)*((x^2) - (a^2))))
3-> simplify
Found polynomial Greatest Common Divisor. Division simplified.
Found polynomial Greatest Common Divisor. Division simplified.
(x + 1)
#3: t = ---------------
((x^2) - (a^2))
3-> t=((a*n + b*m)^2 + (a*m - b*n)^2) / ((a*p + b*q)^2 + (a*q - b*p)^2)
((((a*n) + (b*m))^2) + (((a*m) - (b*n))^2))
#4: t = -------------------------------------------
((((a*p) + (b*q))^2) + (((a*q) - (b*p))^2))
4-> simplify
((n^2) + (m^2))
#4: t = ---------------
((p^2) + (q^2))
4-> y=((p*x^2+(k-s)*x+r)^2-(p*x^2+(k+s)*x+r)^2)/((p*x^2+(k+t)*x+r)^2-(p*x^2+(k-t)*x+r)^2)
((((p*(x^2)) + ((k - s)*x) + r)^2) - (((p*(x^2)) + ((k + s)*x) + r)^2))
#5: y = -----------------------------------------------------------------------
((((p*(x^2)) + ((k + t)*x) + r)^2) - (((p*(x^2)) + ((k - t)*x) + r)^2))
5-> simplify
-1*s
#5: y = ----
t
5-> t=(1 - (1-(y+1)/(x+y+1)) / (1-x/(x+y+1))) / ((y+1)^2 - x / (1+x/(y-x+1))*(x*(y+1)/(y-x+1) - x))
(y + 1)
(1 - -----------)
(x + y + 1)
(1 - -----------------)
x
(1 - -----------)
(x + y + 1)
#6: t = -----------------------------------
x*(y + 1)
x*(----------- - x)
(y - x + 1)
(((y + 1)^2) - -------------------)
x
(1 + -----------)
(y - x + 1)
6-> simplify
Found polynomial Greatest Common Divisor. Division simplified.
1
#6: t = -----------------------------------------
(1 + (y^2) + (2*y) + (x*(y + 1)) + (x^2))
6-> y=((2*((x*(x + (((x^2) - 1)^(1/2)))) - 1)) + 1)/((2*x*((x^2) - 1)) + ((((x^2) - 1)^(1/2))*((2*(x^2)) - 1)))
1
((2*((x*(x + (((x^2) - 1)^-))) - 1)) + 1)
2
#7: y = -------------------------------------------------------
1
((2*x*((x^2) - 1)) + ((((x^2) - 1)^-)*((2*(x^2)) - 1)))
2
7-> simplify
1
#7: y = ---------------
1
(((x^2) - 1)^-)
2
Thank you for using Mathomatic!
讨论
个人感觉非常好用, 比 Maxima 简单. --- Hoxide
含有章节缩影的FLOSS中文 文章模板
::-- hoxide [2005-07-30 12:48:24]
Octave
简介
- 和Matlab语言级兼容的数学环境, 最初用来辅助化学教学, 现在成长为有广泛用户支持的第一大开源计算环境.
官方页面
下载
文档
例子
讨论
- 前一段时间一直在用Octave, 总体不错, 但是虽然有Octave-forge的支持, Octave的库和Matlab比起来还是太单薄.
- --- Hoxide
含有章节索引的FLOSS中文 文章模板
::-- hoxide [2005-07-30 12:48:24]
GNU Plot
简介
- GNU的数学绘图工具, 功能非常强大, 可以画出非常漂亮的图像, 并能输出为各种格式.
官方页面
文档
例子
讨论
- GNU Plot对初学者来说的确有一定难度, 不过一旦你学会了他, 也就学会了有关数学绘图的基础知识, 用起来就得心应手. --- Hoxide
含有章节索引的中文 文章模板
::-- hoxide [2005-07-29 11:38:45]
Contents
MetaPost
简述
用MetaPost 3d 创建三维动画
原来的脚本是linux下的, win下不好用, 偶改成用 ImageMagick, 和GhostScrpit.
/bin/rm -f animpoly.log
for i in `ls animpoly.*| grep 'animpoly.[0-9]'`;do
echo $i
echo '=============='
awk < $i '{print} /^%%Page: /{print "181 156 translate\n"}' > $i.ps
gswin32c -sDEVICE=ppm -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -r36 -q -sOutputFile=$i.ppm $i.ps
rm -f $i.ps
done
rm -f animpoly.gif
convert animpoly.*.ppm -adjoin animpoly.gif
rm -f animpoly.*.ppm演示例子:
项目版本下载页面模板
::-- hoxide [2005-07-22 09:05:47]
GLPK
简述
GNU 线性规划工具箱 (GNU Linear Programming Kit). 线性规划是一类常见的规划问题, 国内普遍使用的是Lindo 和 Matlab 优化工具箱, 但这两个软件都是商业软件.
GLPK 是 GNU 的线性规划软件解决方案, 他快速通用, 不仅可处理 LP, MPS, 等标准 LP 问题描述格式文件, 而且还支持功能更强大的 GNU MathProg 建模语言.
GLPK 以标准的 GNU 代码包形式发布, 对unix上的用户简单得 configure/make/install 就可以使用了. 对windows上的用户暂未看到其他编译版本. 为此我用 Mingw 编译了一个版本, 提供下载. 另附 PdfLaTeX 编译的参考手册.
感谢 DreamY 关于Mingw编译环境使用方面的指导, 另外感谢 huangyi 在普通机器上测试了GLPK的第一个mingw编译版本. 使用Windows+Visual C++的用户,可以使用VC++的命令行工具nmake或者IDE进行编译.
官方页面
http://www.gnu.org/software/glpk/glpk.html
版本
说明
独立文件
- --- 独立的 LP/MIP solver, 一般只要这个文件就够了, 命令行工具.
C:\>glpsol --help
Usage: glpsol [options...] filename
General options:
--glp read LP/MIP model in GNU LP format
--mps read LP/MIP problem in fixed MPS format (default)
--freemps read LP/MIP problem in free MPS format
--cpxlp read LP/MIP problem in CPLEX LP format
--math read LP/MIP model written in GNU MathProg modeling
language
-m filename, --model filename
read model section and optional data section from
filename (the same as --math)
-d filename, --data filename
read data section from filename (for --math only);
if model file also has data section, that section
is ignored
-y filename, --display filename
send display output to filename (for --math only);
by default the output is sent to stdout
--min minimization
--max maximization
--scale scale problem (default)
--noscale do not scale problem
--simplex use simplex method (default)
--interior use interior point method (for pure LP only)
-o filename, --output filename
write solution to filename in plain text format
--bounds filename
write sensitivity bounds to filename in plain
text format (LP only)
--tmlim nnn limit solution time to nnn seconds
--memlim nnn limit available memory to nnn megabytes
--check do not solve problem, check input data only
--name probname change problem name to probname
--plain use plain names of rows and columns (default)
--orig try using original names of rows and columns
(default for --mps)
--wglp filename write problem to filename in GNU LP format
--wmps filename write problem to filename in fixed MPS format
--wfreemps filename
write problem to filename in free MPS format
--wcpxlp filename write problem to filename in CPLEX LP format
--wtxt filename write problem to filename in plain text format
-h, --help display this help information and exit
-v, --version display program version and exit
Options specific to simplex method:
--std use standard initial basis of all slacks
--adv use advanced initial basis (default)
--bas filename read initial basis from filename in MPS format
--steep use steepest edge technique (default)
--nosteep use standard "textbook" pricing
--relax use Harris' two-pass ratio test (default)
--norelax use standard "textbook" ratio test
--presol use presolver (default; assumes --scale and --adv)
--nopresol do not use presolver
--wbas filename write final basis to filename in MPS format
Options specific to MIP:
--nomip consider all integer variables as continuous
(allows solving MIP as pure LP)
--first branch on first integer variable
--last branch on last integer variable
--drtom branch using heuristic by Driebeck and Tomlin
(default)
--mostf branch on most fractional varaible
--dfs backtrack using depth first search
--bfs backtrack using breadth first search
--bestp backtrack using the best projection heuristic
(default)
--bestb backtrack using node with best local bound
For description of the MPS and CPLEX LP formats see Reference Manual.
For description of the modeling language see "GLPK: Modeling Language
GNU MathProg". Both documents are included in the GLPK distribution.
See GLPK web page at <http://www.gnu.org/software/glpk/glpk.html>.
Please report bugs to <[email protected]>.tspsol.exe --- TSP slover
examples.zip --- GLPK提供的例子文件.
完整程序
- --- 完整程序, 包括 glpsov, tspsol, examples, 头文件和静态连接库
参考手册
- --- GLPK 参考手册, 包括c API调用方法, 和glpsol的用法.
--- Modeling Language GNU MathProg 语言参考
What's New