






























Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Una introducción a maxima y wxmaxima, herramientas de computo simbólico para resolver problemas matemáticos. Aprenderemos cómo utilizar wxmaxima como interfaz gráfica para maxima, cómo introducir y solucionar problemas, y cómo interpretar los resultados. Se incluyen ejemplos prácticos.
Tipo: Apuntes
1 / 38
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!































M. Ángeles Gómez Fle hoso Dpto. de Matemáti a Apli ada (Biomatemáti a) UCM
Esta obra se distribuye ba jo li en ia Creative Commons Re ono imiento-NoComer ial-SinObraDerivada 3.
La forma de intro du ir omandos en (wx)Maxima es simple: basta te lear el omando que se desea, p oner al nal ; y te lear SHIFT+ENTER. Por ejemplo:
da lugar a
Los ara teres %i1 indi an el omando de entrada (input ) número 1, y los ara teres %o indi an la salida (output ) número 1. De este mo do, si queremos utilizar la salida número 1 en un omando p osterior basta on es ribir %o1, p or ejemplo:
da lugar a
También se pueden intro du ir varios omandos a la vez, separados p or ;. Se evaluarán to dos ellos uando se te lee SHIFT+ENTER. Por ejemplo
pro du e la siguiente salida:
Como se puede ver en el anterior ejemplo, se pueden utilizar determinados números irra- ionales predenidos, omo π o el número de Euler e, simplemente es ribiendo %pi o %e. También se puede ver en el ejemplo anterior que el ara ter % del omando oat( %); se reere a la salida del omando que le pre ede. Otro omando interesante para referirse a salidas anteriores es %th(i);, que se reere a la salida i-ésima salida anterior. Así, %th(1); representa la última salida (es equivalente a %;), %th(2); se reere a la p enúltima salida, %th(3); a la antep enúltima, et.
Gran parte de los omandos se pueden utilizar mediante las p estañas de la parte sup erior de wxMaxima:
Además de eso, p o demos agregar paneles de omandos que pueden fa ilitarnos intro du ir determinadas instru iones. La forma de ha er esto es a tivando las op iones que nos interesen
(Matemáti as generales, Estadísti a, Historia y/o Insertar elda) que apare en en Maxima -> Paneles.
Sin embargo, puede resultar útil ono erlos p or si es ne esario te learlos en la línea de omandos. A ontinua ión vamos a enumerar algunos de los más útiles.
3.1. Soli itud de ayuda o informa ión sobre los omandos.
En algunas o asiones ne esitamos onsultar informa ión sobre algún omando o, in luso, sab er ómo se es rib e un omando on reto. La forma de ha er esto es, o bien utilizando la p es- taña Ayuda de la parte sup erior de (wx)Maxima, o bien, utilizando la instru ión ?? omando;. Un par de ejemplos de esta última op ión se pueden ver a ontinua ión:
En este ejemplo se puede ver que al te lear ??oat; se obtiene el listado de omandos que están rela ionados on ese omando. Al nal sale una línea de omando que pregunta si se desea informa ión sobre alguno de los omandos listados, sobre to dos ellos o sobre ninguno. En este aso, se ha soli itado informa ión on reta del omando oat, para lo ual se ha te leado 3;, esto prop or iona informa ión sobre los argumentos de di ho omando.
Si deseamos ahora evaluar di ha fun ión en un punto, p or ejemplo en x = 3 basta on es ribir:
Igualmente, p o demos asignar valores a las onstantes, sin ne esidad de denirlas, a la hora de evaluar la fun ión en un punto:
Con el omando anterior hemos obtenido el valor de f (3) en el supuesto de que k = 2, p ero no se guarda en memoria di ho valor de la onstante k.
3.4. Deni ión de ve tores
arlo p osteriormente en ál ulo on matri es, es ne esarios argar primero el paquete eigen de (wx)Maxima utilizando el omando load(eigen);. La deni ión del ve tor olumna se ha e p osteriormente usando el omando olumnve tor o ove t. Si se quiere denir un ve tor la basta on es ribir nombre del ve tor: [v1, v2, ...℄. Ejemplo:
partir de un ve tor dado utilizando el omando unitve tor o uve t. Ejemplo:
3.5. Deni ión de matri es
Las matri es se denen usando el omando matrix, los elementos de la la se p onen entre or hetes separados p or omas. Se pueden denir tanto matri es de números omo matri es que ontengan expresiones no numéri as. Ejemplo:
(wx)Maxima es una herramienta muy p otente que p ermite ha er un gran número de op era- iones y desarrollos de álgebra lineal. Para obtener informa ión sobre las distintas utilidades se puede te lear el omando ??algebra;, utilizar la p estaña Ayuda del menú o pulsar la te la F1.
A ontinua ión vamos a ver algunos de los omandos de (wx)Maxima más útiles en Álgebra Lineal. Mu hos de los omandos que vamos a estudiar se pueden a tivar utilizando la p estaña "Álgebra" de la barra de herramientas sup erior.
4.1. Op era iones on matri es
se intentan multipli ar dos matri es uyo pro du to no es p osible, p orque el número de olumnas de la primera no oin ide on el número de las de la segunda, se obtiene un mensa je de error:
el siguiente ejemplo p o demos ver el ál ulo de la inversa de una matriz y se omprueba también que el pro du to de di ha matriz p or su inversa es la matriz identidad:
Cuando se intenta al ular la inversa de una matriz que no es invertible, bien p orque no sea una matriz uadrada o bien p orque su determinante sea nulo, se obtiene un mensa je de error:
4.3. Polinomio Cara terísti o, Autovalores, Matriz Diagonal, Autove -
tores y Matriz de Paso.
Vamos a ver a ontinua ión una serie de instru iones que son útiles en el pro eso de diag- onaliza ión de una matriz.
ula omo el determinante |A − λI|. El omando de (wx)Maxima que p ermite al ular di ho p olinomio ara terísti o es harp oly(a,x);, donde a es la matriz de la que se quiere al ular el p olinomio ara terísti o y x el nombre de la variable del p olinomio. Ejemplo:
Para op erar di ha expresión p o demos utilizar el omando ratsimp:
Para fa torizarlo p o demos utilizar los omandos fa tor (para una fa toriza ión en fa tores reales) o gfa tor (para una fa toriza ión en fa tores omplejos). Ejemplo:
Para onstruir la matriz identidad de dimensión n, basta on p oner ident(n);
(wx)Maxima es utilizando el omando eigenve tors(matriz) o eive ts(matriz). También se p o dría ha er resolviendo los distintos sistemas de e ua iones lineales que se onstruyen ha iendo (A − λiI)~vi = ~ 0 , p ero este es un pro edimiento más largo y además requiere de ono imientos sobre resolu ión de sistemas de e ua iones lineales on (wx)Maxima que se expli arán en la próxima se ión.
Vemos a ontinua ión un ejemplo del uso del omando eigenve tors para el ál ulo de autove tores:
El omando eigenve tors pro du e una salida de la forma: [[[l 1 , l 2 , ...], [g 1 , g 2 , ...]], [[~v 11 , ~v 12 , ...], [~v 21 , ~v 22 , ...], ...]], donde el primer elemento de la salida es [[l 1 , l 2 , ...], [g 1 , g 2 , ...]], siendo li son los autovalores y gi su orresp ondiente multipli idad, y el segundo elemento de la salida es [[~v 11 , ~v 12 , ...], [~v 21 , ~v 22 , ...], ...], donde [~vi 1 , ~vi 2 , ...] son los autove - tores linealmente indep endientes aso iados al autovalor li. Como en este ejemplo to dos los autovalores son sen illos y, p or lo tanto, sólo hay un autove tor linealmente indep endiente para ada autovalor, el segundo elemeno de la salida anterior es [[~v 1 ], [~v 2 ], [~v 3 ]]. Si en el ejemplo anterior queremos guardar ada autove tor en una variable, que sea un ve tor olumna, utilizaremos la siguiente instru ión:
Aquí se puede ver que hemos utilizado el omando %th(i) para referirnos a la i-ésima salida anterior. En el uso de esta instru ión hay que tener en uenta que ada vez que se p one ; al nal de un omando se genera una salida nueva, p or lo tanto, para referirnos a la salida %o en la deni ión de v1 tenemos que usar %th(1), p or ser justo la anterior, p ero en la deni ión de v2 la salida %o60 es la p enúltima, p or lo tanto usamos %th(2), dado que la última salida es la que genera al denir v1.
Además de eso, puesto que sólo hay un autove tor para ada autovalor, el autove tor or- resp ondiente al autovalor li será el ob jeto 1 de la omp onente i del segundo elemento (los au- tove tores son el segundo elemento de la salida del omando eigenve tors) de la salida %o60, p or lo que es ribimos vi: olumnve tor(( %th(i)[2℄[i℄)[1℄);
A ontinua ión mostramos un ejemplo de una matriz on autovalores múltiples y ómo extraer de la salida del omando eigenve tors tanto los autove tores omo los autovalores aso iados y guardarlos en las variables orresp ondientes.
Po demos ver en este ejemplo que la matriz n tiene un autovalor l 1 = − 2 simple, on un
autove tor ~u 1 =
1 − 1 1
, y otro l 2 = 1 doble, p ero que tiene aso iados dos autove tores
linealmente indep endientes, u 21 =
1 0 1
(^) y u 22 =
0 1 − 1
. Por lo tanto, para guardarlos en
memoria usaremos los siguientes omandos:
En esta se ión vamos a expli ar algunos de los omandos más utilizados en análisis matemáti- o, omo pueden ser los ne esarios para resolver e ua iones, al ular derivadas e integrales, et. Se puede en ontrar informa ión sobre las op era iones más habituales en la p estaña de Ayu- da de la barra sup erior del menú y se puede a eder a algunos de los omandos en las p estañas E ua iones, Análisis y Simpli ar de di ho menú.
5.1. Resolu ión de e ua iones
Existen varios omandos que pueden ayudarnos a en ontrar las solu iones de una e ua ión.
solve(expresion,variable), que p ermite en ontrar las solu iones de la e ua ión eqn o de ex- presion=0. Po demos a eder a di ho omando o bien te leándolo en una elda de ál ulo o bien en el menú de la barra sup erior en E ua iones -> Resolver. Ejemplo:
Sin embargo, hay otros asos en los que el omando solve no p ermite obtener la solu ión y tendremos que re urrir a otros omandos. Por ejemplo:
re tamente la e ua ión. En estos asos p o demos intentar utilizar la instru ión to_p oly_solve que es más e iente en determinadas o asiones. Po demos a eder a di ha instru ión en el menú de la barra sup erior en la p estaña E ua iones -> Resolver (to_p oly).
Si queremos sab er el valor aproximado de las solu iones p o demos usar el omando oat o el omando numer:
In luso en este aso, existen e ua iones uya resolu ión no es p osible de forma algebrai a y hay que re urrir a méto dos numéri os de resolu ión. En estos asos, los omandos solve y to_p oly_solve no son útiles y hay que re urrir a otros méto dos.
dos numéri os, p o demos re urrir al omando nd_ro ot(f, variable, lim_inf, lim_sup). Este omando bus a una raíz de f en el intervalo (liminf , limsup), para lo ual es ne esario que el signo de f(liminf ) sea de distinto signo que el signo de f(limsup) para garantizar la existen ia de (al menos) una raíz en di ho intervalo (según el teorema de Bolzano).
Lo que no garantiza el omando nd_ro ot es que en uentre to das las raí es existentes en el intervalo indi ado, sino solamente una. Además si los signos de f en los extremos del intervalo son distintos, se obtiene un mensa je de error. Di ho omando p o demos a tivarlo en la p estaña E ua iones -> Cal ular raíz del menú de la barra sup erior.
En el siguiente ejemplo se puede ver ómo el omando to_p oly_solve no es apaz de resolver una e ua ión puesto que en este aso no tiene solu ión analíti a:
Para apli ar el omando nd_ro ot, bus amos primero dos puntos en los uales la fun ión tome distinto signo:
Vamos a ver ahora un ejemplo de ómo resolver un sistema de e ua iones a partir de la matriz de o e ientes. Este tip o de problemas suelen ser habituales uando se estudian sistemas de e ua iones diferen iales, diagonaliza ión de matri es, et. Si bien en un problema de diag- onaliza ión (wx)Maxima p ermite obtener de forma automáti a los autove tores p or lo que no sería ne esario resolverlo mediante sistemas de e ua iones lineales, para ilustrar ómo se haría en este último aso, vamos a resolver el mismo ejemplo que se vio en el apartado de Cál ulo de autove tores anteriormente, p ero apli ando las té ni as de resolu ión de sistemas de e ua iones lineales.
Sup ongamos que la matriz de la ual queremos al ular los autove tores es m:
Cal ulamos los autovalores λ, omo las raí es del p olinomio ara terísti o, obtenido a partir de |m − λI| = 0
Construimos ahora el sistema homogéneo (m − λI) ~v = ~ 0 :
Resolvemos el sistema para ada autovalor λ on el n de obtener los orresp ondientes autove tores:
El omando rhs p ermite sele ionar el término de la dere ha de una igualdad (right-hand side). De forma equivalente el omando lhs se usa para sele ionar el término de la izquierda de una igualdad. Con los ve tores que hemos obtenido p o demos onstruir la matriz de paso, p oniéndolos omo olumnas:
En la se ión anterior hemos visto omo resolver sistemas de e ua iones lineales. Ahora vamos a ver una generaliza ión de esto en el supuesto de que las e ua iones de nuestro sistema sean p olinómi as. En este aso, el omando que usaremos será algsys([eq 1 , eq 2 , ...], [x 1 , x 2 , ...]). Ejemplo:
5.3. Resolu ión de ine ua iones
La resolu ión de ine ua iones on (wx)Maxima se ha e mediante el omando solve_rat_ineq(ineq);, sin embargo, es ne esario argar previamente el paquete del mismo nombre.