Maple (софтвер)

Maple
Maple интерфејс
Maple интерфејс
Програмер(и)Waterloo Maple (Maplesoft)
Прво издање1982.
Написан уC, Јава
ТипРачунарски алгебарски систем
ЛиценцаВласнички софтвер
Веб-сајтwww.maplesoft.com/products/maple/

Maple (транскрибовано: Мејпл) је комерцијални рачунарски алгебарски систем развијан и пуштен у продају од стране компаније Maplesoft, чије се седиште налази у Вотерлуу, у Канади. Тренутна главна верзија је верзија 2015, која је пуштена у коришћење марта 2015.

Мејпл је почела да развија Група за Симполичка Израчунавања 1980. године на Вотерлу Универзитету. 1988, компанија Maplesoft (транскрибовано: Мејплсофт) (тада под именом Waterloo Maple Inc.) је основана у сврху комерцијализације технологије.

Преглед

Кључна функционалност

Корисници могу да унесу математичке формуле користећи се стандардном математичком нотацијом. Прилагођени кориснички интерфејси такође могу бити направљени. Ту је и подршка за нумеричке прорачуне, произвољну прецизност, као и за симболичко рачунање и визуелизацију. Примери симболичких израчунавања су дати у наставку чланка.

Maple садржи динамички уношен програмски језик у императивном стилу који подсећа на Pascal.[1] Језик дозвољава променљиве у оквиру лексичког обима. Такође постоје и корисничка сучеља за остале језике (C, C#, Fortran, Java, MATLAB и Visual Basic), а и за Excel.

Maple подржава MathML 2.0, W3C формат за приказивање и интерпретацију математичких израза, укључујући њихов приказ на интернет странама.[2]

Архитектура

Maple је занован на kernel-у, који је написан у језику C, који обезбеђује Maple језик. Највећи део функционалности је обезбеђен кроз библиотеке, које потичу из разних извора. Већина библиотека је написана у Maple језику; ове имају изворни код који може да се види. Доста бројевних израчунавања се извршава путем NAG нумеричких библиотека, ATLAS библиотека, или GMP библиотека.

Другачија функционалност унутар Maple-а захтева да бројевни подаци буду у другом формату. Симболички изрази се складиште у меморији као директни ациклични графови. Стандардно сучеље и сучеље за калкулатор је написано у језику Java.

Историја

Први концепт Maple-а се појавио на састанку новембра 1980. године на Универзитету Вотерлу. Истраживачи са универзитета су хтели на набаве довољно јак рачунар који би могао да покрене програм Macsyma. Уместо тога, одлучили су се за развој сопственог програма који би могао да ради на јефтинијим рачунарима. Прва ограничена верзија која се појавила у децембру 1980. је садржала Maple, а демонстрирана је на конференцијама почевши од 1982. Име Maple асоцира на симбол Канаде (јаворов лист), где је програм и направљен. До краја 1983, преко 50 универзитета је поседовало копије Maple-а инсталиране на својим рачунарима.

Године 1984,, група истраживача се договорила са компанијом Watcom Products Inc око лиценцирања и дистрибуције Maple-а. 1988, компанија Waterloo Maple је основана. Првобитни циљ ове компаније је био само дистрибуција софтвера. Евентуално, компанија је напредовала и добила одсек за истраживање и развој где се и дан данас одвија највећи део развоја Maple-а, а остатак се одвија на универзитетским истраживачким лабораторијама широм света, укључујући Лабораторију за симболичка израчунавања на Универзитету Вотерлу и Истраживачком центру за рачунарску алгебру у Онтариу на Универзитету Западни Онтарио[who?].

Године 1989,, прво графичко корисничко сучеље за Maple је развијено и садржано у верзији 4.3 за Macintosh. X11 и Windows верзије су потом уследиле године 1990. са Maple V. 1994, развојни тим Maple-a је издао билтен под називом MapleTech.[3]

Године 1999,, кад је Maple 6 изашао, донео је новитете попут NAG нумеричких библиотека.[4] Године 2003, у Maple 9 верзији представљено је „стандардно“ сучеље које се и дан данас користи. Ово сучеље је написано у језику Java (иако су делови, као што су правила за слагање унутар математичких формула, написани на језику Maple). Java сучеље је критиковано због своје брзине;[5] касније су направљена побољшања, иако се у документацији за Maple 11[6] препоручује коришћење претходног („класичног“) сучеља за кориснике који имају мање од 500 MB физичке меморије. Ово класично сучеље се више не одржава (нема подршку).

Између средине 1995. и 2005, Maple је препустио конкуренцији значајан тржишни удео због слабијег корисничког сучеља.[7] 2005, у верзији Maple 10 је представљен нов „документ режим“, као део стандардног сучеља. Уношење математичких симбола путем дводимензионалног улаза је главна одлика овог режима. Године 2008, у верзији Maple 12 укључено је и корисничко сучеље које се користи у програму Mathematica, укључујући одвојене листове са специјалним наменама, контролу над заглављима, подударање носача, регионе са аутоматским извршавањем, шаблоне са извршавањем команди, проверу синтаксе и регионе са аутоматским покретањем. Додатне ствари су убачене које чине Maple лакшим за коришћење у улози MATLAB тулбокса.[8]

У верзији Maple 13 је уведено брзинско прављење 3-D графика.[9]

Септембра 2009, компаније Maple и Maplesoft су куљене од стране јапанске фирме за дистрибуцију софтвера Cybernet Systems.

Датуми пуштања нових верзија

° Maple 1.0: јануар, 1982 ° Maple 1.1: јануар, 1982 ° Maple 2.0: мај, 1982 ° Maple 2.1: јун, 1982 ° Maple 2.15: август, 1982 ° Maple 2.2: децембар, 1982 ° Maple 3.0: мај, 1983 ° Maple 3.1: октобар, 1983 ° Maple 3.2: април, 1984 ° Maple 3.3: март, 1985 (прва верзија доступна јавности) ° Maple 4.0: април, 1986 ° Maple 4.1: мај, 1987 ° Maple 4.2: децембар, 1987 ° Maple 4.3: март, 1989 ° Maple V: август, 1990 ° Maple V R2: новембар 1992 ° Maple V R3: март 15, 1994 ° Maple V R4: јануар, 1996 ° Maple V R5: новембар 1, 1997 ° Maple 6: децембар 6, 1999 ° Maple 7: јул 1, 2001 ° Maple 8: април 16, 2002 ° Maple 9: јун 30, 2003 ° Maple 9.5: април 15, 2004 ° Maple 10: мај 10, 2005 ° Maple 11: фебруар 21, 2007 ° Maple 11.01: јул, 2007 ° Maple 11.02: новембар, 2007 ° Maple 12: мај, 2008 ° Maple 12.01: октобар, 2008 ° Maple 12.02: децембар, 2008 ° Maple 13: април, 2009 ° Maple 13.01: јул, 2009 ° Maple 13.02: октобар, 2009 ° Maple 14: април 2010 ° Maple 14.01: октобар 28, 2010 ° Maple 15: април 13, 2011 ° Maple 15.01: јун 21, 2011 ° Maple 16: март 28, 2012 ° Maple 16.01: мај 16, 2012 ° Maple 17: март 2013 ° Maple 17.01: јул 2013 ° Maple 18: март 2014 ° Maple 18.01: мај 2014 ° Maple 18.01a: јул 2014 ° Maple 18.02: новембар 2014 ° Maple 2015: март 2015 ° Maple 2015.1: новембар 2015

Примери Maple кода

Пример конструкције унутар императивног програмирања:

myfac := proc(n::nonnegint)
   local out, i;
   out := 1;
   for i from 2 to n do
       out := out * i
   end do;
   out
end proc;

Просте функције се такође могу дефинисати користећи "maps to" нотацију са стрелицом:

 myfac := n -> product( i, i=1..n );

Интеграљење

Наћи

cos ( x a ) d x {\displaystyle \int \cos \left({\frac {x}{a}}\right)dx} .
int(cos(x/a), x);

Одговор:

a sin ( x a ) {\displaystyle a\sin \left({\frac {x}{a}}\right)}

Детерминанта

Израчунати детерминанту матрице.

 M:= Matrix([[1,2,3], [a,b,c], [x,y,z]]);  # example Matrix
[ 1 2 3 a b c x y z ] {\displaystyle {\begin{bmatrix}1&2&3\\a&b&c\\x&y&z\end{bmatrix}}}
LinearAlgebra:-Determinant(M);
b z c y + 3 a y 2 a z + 2 x c 3 x b {\displaystyle bz-cy+3ay-2az+2xc-3xb}

Проширивање низа

series(tanh(x),x=0,15)
x 1 3 x 3 + 2 15 x 5 17 315 x 7 {\displaystyle x-{\frac {1}{3}}\,x^{3}+{\frac {2}{15}}\,x^{5}-{\frac {17}{315}}\,x^{7}}
+ 62 2835 x 9 1382 155925 x 11 + 21844 6081075 x 13 + O ( x 15 ) {\displaystyle +{\frac {62}{2835}}\,x^{9}-{\frac {1382}{155925}}\,x^{11}+{\frac {21844}{6081075}}\,x^{13}+O(x^{15})}

Нумеричко решавање једначина

Полином високог степена

 >f := x^53-88*x^5-3*x-5 = 0

 >fsolve(f)

 -1.097486315, -.5226535640, 1.099074017

Решавање групе једначина

 >f := (sin(x+y))^2 + exp(x)*y+cot(x-y)+cosh(z+x) = 0:

 >g := x^5 - 8*y = 2:

 >h:=x+3*y-77*z=55;
                    
 >fsolve( {f,g,h} );

 {x = -1.543352313, y = -1.344549481, z = -.7867142955}

Цртање графика функције једне променљиве

График  x sin ( x ) {\displaystyle x\cdot \sin(x)} са  x {\displaystyle x} које варира од -10 до 10
 plot(x*sin(x),x=-10..10);

Цртање графика функције две променљиве

График  x 2 + y 2 {\displaystyle x^{2}+y^{2}} са  x {\displaystyle x} и y {\displaystyle y} који варирају од -1 до 1
 plot3d(x^2+y^2,x=-1..1,y=-1..1);

Анимирање функција

  • анимирање функција две променљиве
f := 2 k 2 / cosh ( k ( x 4 k 2 t ) ) 2 {\displaystyle f:=2\cdot k^{2}/\cosh(k\cdot (x-4\cdot k^{2}\cdot t))^{2}}
 with(plots);
 animate(subs(k = .5, f), x = -30 .. 30, t = -10 .. 10, numpoints = 200, frames = 50, color = red, thickness = 3);
2D солитона у облику звона
3D анимација функције
  • анимирање функција са три променљиве
     with(plots)
     animate3d(cos(t*x)*sin(3*t*y), x = -Pi .. Pi, y = -Pi .. Pi, t = 1 .. 2)
    

Лапласова трансформација

with(inttrans);
  • Лапласова трансформација
f := (1+A*t+B*t^2)*exp(c*t);
( 1 + A t + B t 2 ) e c t {\displaystyle (1+A\cdot t+B\cdot t^{2})\cdot e^{c\cdot t}}
laplace(f, t, s);
1 s c + A ( s c ) 2 + 2 B ( s c ) 3 {\displaystyle {\frac {1}{s-c}}+{\frac {A}{(s-c)^{2}}}+{\frac {2B}{(s-c)^{3}}}}
  • инверзна Лапласова трансформација
invlaplace(1/(s-a),s,x)
e a x {\displaystyle e^{ax}}

Фуријеова трансформација

 with(inttrans):
 fourier(sin(x),x,w)
I π ( D i r a c ( w + 1 ) D i r a c ( w 1 ) ) {\displaystyle \mathrm {I} \pi \,(\mathrm {Dirac} (w+1)-\mathrm {Dirac} (w-1))}

Интегралне једначине

Наћи функције  f {\displaystyle f} које задовољавају услов интегралне једначине

f ( x ) 3 1 1 ( x y + x 2 y 2 ) f ( y ) d y = h ( x ) {\displaystyle f(x)-3\int _{-1}^{1}(xy+x^{2}y^{2})f(y)dy=h(x)} .
 eqn:= f(x)-3*Int((x*y+x^2*y^2)*f(y), y=-1..1) = h(x):
 intsolve(eqn,f(x));
f ( x ) = 1 1 ( 15 x 2 y 2 3 x y ) h ( y ) d y + h ( x ) {\displaystyle 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)}

