Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Introducción a Maxima y wxMaxima: Solución de problemas matemáticos - Prof. Conejero Meca, Apuntes de Matemáticas Aplicadas

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

2014/2015

Subido el 28/09/2015

irenealdearamos
irenealdearamos 🇪🇸

4

(4)

6 documentos

1 / 38

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Maxima y wxMaxima
Una introduión para prinipiantes
M. Ángeles Gómez Flehoso
Dpto. de Matemátia Apliada (Biomatemátia)
UCM
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26

Vista previa parcial del texto

¡Descarga Introducción a Maxima y wxMaxima: Solución de problemas matemáticos - Prof. Conejero Meca y más Apuntes en PDF de Matemáticas Aplicadas solo en Docsity!

Maxima y wxMaxima

Una intro du ión para prin ipiantes

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.

  1. Cómo intro du ir omandos de (wx)Maxima.

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.

  1. Primeros omandos útiles

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

3 Primeros omandos útiles 5

(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:

  1. Soli itamos informa ión sobre el omando oat:

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.

  1. Soli itamos informa ión sobre los omandos rela ionados on las fun iones de Bessel:

3 Primeros omandos útiles 7

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

Ve tores para el ál ulo matri ial: Para p o der denir un ve tor olumna, y p o der us-

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:

Ve tores unitarios: De forma análoga a lo anterior, p o demos denir un ve tor unitario a

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:

  1. Álgebra Lineal

(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

Suma de matri es: La suma de matri es se realiza utilizando el op erador +:

Pro du to de matri es: El pro du to de matri es se realiza utilizando el op erador .. Cuando

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:

Matriz inversa: Para al ular la inversa de una matriz utilizaremos el omando invert. En

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 Álgebra Lineal 11

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.

Polinomio ara terísti o: El p olinomio ara terísti o de una matriz uadrada A se al-

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:

4 Álgebra Lineal 13

Para onstruir la matriz identidad de dimensión n, basta on p oner ident(n);

Cál ulo de autove tores: La forma rápida de obtener los autove tores de una matriz on

(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:

  1. Análisis matemáti o

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: El primero de los omandos que vamos a analizar es solve(eqn,variable) o

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:

5 Análisis matemáti o 17

to_p oly_solve: En el ejemplo anterior hemos visto que el omando solve no resuelve or-

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.

nd_ro ot: Para aquellas e ua iones en las que las solu iones se tienen que obtener p or méto-

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:

5 Análisis matemáti o 19

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:

Sistemas de e ua iones p olinómi os

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.