Download - Comandos de Maple
MAPLE 18
Maple es una potente herramienta, tecnológicamente avanzada, que incorpora algoritmos simbólicos propios
reconocidos en todo el mundo. Asi mismo Maple incorpora desde su versión 6 los prestigiosos resolvedores
numéricos proporcionados por su socio Numerical Algorithms Group (NAG).
Cualquiera que sea el área científica o técnica en la que se esté trabajando, ya sea en el ámbito de la
enseñanza, en el de investigación o en desarrollo, Maple es un entorno ideal que cubre todos los aspectos
necesarios.
Maple incorpora herramientas suficientemente flexibles para ajustarse a todas las necesidades de cálculo:
desde la resolución de sistemas de ecuaciones diferenciales hasta el modelado de complejos problemas de
ingeniería. Maple es la herramienta que se ajusta mejor a cualquier requerimiento para cálculo técnico.
Maple incorpora más de 3000 funciones para cálculo simbólico y numérico entre las que se incluyen funciones
para:
Algebra: aritmética simbólica con números reales y complejos o polinomios, factorización, expansión,
combinación y simplificación de expresiones algebraicas y polinomios, secuencias y series.
Cálculo: Derivadas, integrales y límites, rutinas de visualización para diferenciación e integración.
Ecuaciones diferenciales: Resolución numérica y exacta de ecuaciones y sistemas de ecuaciones
diferenciales ordinarias (ODE) y problemas de valor inicial, resolución numérica de problemas de valores de
contorno, resolución exacta de ecuaciones y sistemas de ecuaciones en derivadas parciales (PDE), análisis
estructural y reducción de orden de ODEs y PDEs.
Álgebra Lineal: Más de 100 funciones para construir, resolver y programar en álgebra lineal, construcción de
matrices de Hankel, Hilbert, identidad, Toeplitz, Vandermonde, Bezout y la matriz Silvester de dos polinomios.
Cálculo Vectorial: Derivadas direccionales, gradientes, matriz Hessiana, Laplacianas, rotacionales y
divergencias de un campo vectorial, matrices Jacobianas y Wronskian, productos escalares, vectoriales y
externos de vectores y operadores diferenciales.
Otras funciones: funciones para álgebras abstractas, álgebra de operadores lineales, curvas algebraicas,
funciones y estructuras combinatorias, variables complejas, ajuste de curvas, álgebra diferencial, matemática
financiera, series de potencia, teoría de grafos, programación lineal, lógica, estadística, etc, etc...
Programación: Maple da acceso al mismo lenguaje de programación, herramientas y rutinas básicas con las
que ha sido desarrollado. Tiene un lenguaje de programación avanzado que incluye programación funcional y
procedural, sobrecarga de operadores, manipulación de excepciones, herramientas de depuración, etc.
Visualización: Incluye un amplio conjunto de herramientas de visualización con gráficos típicos predefinidos,
gráficos 2D y 3D, animaciones 2D y 3D, una amplia variedad de tipos de coordenadas, gráficos implícitos 2D y
3D, gráficos vectoriales, contornos, gráficos complejos, gráficos de ODEs y PDEs, rotación en tiempo real,
objetos geométricos predefinidas, iluminación.
Interfaz de usuario: Maple utiliza hojas de cálculo, tiene amplias capacidades de edición y procesado de
textos, gestor de hiperenlaces, menús contextuales, paletas, exportación a HTML, LaTeX y RTF
Conectividad: Maple está adherido a los estándares internacionales para comunicación de datos soportando
un amplio número de formatos.
Asignación a variables: (:= , unassing, restore, assume)
Aproximaciones decimales: (evalf)
Álgebra: (expand, combine, simplify, factor, normal, coeff, quo, rem)
Expresiones versus procedimientos: (->, proc(), subs(), unapply())
Gráfico de funciones y curvas en el plano: (plot)
Más sobre gráficos: (with(plots), animate, display)
Solución de ecuaciones, sistemas de ecuaciones: (fsolve,solve)
Estructuras de datos, (expresión) sucesión, lista, conjunto, tabla: ([s], {s}, nops(s) , op(s) , seq(s) , s[n] ,map(f,s))
Control de flujo: (for loops, while loops, if)
Límites, límites por la izquierda y por la derecha: (limit())
Derivadas: (D(), diff())
Sumas de Riemann: (with(student), rightsum, leftsum, middlesum, trapezoid, leftbox, rightbox,middlebox)
Integrales: (int(), Int(), evalf(Int ()), changevar, intparts)
FUNCIONES:
Funciones Reales
Antes de comenzar a definir funciones, tenemos que en Maple las órdenes
terminan con un punto y coma. A veces será interesante terminarlas con dos
puntos (:), lo que tiene como efecto que el resultado de la operación no se
visualiza.
Básicamente podemos manejar funciones reales de dos formas. Una de ellas,
será definir una expresión dependiente de la variable correspondiente,
mediante una expresión o fórmula, con una orden tal como:
> g(x):=x/(x^2+1);
g( ) x :=
x
x + 2 1
La otra forma sería definir realmente una función, como una regla que asigna
a una variable una expresión que dependa de dicha variable, con la sintaxis:
nombre de la función := variable - > expresión
Para definir la función 2 f( )x x = −2x+1, escribimos:
> f:=x->x^2-2*x+1;
f := x → x − + 2 2 x 1
Hay que notar que se ha definido una expresión g(x), pero no una función g . En cambio hemos definido una función f y f(x) es entonces una expresión, la
imagen de x . arse otras expresiones y funciones definidas previamente o funciones de la
librería de Maple. Por ejemplo, ejecutando la orden:
> h(x):=x/g(x)-2*x+f(x);
h( ) x := 2 x + − 2 2 4 x
Se ha definido una nueva expresión y con la orden:
> hfun:=x->2*x^2+2-4*x;
hfun := x → 2 x + − 2 2 4 x
se ha definido una función.
El comando unapply
Existe en Maple un comando que permite definir una función a partir de una
expresión. Se trata del comando unapply, cuya sintaxis es muy simple: basta
especificar, tras la expresión, cual de las letras que aparecen en ella
queremos tomar como variable. Por ejemplo:
> gafun:=unapply(a*x/(1+x^2),x);
gafun := x →
a x
x + 2 1
Comportamiento de las expresiones y las funciones
Observemos el comportamiento diferente al sustituir valores numéricos o
simbólicos en las expresiones y las funciones.
En primer lugar, una función en un punto toma un valor:
> f(2/5);
9
25
> hfun(z);
2 z + − 2 2 4 z
> hfun(2/5);
18
25
En cambio, en una expresión no se puede sustituir directamente:
> g(2);
g 2( )
> h(2/5);
⎛⎝⎜⎜ ⎞⎠⎟⎟ h 2
5
Hay que utilizar la orden subs:
> subs(x=2/5,h(x));
18
25
> subs(x=2,g(x));
2
5
Con valores simbólicos:
> f(u^2);
u − + 4 2 u2 1> subs(x=u^2,g(x));
u2
u + 4 1
Función Real de dos o más variables
Para definir funciones reales de dos o más variables, se escribe:
> f:=(x,y)->x^2+y^2-1;
f := ( ) x y, → x + − 2 y2 1
> f(2,-1);
4
> f:=(x,y,z)->x*y+y*z-2*x*z;
f := ( ) x, , y z → x y + y z − 2 x z
> f(1,-1,3);
-10
También podemos definir una expresión de más de dos variables, usando la
orden anterior:
> g:=x^2+z^2+y^2;
g := x + + 2 z2 y2
> subs(x=2,y=1,z=1,g);
6
> h:=unapply(g,(x,y,z));
h := ( ) xyz , , → x + + 2 z
2 y2
> h(2,1,1); 6
Funciones Vectoriales
Existen varias maneras de definir funciones vectoriales con Maple, la forma
más simple para definir una , la podemos escribir con la siguiente
sintaxis:
: n f \ →\m
n
1 2 1 1 2 2 1 2 1 2 : ( , ,...., ) [ ( , ,...., ), ( , ,...., ),...., ( , ,...., )]; n n n m f = − x x x > f x x x f x x x f x x x
Esto es, se crea una lista ordenada de funciones contenidas entre corchetes
([ ]), lo cual es una manera de definir un vector.
La función 2 3 f :\ \ →
2 2
( , )
x y
f x y x y
x y
⎡ ⎤ + ⎢ ⎥= + ⎢ ⎥⎢ ⎥ − ⎣ ⎦
la escribimos con Maple, como:
> f:=(x,y)->[x^2+y^2,x+y,x-y]:
'f(x,y)'=f(x,y);
'f(1,-3)'=f(1,-3);
f , ( ) x y = [ ] x + , , 2 y2 x y + x − y
f , ( ) 1 -3 = [10, , -2 4]
Otra forma:
> h:=vector(3);
h[1]:=(x,y)->x^2+y^2;
h[2]:=(x,y)->x+y;
h[3]:=(x,y)->x-y;
'h(x,y)'=h(x,y);
'h(1,-3)'=h(1,-3);
h := array( ) 1 3 .. ,[ ] h := 1 ( ) x y, → x + 2 y2
h := 2 ( ) x, y → x + y
h := 3 ( ) x, y → x − y
h , ( ) x y = [ ] x + , , 2 y2 x y + x − y
h , ( ) 1 -3 = [10, , -2 4]
Esta forma es conveniente algunas veces ya que se pueden realizar
operaciones con las funciones componentes por separado.
Raíz cuadrada del número 2 hasta 20 cifras decimales:
> sqrt(2) = evalf (sqrt(2), 21);
Simplificación de fracciones:
> simplify (35/42 - 5/30);
Solución de ecuaciones cuadráticas:
> solve (3*x^2 + b*x = 7, x);
Solución de ecuaciones diferenciales simbólicas:
> f:= x -> tan(x)*sqrt(x):
> D(f)(x);
Funciones integrales, solución simbólica, y solución numérica:
> Int (sin(x)^2, x);
> value (%);
> int (sin(x)^2, x = 0..Pi/2);
Evaluación de ecuaciones diferenciales lineales
en forma simbólica y numérica:
> DGL:= diff (y(x),x, x) - 3*y(x) = x:
> DGL;
> dsolve ({DGL, y(0)=1, D(y)(0)=2}, y(x));