Примена Maple покретача

Maple покретач се користи у више производа Maplesoft-а:

  • Maple T.A., програм за тестирање на интернету, користи Maple за алгоритамско генерисање питања и за оцењивање одговора студената.
  • MapleNet дозвољава својим корисницима креацију JSP и Java аплета. MapleNet 12 и новије верзије дозвољавају корисницима унос и рад са Maple упутствима за рад која садрже интерактивне делове.
  • MapleSim, алат за инжењерске симулације.

На листи испод се налазе комерцијални проиводи који више не користе Maple покретач:

  • Верзије Mathcad-а које су пуштене између 1994. и 2006. укључујући алгебарски покретач настао из Maple-а (MKM, или Mathsoft Kernel Maple), мада касније верзије користе MuPAD.
  • Symbolic Math Toolbox у MATLAB-у је садржао део Maple 10 покретача, али сада користи MuPAD (почевши са MATLAB R2007b+ издањем).[10]
  • Старије верзије програма за математичка израчунавања Scientific Workplace су садржале Maple као покретач за израчунавање, али садашње верзије за то користе MuPAD.

Види још

Референце

  1. ^ Power of two Архивирано на сајту Wayback Machine (6. јул 2010) Bitwise Magazine
  2. ^ Welcome to the Maplesoft MathML Home Page
  3. ^ MapleTech Special Issue, Birkhäuser-Boston, (1994)
  4. ^ Maple 6.0 Архивирано на сајту Wayback Machine (18. јун 2008) Macworld, Feb 2001
  5. ^ Capturing knowledge with pure maths Архивирано на сајту Wayback Machine (3. март 2016), Scientific Computing World.
  6. ^ Maple 11 Installation Guide
  7. ^ Interview with Gaston Gonnet, co-creator of Maple, SIAM History of Numerical Analysis and Computing, March 16, 2005
  8. ^ New in Maple 12 Архивирано на сајту Wayback Machine (22. април 2009) Maplesoft
  9. ^ Using the New Fly-through Feature in Maple 13 Maplesoft
  10. ^ "Release Notes for Symbolic Math Toolbox".

