Maple
Hoppa till navigering
Hoppa till sök
Maple är ett datoralgebrasystem, det vill säga ett datorprogram för symbolisk lösning av matematiska problem och tekniska beräkningar, från företaget Maplesoft. Maple utvecklades 1981 vid Symbolic Computation Group - University of Waterloo i Ontario, Kanada. Maple täcker aspekter av teknisk databehandling, inklusive visualisering, dataanalys, matrisberäkning och anslutning. En verktygslåda, MapleSim, lägger till funktionalitet för multidomain fysisk modellering och kodgenerering.
Användningsområden
- Matematiska beräkningar: symbolisk och numerisk lösning av matematiska problem t. ex. ekvationer, integraler och "pretty-printing" av matematiska formler
- Finansiell modellering, analys och applikationsutveckling
- Grafisk framställning
- Matrisoperationer och matrisalgebra
- Statistik och dataanalys: Regressionsanalys, Hypotesprövning, ANOVA, Principalkomponentanalys
- Test och uppmätning: Hårdvarukoppling och dataanalys för test och mätapplikationer
- Teknisk beräkning: analys, signalprocesser, visualisering och algoritmutveckling
Anslutningar
Exempel
Procedur
myfac := proc(n::nonnegint)
local out, i;
out := 1;
for i from 2 to n do
out := out * i
end do;
out
end proc;
Funktion
myfac := n -> product( i, i=1..n );
Integration
- .
int(cos(x/a), x);
Resultat:
Determinant
M:= Matrix([[1,2,3], [a,b,c], [x,y,z]]);
LinearAlgebra:-Determinant(M);
Resultat:
Serie expansion
series(tanh(x),x=0,15)
Resultat:
Lös ekvation numeriskt
f := x^53-88*x^5-3*x-5 = 0 fsolve(f)
Resultat:
-1.097486315, -.5226535640, 1.099074017
Visualisering av en enkel variabel funktion
plot(x*sin(x),x=-10..10);
Visualisering av en funktion av två variabler
plot3d(2-x-(y^2-x^2)^0.5), x=0..1, y=0..1);

Animation
plots:-animate(subs(k = .5, f), x=-30..30, t=-10..10, numpoints=200, frames=50, color=red, thickness=3);

plots:-animate3d(cos(t*x)*sin(3*t*y), x=-Pi..Pi, y=-Pi..Pi, t=1..2);

M := Matrix([[400,400,200], [100,100,-400], [1,1,1]], datatype=float[8]): plot3d(1, x=0..2*Pi, y=0..Pi, axes=none, coords=spherical, viewpoint=[path=M]);

Laplace transform
f := (1+A*t+B*t^2)*exp(c*t);
inttrans:-laplace(f, t, s);
Resultat:
inttrans:-invlaplace(1/(s-a),s,x)
Resultat:
Fourier transform
inttrans:-fourier(sin(x),x,w)
Resultat: