Manipulación Simbólica Elemental
Manipulación de expresiones polinómicas
La verdadera virtud de Maple (como Sistema de Computación Algebraica) se encuentra en el área del cálculo simbólico, donde es capaz de trabajar con expresiones matemáticas:
> | (1+x)^2; |
Maple V manipula de manera intuitiva con las expresiones polinómicas:
> | (1+x)+(3-2*x); |
Disponemos de un significativo número de funciones para la manipulación de expresiones simbólicas. A continuación podemos ver algunos ejemplos:
> | expand((1+x)^2); |
> | factor(%); |
> | diff(sin(x),x); |
> | sum(n^2,n); |
> | int(x^3+x+1,x); |
> | series(sin(x),x=0); |
Manipulación algebraica de expresiones
Solución de ecuaciones
Es conveniente usar el comando restart al comienzo de una sesión, o cuando vayamos a involucrarnos dentro de una misma sesión en cálculos que no están relacionados con las variables o expresiones definidas con anterioridad.
> | ?restart; |
Con el comando restart eliminamos de la memoria del kernel cualquier definición o asignación que hayamos realizado.
> | restart; |
Para resolver ecuaciones algebraicas usaremos el comando solve :
> | solve(a*x^2+b*x+c,x); |
Observación: Maple V supone que la ecuación contenida dentro del comando solve está igualada a 0, si no se indica lo contrario. Si Maple V devuelve la ecuación sin resolver, esto no significa que la ecuación no tenga solución, sino que Maple V no ha sido capaz de determinarla con el comando que le hemos indicado.
Con el mismo comando, Maple V puede resolver sistemas de ecuaciones y sistemas de inecuaciones:
> | solve({x+2*y=3,y+1/x=1},{x,y}); |
> | solve({x^2*y^2=0,x-y=1,x<>0},{x,y}); |
En ocasiones, el comando solve devuelve la expresión Root_Of . Con esta expresión representamos de manera simbólica el conjunto de raíces de ciertas ecuaciones de una variable. Si queremos obtener todos los valores (mediante una aproximación numérica) podemos hacer uso del comando allvalues :
> | solve(x^5-2*x+2,x); |
> | ### WARNING: allvalues now returns a list of symbolic values instead of a sequence of lists of numeric values allvalues(%); |