Спољашње везе

Maple на Викимедијиној остави.
  • Maplesoft, division of Waterloo Maple, Inc. званична интернет страница
  • MaplePrimes - интернет страница за кориснике Maple-a
  • Поређење математичких програма за анализу података (страница на енглеском) ScientificWeb
  • п
  • р
  • у
Отворени код
Затворени кодБез подршке
  • Категорија
  • Упоређивање
  • п
  • р
  • у
Нумерички софтвер
Слободни софтвер
  • Advanced Simulation Library
  • ADMB
  • Chapel
  • Euler
  • Fortress
  • FreeFem++
  • FreeMat
  • Genius
  • Gmsh
  • GNU Octave
  • gretl
  • Julia
  • Maxima
  • OpenFOAM
  • R
  • SageMath
  • SALOME
  • ScicosLab
  • Scilab
  • X10
Власнички софтвер
  • Листа нумеричке анализе софтвера
  • Поређење нумеричке анализе софтвера
  • п
  • р
  • у
Статистички софтвер
Јавно власништво
  • Dataplot
  • Epi Info
  • CSPro
  • X-12-ARIMA
Софтвер отвореног кода
  • ADMB
  • DAP
  • gretl
  • JAGS
  • JMulTi
  • Julia
  • GNU Octave
  • H2O
  • OpenBUGS
  • Orange
  • PSPP
  • R
  • Sage
  • SimFiT
  • SOFA Statistics
  • Stan
Бесплатан софтвер
  • BV4.1
  • CumFreq
  • SegReg
  • XploRe
  • WinBUGS
Малопродајни софтвер
Вишеплатформни
  • Data Desk
  • GAUSS
  • GraphPad InStat
  • GraphPad Prism
  • IBM SPSS Statistics
  • IBM SPSS Modeler
  • JMP
  • Maple
  • Mathcad
  • Mathematica
  • MATLAB
  • OxMetrics
  • RATS
  • Revolution Analytics
  • SAS
  • SmartPLS
  • Stata
  • SUDAAN
  • S-PLUS
  • World Programming System (WPS)
Мајкрософт Виндоус
  • BMDP
  • EViews
  • GenStat
  • LIMDEP
  • LISREL
  • MedCalc
  • Minitab
  • MLwiN
  • NCSS
  • SHAZAM
  • SigmaStat
  • STATISTICA
  • StatsDirect
  • StatXact
  • SYSTAT
  • The Unscrambler
  • UNISTAT
Excel add-ons
  • Analyse-it
  • SPC XL
  • SigmaXL
  • UNISTAT for Excel
  • XLfit
  • RExcel
  • Категорија
  • Поређење
Нормативна контрола: Државне Уреди на Википодацима
  • Немачка
  • Чешка