Maple (software)
From Wikipedia, the free encyclopedia
| Maple | ||
|---|---|---|
Maple 11 interface |
||
| Developed by | Waterloo Maple Inc. (Maplesoft) | |
| Latest release | 11.02 / November 26, 2007 | |
| OS | Cross-platform | |
| Genre | Computer algebra system | |
| License | Proprietary | |
| Website | www.maplesoft.com/products/maple/ | |
Maple is a general-purpose commercial mathematics software package. It was first developed in 1980 by the Symbolic Computation Group at the University of Waterloo in Waterloo, Ontario, Canada.
Since 1988, it has been developed and sold commercially by Waterloo Maple Inc. (also known as Maplesoft), a Canadian company also based in Waterloo, Ontario. The current version is Maple 11.02 which was released in November 2007. Its main competitor is Mathematica.[1][2]
Contents |
[edit] Overview
[edit] Core Functionality
Users can enter mathematics in traditional mathematical notation. Custom user interfaces can also be easily created. There is support for both numeric and symbolic computation, as well as visualization. Many of the numerical computations are done via the NAG Numerical Libraries; in Maple, the NAG routines have been extended to allow arbitrarily-large precision. Examples of symbolic computations are given below.
Maple incorporates a full high-level programming language. There are also interfaces to other languages (C, Fortran, Java, Matlab, and Visual Basic). There is also an interface with Excel.
[edit] Architecture
Most of the mathematical functionality of Maple is written in the Maple language, which is interpreted by the Maple kernel. The Maple kernel is written in C. Maple runs on all main operating systems.
The Maple programming language is a dynamically typed language. As is usual with computer algebra systems, symbolic expressions are stored in memory as directed acyclic graphs. The language permits variables of lexical scope. The language has an applicative feel; there is also full support for traditional, imperative-style programming.
Unusually for a commercial program, most of the source code is freely viewable.
[edit] Origin of the Name
The name "Maple" is not an abbreviation or acronym, but simply a reference to Maple’s Canadian heritage.
[edit] Examples of Maple code
Find Failed to parse (Missing texvc executable; please see math/README to configure.): \int\cos\left(\frac{x}{a}\right)dx .
integrate(cos(x/a), x);
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): a \sin\left(\frac{x}{a}\right)
Compute an exact solution to the linear ordinary differential equation Failed to parse (Missing texvc executable; please see math/README to configure.): \frac{d^2y}{dx^2}(x) - 3 y(x) = x
subject to initial conditions Failed to parse (Missing texvc executable; please see math/README to configure.): y(0) = 0 ,\quad \left. \frac{dy}{dx} \right|_{y=0} = 2
dsolve( {diff(y(x),x,x) - 3*y(x) = x, y(0)=0, D(y)(0)=2}, y(x) );
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): y(x)=\frac{7}{18}e^{\sqrt{3}x}\sqrt{3}-\frac{7}{18}e^{-\sqrt{3}x}\sqrt{3}-\frac{1}{3}x
Numerically calculate the root of the equation Failed to parse (Missing texvc executable; please see math/README to configure.): e^x=x^2+2\,\!
starting at the point Failed to parse (Missing texvc executable; please see math/README to configure.): x=-1\,\!
- evaluate the answer to 75 decimal digits.
evalf[75](RootOf(exp(x)=x^2+2,x,-1));
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): 1.31907367685736535441789910952084846442196678082549766925608900490512707635
Compute the determinant of a matrix.
M:= Matrix([[1,2,3], [a,b,c], [x,y,z]]); # example Matrix
- Failed to parse (Missing texvc executable; please see math/README to configure.): \begin{bmatrix} 1 & 2 & 3 \\ a & b & c \\ x & y & z \end{bmatrix}
with(LinearAlgebra):Determinant(M);
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): bz-cy+3ay-2az+2xc-3xb
Plot Failed to parse (Missing texvc executable; please see math/README to configure.): x^2+y^2
with Failed to parse (Missing texvc executable; please see math/README to configure.): x and Failed to parse (Missing texvc executable; please see math/README to configure.): y ranging from -1 to 1
plot3d(x^2+y^2,x=-1..1,y=-1..1);
Solve the system of partial differential equations
- Failed to parse (Missing texvc executable; please see math/README to configure.): {\frac {\partial }{\partial x}}v \left( x,t \right) =-u \left( x,t \right) v \left( x,t \right)
- Failed to parse (Missing texvc executable; please see math/README to configure.): {\frac {\partial }{\partial t}}v \left( x,t \right) =-v \left( x,t \right) {\frac {\partial }{\partial x}}u \left( x,t \right) +v \left( x,t \right) \left( u \left( x,t \right) \right) ^{2}
- Failed to parse (Missing texvc executable; please see math/README to configure.): {\frac {\partial }{\partial t}}u \left( x,t \right) +2\,u \left( x,t \right) {\frac {\partial }{ \partial x}}u \left( x,t \right) -{\frac {\partial ^{2}}{\partial {x}^{2}}}u \left( x,t \right) =0
with Failed to parse (Missing texvc executable; please see math/README to configure.): v(x,t)\neq 0 .
eqn1:= diff(v(x, t), x) = -u(x,t)*v(x,t):
eqn2:= diff(v(x, t), t) = -v(x,t)*(diff(u(x,t), x))+v(x,t)*u(x,t)^2:
eqn3:= diff(u(x,t), t)+2*u(x,t)*(diff(u(x,t), x))-(diff(diff(u(x,t), x), x)) = 0:
pdsolve({eqn1,eqn2,eqn3,v(x,t)<>0},[u,v]): op(%);
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): v \left( x,t \right) ={e^{\sqrt {{\it \_c}_{{1}}}x}}{\it \_C3 }\,{e^{{\it \_c}_{{1}}t}}{\it \_C1}+{\frac {{\it \_C3}\,{e^{{\it \_c}_ {{1}}t}}{\it \_C2}}{{e^{\sqrt {{\it \_c}_{{1}}}x}}}}, \ \ u \left( x,t \right) =-{\frac {\sqrt {{\it \_c}_{{1}}} \left( {\it \_C1}\, \left( {e^{\sqrt {{\it \_c}_{{1}}}x}} \right) ^{2}-{\it \_C2} \right) }{{\it \_C1}\, \left( {e^{\sqrt {{\it \_c}_{{1}}}x}} \right) ^{2}+{\it \_C2}} }
Find functions Failed to parse (Missing texvc executable; please see math/README to configure.): f
that satisfy the integral equation
Failed to parse (Missing texvc executable; please see math/README to configure.): f(x)-3\int_{-1}^1(xy+x^2y^2)f(y)dy = h(x) .
eqn:= f(x)-3*Integrate((x*y+x^2*y^2)*f(y), y=-1..1) = h(x): intsolve(eqn,f(x));
Answer: Failed to parse (Missing texvc executable; please see math/README to configure.): f \left( x \right) =\int _{-1}^{1}\! \left( -15\,{x}^{2}{y}^{2}-3\,xy \right) h \left( y \right) {dy}+h \left( x \right)
Sample imperative programming constructs: <source lang="pascal"> myfac := proc(n)
local out, i;
out := 1;
if n < 0 then
error "input must be nonnegative"
else
for i from 1 to n do
out := out * i
end do;
out
end if
end proc; </source>
[edit] History
The first concept of Maple arose from a meeting in November 1980 at the University of Waterloo. Researchers at the university wished to purchase a computer powerful enough to run Macsyma. Instead, it was decided that they would develop their own computer algebra system that would be able to run on more reasonably priced computers. Thus, the project began with the goal of creating a symbolic algebra system accessible to researchers and students.
The initial development of Maple proceeded very quickly, with the first limited version appearing in December 1980. Researchers tried and discarded many different ideas creating a continually evolving system. Maple was demonstrated first at conferences beginning in 1982.
By the end of 1983, over 50 universities had copies of Maple installed on their machines. Due to the large number of support and licensing requests, in 1984, the research group arranged with WATCOM Products Inc to license and distribute Maple.
In 1988, due to the increasing requests for support, Waterloo Maple Inc. was founded. The company’s original goal was to manage the distribution of the software. Eventually, the company evolved to have an R&D department where much of Maple’s development is done today. Significant development of Maple continues at university research labs including: the Symbolic Computation Laboratory at the University of Waterloo; the Ontario Research Centre for Computer Algebra at the University of Western Ontario; and labs at other universities worldwide.
| Error creating thumbnail: convert: unable to open image `/home/www/en.wikilib.com/images/e/e0/Maple_morphos.png': No such file or directory. convert: missing an image filename `/home/www/en.wikilib.com/images/thumb/e/e0/Maple_morphos.png/300px-Maple_morphos.png'. |
In 1989, the first graphical user interface for Maple was developed and included with version 4.3 for the Macintosh. Prior versions of Maple included only a command line interface with two dimensional output. X11 and Windows versions of the new interface followed in 1990 with Maple V.
In 1999, with the release of Maple 6, Maple included some of the NAG Numerical Libraries, extended to arbitrary precision.
In 2003, the current "standard" interface was introduced with Maple 9. This interface is primarily written in Java (although portions, such as the rules for typesetting mathematical formulae, are written in the Maple language). The Java interface was criticized for being slow[3]; improvements have been made in later versions, although the Maple 11 documentation[4] recommends the previous (“classic”) interface for users with less than 500 MB of physical memory. This classic interface is no longer being maintained.
In 2005, Maple 10 introduced a new “document mode”, as part of the standard interface. The main feature of this mode is that math is entered using two dimensional input, so that it appears similar to formulae in a book.
[edit] Past releases
- Maple 11: February 21, 2007
- Maple 10: May 10, 2005
- Maple 9.5: April 15, 2004
- Maple 9: June 30, 2003
- Maple 8: April 16, 2002
- Maple 7: July 1, 2001
- Maple 6: December 6, 1999
- Maple V R5: November 1, 1997
- Maple V R4: January, 1996
- Maple V R3: March 15, 1994
- Maple V R2: November 1992
- Maple V: August, 1990
- Maple 4.3: March, 1989
- Maple 4.2: December, 1987
- Maple 4.1: May, 1987
- Maple 4.0: April, 1986
- Maple 3.3: March, 1985 (first publicly available version)
- Maple 3.2: April, 1984
- Maple 3.1: October, 1983
- Maple 3.0: May, 1983
- Maple 2.2: December, 1982
- Maple 2.15: August, 1982
- Maple 2.1: June, 1982
- Maple 2.0: May, 1982
- Maple 1.1: January, 1982
- Maple 1.0: January, 1982
[edit] Use of the Maple Engine
- Maple T.A., Maplesoft’s online testing suite, uses Maple to algorithmically generate questions and grade student responses.
- MapleNet allows users to create JSP pages and Java Applets. MapleNet 10 also allows users to upload and work with Maple worksheets containing interactive components.
- Versions of MathCad released between 1994 and 2006 included a Maple-derived algebra engine (MKM, aka Mathsoft Kernel Maple), though subsequent versions use Mupad.
- Symbolic Math Toolbox in MATLAB contains a portion of the Maple 8 engine.
- Older versions of the mathematical editor Scientific Notebook included Maple as a computational engine, though current versions include MuPAD.
[edit] Versions available
Maplesoft sells both student and professional editions of Maple, with a substantial difference in price (US$139 compared to US$1,895.00, respectively). Recent student editions (from version 6 onwards) have not placed computational limitations, but rather come with less printed documentation.
[edit] See also
- Comparison of computer algebra systems
- MaplePrimes - a blog devoted to Maple
- MapleNet
- Mathematical software
- Waterloo Maple - the creator and distributor of Maple
[edit] References
- ^ History of computing at Waterloo University Wes Graham Fonds
- ^ Open, Dynamic Content and e-Learning Management Infrastructure for Engineering and Natural Sciences Journal of e-Learning
- ^ Capturing knowledge with pure maths, Scientific Computing World.
- ^ Maple 11 Installation Guide
[edit] External links
- Maplesoft, division of Waterloo Maple, Inc. home websitede:Maple
es:Maple (software) fa:میپل fr:Maple ko:메이플 (소프트웨어) it:Maple he:Maple lt:Maple nl:Maple ja:Maple pl:Maple pt:Maple ru:Maple sl:Maple fi:Maple sv:Maple zh:MAPLE


