Main Algebra Equations Calculus Matrices Fractals Cellular Automata
Viewer Generator
Running Server MaximaPHP Home Showcase
README SECURITY INSTALL LICENSE CHANGES Documentation
Project page Screenshots Download
English Indonesian Japanese
|
|
 |
|
This MaximaPHP is not connected to any Maxima program!
MaximaPHP Viewer
Provides Maxima online, a system for the manipulation of symbolic and numerical expressions, including differentiation, integration, Taylor series, Laplace transforms, systems of linear equations, polynomials, and sets, list, vector, matrices and tensors.
Dedicated to the memory of William Schelter.
Graphics plotting is made possible by Gnuplot 4.2.0.
Text | MathML | TeX | Maxima | Examples
Examples
You can refer to the last output and input using variables %lo and %li respectively. Additionally variable %lx is used internally by MaximaPHP.
This examples are obtained using example(...) command from Maxima.
| evaluation | Evaluation in Maxima |
| | diff(x*f(x),x);
f(x):=sin(x);
ev(%th(2),diff) |
| | x;
x:3;
x;
'x |
| | f(x):=x^2;
'f(2);
ev(%,f);
'(f(2));
f(2);
sum(i!,i,1,4);
'sum(i!,i,1,4);
remvalue(x);
'integrate(f(x),x,a,b) |
| | for i thru 5 do s:i^2+s;
s;
ev(%,s:0);
ev(%th(2)) |
| | 'sum(g(i),i,0,n);
z*%e^z;
ev(%,z:x^2);
subst(x^2,z,%th(3));
a:%;
1+a;
kill(a,y);
a |
| | integrate(y^2,y) |
| | f(y):=diff(y*log(y),y,2) |
| | f(y):=1/y |
| | (y+x)^3;
diff(%,x) |
| equations | Equations in Maxima |
| | 1+x = y^2;
x-1 = 1+2*y;
%+%th(2);
%th(3)/y;
1/% |
| complex | Complex number in Maxima |
| | (sqrt(2.25)+sqrt(-4))^2;
expand(%) |
| | expand(sqrt(2*%i)) |
| arrays | Arrays in Maxima |
| | a[n]:=n*a[n-1];
a[0]:1;
a[5];
a[n]:=n;
a[6];
a[4] |
| functions | Functions in Maxima |
| | f(x):=y+x^2;
f(2);
ev(f(2),y:7) |
| | f(x):=1+sin(x)^2;
f(1+x);
g(y,z):=3*y+f(z);
ev(g(z+2*y,-0.5),y:7);
functions |
| | h(n):=sum(i*x^i,i,0,n) |
| | t[n](x):=ratexpand(2*x*t[n-1](x)-t[n-2](x));
t[0](x):=1;
t[1](x):=x;
t[4](y) |
| | g[n](x):=sum(ev(x),i,n,2+n);
h(n,x):=sum(ev(x),i,n,2+n);
g[2](i^2);
h(2,i^2) |
| | p[n](x):=ratsimp(diff((x^2-1)^n,x,n)/(2^n*n!));
q(n,x):=ratsimp(diff((x^2-1)^n,x,n)/(2^n*n!));
p[2];
p[2](1+y);
q(2,y);
p[2](5) |
| | f[i,j](x,y):=y^j+x^i;
g(fun,a,b):=print(fun,"
applied to ",a,"
and ",b,"
is ",fun(a,b));
g(f[2,1],sin(%pi),2*c) |
| additive | Declares additivity of a function. |
| | declare(f,additive);
f(3*b+2*a) |
| algsys | Solves the simultaneous polynomials or polynomial equations for some variables. |
| | f1:2*x*(1-l1)-2*(x-1)*l2;
f2:l2-l1;
f3:l1*(-y-x^2+1);
f4:l2*(y-(x-1)^2);
algsys([f1,f2,f3,f4],[x,y,l1,l2]) |
| | f1:x^2-y^2;
f2:-1-y+2*y^2-x+x^2;
algsys([f1,f2],[x,y]) |
| allroots | Computes numerical approximations of the real and complex roots of the polynomial or polynomial equation of one variable. |
| | (1+2*x)^3 = 13.5*(1+x^5);
allroots(%) |
| antisymmetric | Declares antisymmetricity of a function. |
| | declare(h,antisymmetric);
h(x,z,y) |
| append | Returns a single list of the elements of a list followed by the elements of another list, also works on general expressions. |
| | append([x+y,0,-3.2],[2.5E+20,x]) |
| arrayinfo | Returns information about an array. |
| | b[1,x]:1;
array(f,2,3);
arrayinfo(b);
arrayinfo(f) |
| at | Evaluates the expression with the variables assuming the values as specified for them in the list of equations or a single equation. |
| | atvalue(f(x,y),[x = 0,y = 1],a^2);
atvalue('diff(f(x,y),x),x = 0,1+y);
printprops(all,atvalue);
diff(4*f(x,y)^2-u(x,y)^2,x);
at(%,[x = 0,y = 1]) |
| atvalue | Assigns the value of variable to an expression at some point. |
| | atvalue(f(x,y),[x = 0,y = 1],a^2);
atvalue('diff(f(x,y),x),x = 0,1+y);
printprops(all,atvalue);
diff(4*f(x,y)^2-u(x,y)^2,x);
at(%,[x = 0,y = 1]) |
| augcoefmatrix | Returns the augmented coefficient matrix for the variables of the system of linear equations. |
| | [2*x-(a-1)*y = 5*b,c+b*y+a*x = 0];
augcoefmatrix(%,[x,y]) |
| bezout | Returns a matrix whose determinant is the resultant of two polynomials eliminating a variable. |
| | bezout(1+x^2+a*y,b+x*y+y^2,x);
expand(determinant(%));
%-expand(resultant(1+x^2+a*y,b+x*y+y^2,x)) |
| catch | Evaluates expressions one by one; if any leads to the evaluation of an expression of some form, then the value of the catch is the value of that form, and no further expressions are evaluated. |
| | g(l):=catch(map(lambda([x],if x <
0 then throw(x) else f(x)),l));
g([1,2,3,7]);
g([1,2,-3,7]) |
| cf | Converts expression into a continued fraction. |
| | cf([1,-2,1]+[1,2,-3]);
cfdisrep(%) |
| | cflength:4;
cf(sqrt(3));
cfexpand(%);
ev(%[1,2]/%[2,2],numer) |
| cfdisrep | Constructs and returns an ordinary arithmetic expression from the list representation of a continued fraction. |
| | cf([1,-2,1]+[1,2,-3]);
cfdisrep(%) |
| cfexpand | Returns a matrix of the numerators and denominators of the last and next-to-last convergents of the continued fraction. |
| | cflength:4;
cf(sqrt(3));
cfexpand(%);
ev(%[1,2]/%[2,2],numer) |
| charpoly | Returns the characteristic polynomial for a matrix with respect to a variable. |
| | a:matrix([3,1],[2,4]);
expand(charpoly(a,lambda));
(programmode:true,solve(%));
matrix([x1],[x2]);
ev(a . %-lambda*%,%th(2)[1]);
%[1,1] = 0;
x2^2+x1^2 = 1;
solve([%th(2),%],[x1,x2]) |
| coeff | Returns the coefficient of x^n in expression. |
| | coeff(b+tan(x)+2*a*tan(x) = 3+5*tan(x),tan(x)) |
| | coeff(1+x*%e^x+y,x,0) |
| combine | Simplifies the sum expression by combining terms with the same denominator into a single term. |
| | combine(b/y+a/y+b/x+a/x) |
| commutative | Declares commutativity of a function. |
| | declare(h,commutative);
h(x,z,y) |
| content | Returns a list whose first element is the greatest common divisor of the coefficients of the terms of a polynomial in a variable (this is the content) and whose second element is another polynomial divided by the content. |
| | content(4*x^2*y^2+2*x*y,y) |
| defmatch | Creates a function which tests an expression to see if it matches a pattern. |
| | nonzeroandfreeof(x,e):=is(e # 0 and freeof(x,e));
matchdeclare(a,nonzeroandfreeof(x),b,freeof(x));
defmatch(linear,b+a*x,x);
linear(y^2+(1+y)*z+3*z,z);
matchdeclare([a,f],true);
constinterval(l,h):=constantp(h-l);
matchdeclare(b,constinterval(a));
matchdeclare(x,atom);
block(remove(integrate,outative), defmatch(checklimits,'integrate(f,x,a,b)), declare(integrate,outative));
'integrate(sin(t),t,%pi+x,2*%pi+x);
checklimits(%);
'integrate(sin(t),t,0,x);
checklimits(%);
remvalue(a,b,f,x) |
| deftaylor | For each function of one variable, deftaylor defines an expression as the Taylor series about zero. |
| | deftaylor(f(x),sum(x^i/(2^i*i!^2),i,4,inf)+x^2);
taylor(%e^sqrt(f(x)),x,0,4) |
| delete | Removes all occurrences of an expression from another expression |
| | delete(sin(x),y+sin(x)+x) |
| depends | Declares functional dependencies among variables for the purpose of computing derivatives. |
| | depends(a,x);
diff(a . a,x) |
| | depends(f,[x,y],[x,y],t);
diff(f,t) |
| derivdegree | Returns the highest degree of the derivative of a dependent variable with respect to an independent variable occuring in expression. |
| | 'diff(y,x)*x^2+'diff(y,z,3)*2+'diff(y,x,2);
derivdegree(%,y,x) |
| desolve | Solves systems of linear ordinary differential equations using Laplace transform. |
| | eqn1:'diff(f(x),x) = sin(x)+'diff(g(x),x);
eqn2:'diff(g(x),x,2) = 'diff(f(x),x)-cos(x);
atvalue('diff(g(x),x),x = 0,a);
atvalue(f(x),x = 0,1);
desolve([eqn1,eqn2],[f(x),g(x)]);
ev([eqn1,eqn2],%,diff) |
| diff | Returns the derivative or differential of expression with respect to some or all variables. |
| | diff(2*x^2+x^3+sin(x),x) |
| | diff(sin(x)*cos(x),x) |
| | diff(sin(x)*cos(x),x,2) |
| | derivabbrev:true;
diff(exp(f(x)),x,2) |
| | derivabbrev:true;
'integrate(f(x,y),y,g(x),h(x));
diff(%,x) |
| display | Displays equations whose left side is unevaluated, and whose right side is the value of the expression centered on the line. |
| | display(b[1,2]) |
| divide | Computes the quotient and remainder of a polynomial divided by another polynomial, in a main polynomial variable. |
| | divide(y+x,x-y,x) |
| | divide(y+x,x-y) |
| dotscrules | Gives simplification rule for expression A.SC or SC.A and A.(SC*B). |
| | declare(l,scalar,[m1,m2,m3],nonscalar);
expand((1-l*m1) . (1-l*m2) . (1-l*m3));
ev(%,dotscrules);
rat(%,l) |
| dpart | Selects parts of the displayed form of expression and returns the whole expression with the selected subexpression displayed inside a box. |
| | dpart(y/z^2+x,1,2,1) |
| | expand((a+b)^4);
(a+b)^2*(x+y)^2;
expand(%);
%th(3)/%;
factor(%);
dpart(%th(2),2,4);
part(%th(3),2,4) |
| echelon | Returns the echelon form of a matrix as produced by Gaussian elimination. |
| | matrix([2,1-a,-5*b],[a,b,c]);
echelon(%) |
| | M: matrix ([3, 7, aa, bb], [-1, 8, 5, 2], [9, 2, 11, 4]);
echelon (M) |
| eliminate | Eliminates variables from equations (or expressions assumed equal to zero) by taking successive resultants. |
| | exp1:z+y*x+2*x^2;
exp2:-1-z+5*y+3*x;
exp3:5-y^2+x+z^2;
eliminate([exp3,exp2,exp1],[y,z]) |
| ev | Evaluates an expression in the environment specified by the arguments. |
| | 'diff(sin(w),w)+(1+w)^2+cos(y)+sin(x);
ev(%,sin,expand,diff,x = 2,y = 1) |
| | ev(y+x,x:y+a,y:2) |
| | 'diff(x^2+x*y+y^2,x,2,y,1);
ev(%,diff) |
| | 2*x-3*y = 3;
2*y-3*x = -4;
solve([%th(2),%]);
ev(%th(3),%) |
| | 1/x+x >
gamma(1/2);
ev(%,numer,x = 1/2);
ev(%,pred) |
| evenfun | Declares a function as even function. |
| | declare(g,evenfun);
g(-x) |
| expand | Expand an expression. |
| | (1/(y+x)^4-3/(z+y)^3)^2;
expand(%,2,0) |
| | expand(a . (f+c . (e+d)+b)) |
| | expand((1+x)^3) |
| | (1+x)^7;
expand(%);
expand(%th(2),7,7) |
| | ev(a*(c+b)^2+a*(c+b),expop:1) |
| exponentialize | Converts circular and hyperbolic functions in an expression to exponentials. |
| | ev(%e^x*sin(x)^2,exponentialize) |
| | ev(%e^x*sin(x)^2,exponentialize);
integrate(%,x);
ev(%,demoivre);
ans:ev(%,ratexpand);
ev(%,x:1,numer)-ev(%,x:0,numer);
integrate(%e^x*sin(x)^2,x);
trigreduce(%);
%-ans;
ev(sin(x),%emode) |
| factcomb | Tries to combine the coefficients of factorials in an expression with the factorials themselves by converting, for example, (n + 1)*n! into (n + 1)!. |
| | (1+n)^2*n!^2;
factcomb(%) |
| factor | Factors an expression containing any number of variables or functions into factors irreducible over the integers. |
| | factor(2^63-1) |
| | factor(-8*y-4*x+z^2*(2*y+x)) |
| | -1-2*x-x^2+y^2+2*x*y^2+x^2*y^2;
block([dontfactor:[x]],factor(%/36/(1+2*y+y^2))) |
| | factor(1+%e^(3*x)) |
| | factor(1+x^4,a^2-2) |
| | factor(-y^2*z^2-x*z^2+x^2*y^2+x^3) |
| | (2+x)/(3+x)/(b+x)/(c+x)^2;
ratsimp(%);
partfrac(%,x);
map('factor,%) |
| | ratsimp((x^5-1)/(x-1));
subst(a,x,%);
factor(%th(2),%) |
| | factor(1+x^12) |
| | factor(1+x^99) |
| factorsum | Tries to group terms in factors of an expression which are sums into groups of terms such that their sum is factorable. |
| | ev((1+x)*(a*(z+w)^2+(v+u)^2),expand);
factorsum(%) |
| freeof | Returns true if no subexpression of an expression is equal to some expression or if it occurs only as a dummy variable, and returns false otherwise. |
| | freeof(y,sin(2*y+x)) |
| | freeof(cos(y),"*",cos(x)+sin(y)) |
| featurep | Attempts to determine whether an object has some feature on the basis of the facts in the current database. |
| | declare(j,even);
featurep(j,integer) |
| fullmap | Similar to map, but fullmap keeps mapping down all subexpressions until the main operators are no longer the same. |
| | fullmap(g,b*c+a);
map(g,b*c+a) |
| fullmapl | Similar to fullmap, but fullmapl only maps onto lists and matrices. |
| | fullmapl("+",[3,[4,5]],[[a,1],[0,-1.5]]) |
| funcsolve | Returns a function g(t) or nothing, depending on whether or not there exists a rational function g(t)satisfying the equation, which must be a first order, linear polynomial in (for this case) g(t) and g(t+1). |
| | funcsolve((1+n)*f(n)-(3+n)*f(1+n)/(1+n) = (n-1)/(2+n),f(n)) |
| genmatrix | Returns a matrix generated from an array a, taking element a[i_1,j_1] as the upper-left element and a[i_2,j_2] as the lower-right element of the matrix. |
| | h[i,j]:=1/(-1+j+i);
genmatrix(h,3,3) |
| get | Retrieves the user property associated with an atom or returns false if it doesn't have the property. |
| | put(%e,transcendental,type);
put(%i,transcendental,type);
put(%i,algebraic,type);
typeof(x):=block([q],if numberp(x) then return(algebraic), if not atom(x) then return(maplist(typeof,x)),q:get(x,type), if q = false then error("not numeric") else q);
errcatch(typeof(x*%pi+2*%e));
typeof(%pi+2*%e) |
| gfactor | Factors a polynomial over the Gaussian integers (that is, the integers with the imaginary unit %i adjoined). |
| | gfactor(x^4-1) |
| gradef | Defines the partial derivatives (i.e., the components of the gradient) of a function or a variable. |
| | depends(y,x);
kill(f,g,j);
gradef(f(x,y),x^2,g(x,y));
diff(f(x,y),x) |
| | gradef(j(n,z),'diff(j(n,z),n),j(n-1,z)-n*j(n,z)/z);
ratsimp(diff(j(2,x),x,2)) |
| horner | Returns a rearranged representation of an expression as in Horner's rule, using a variable as the main variable if it is specified. |
| | poly:5.2E+20-5.5*x+9.9999999999999995E-21*x^2;
errcatch(ev(%,x = 1.0E+20));
ev(horner(poly,x),keepfloat);
ev(%,x = 1.0E+20) |
| inpart | Is similar to part but works on the internal representation of the expression rather than the displayed form and thus may be faster since no formatting is done. |
| | w*z+y+x;
inpart(%,3,2);
'limit(f(x)^g(1+x),x,0,minus);
inpart(%,1,2) |
| integrate | Attempts to symbolically compute the integral of an expression with respect to a variable. |
| | test(f):=block([u],u:integrate(f,x),ratsimp(f-diff(u,x)));
test(sin(x));
test(1/(x+1));
test(1/(x^2+1)) |
| | integrate(sin(x)^3,x) |
| | integrate(%e^x/(2+%e^x),x) |
| | integrate(1/(x*log(x)),x) |
| | integrate(sin(3+2*x),x) |
| | integrate(%e^x*erf(x),x) |
| | integrate(x/(1+x^3),x);
diff(%,x);
ratsimp(%) |
| | integrate(x^(5/4)/(1+x)^(5/2),x,0,inf) |
| | gradef(q(x),sin(x^2));
diff(log(q(r(x))),x);
integrate(%,x) |
| is | Attempts to determine whether the predicate expression is provable from the facts in the assume database. |
| | is(x^2 >= 2*x-1) |
| | assume(a >
1);
is(log(1+log(1+a)) >
0 and 1+a^2 >
2*a) |
| isolate | Returns expression with subexpressions which are sums and which do not contain a variable replaced by intermediate expression labels (these being atomic symbols like %t1, %t2, ...). |
| | (b+a)^4*(x*((d+c)^2+2*x)+1);
isolate(%,x);
ratexpand(%);
ev(%) |
| | (b+a)*(b+a+x)^2*%e^(b+a*x+x^2);
ev(isolate(%,x),exptisolate:true) |
| laplace | Attempts to compute the Laplace transform of an expression with respect to a variable and a transform parameter. |
| | laplace(%e^(a+2*t)*sin(t)*t,t,s) |
| lassociative | Declares left-associativity of an operator. |
| | declare(g,lassociative);
g(g(a,b),g(c,d));
g(g(a,b),g(c,d))-g(a,g(b,g(c,d))) |
|