sistemas dinámicos con maxima - universidad de …1.1. conceptos generales maxima incluye la...

69
Sistemas dinámicos con Maxima Jesús Muñoz San Miguel Noviembre 2019

Upload: others

Post on 02-Apr-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Sistemas dinámicos con Maxima

Jesús Muñoz San Miguel

Noviembre 2019

Page 2: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El
Page 3: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Índice general

1. Elementos de Calculo Diferencial con Maxima 1

1.1. Conceptos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2. Derivada y aproximación lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Derivadas parciales y diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2. Sistemas dinámicos continuos y ecuaciones diferenciales 17

2.1. Conceptos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2. Solución de sistemas univariantes con Maxima . . . . . . . . . . . . . . . . . . . . . . . . 21

2.3. Solución de sistemas multivariantes con Maxima . . . . . . . . . . . . . . . . . . . . . . 25

2.4. Estudio gráfico de sistemas con Maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3. Sistemas continuos autónomos y estabilidad 31

3.1. Conceptos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.2. Estabilidad de los sistemas univariantes de primer orden . . . . . . . . . . . . . . . . . . 33

3.3. Estabilidad de los sistemas multivariantes de primer orden . . . . . . . . . . . . . . . . . 35

3.4. Estabilidad de los sistemas univariantes de orden superior . . . . . . . . . . . . . . . . . . 37

4. Sistemas dinámicos discretos y ecuaciones en diferencias 39

4.1. Conceptos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2. Solución de sistemas discretos con Maxima . . . . . . . . . . . . . . . . . . . . . . . . . 41

4.3. Estabilidad de sistemas autónomos discretos . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.3.1. Estabilidad de sistemas dinámicos lineales con coeficientes constantes . . . . . . . 45

4.3.2. Estabilidad de sistemas autónomos univariantes . . . . . . . . . . . . . . . . . . . 48

4.3.3. Órbitas periódicas de los sistemas autónomos univariantes . . . . . . . . . . . . . 50

i

Page 4: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

ii ÍNDICE GENERAL

A. Un poco de Álgebra 55

Page 5: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Tema 1

Elementos de Calculo Diferencial con Maxima

1.1. Conceptos generales

Un sistema de computación algebraica o CAS (Computer Algebra System) es un programa desarrollado

como herramienta específica para Matemáticas que realiza cálculos simbólicos y trata las expresiones como

símbolos, evitando realizar aproximaciones. La mayoría de los CAS se divide en dos partes: un núcleo que

realiza los cálculos y una interfaz que introduce datos y recibe resultados. En nuestro caso, utilizaremos

Maxima, que además de ser software libre gratuito, tiene versión para android y, al no tener propósito

comercial, proporciona toda la información sobre los algoritmos que utiliza para los cálculos. El núcleo del

sistema es el propio Maxima y la interfaz es un programa externo, que en nuestro caso va a ser WxMaxima.

La interfaz se comunica con el núcleo mediante archivos que reciben el nombre de hojas de trabajo

(worksheets). El núcleo procesa las órdenes que recibe de ella, para lo que dispone de procedimientos

y funciones pre-programadas a las que nos referiremos como comandos para evitar confusiones con las

funciones que analizamos. Las órdenes se denominan inputs y siguen, con algunas diferencias, la notación

matemática usual. Una vez introducidos se envían al núcleo pulsando “Intro” que los procesa y devuelve

una o varias salidas con los resultados, que se denominan outputs. Al evaluar una instrucción si queremos

que muestre el resultado terminamos con un punto y coma y si no con el símbolo del dolar.

I Si hay algún error el núcleo devuelve un mensaje con el error y no realiza ningún cálculo.

I Al introducir el signo de cierre de interrogación seguido del nombre de un comando ?comando, nos

aparece un breve resumen tanto de su formato como de su uso.

I Por razones de edición se modifican algunas salidas y a veces se presentan los inputs alternativos o

directamente relacionados en la misma línea.

1

Page 6: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.1. CONCEPTOS GENERALES

Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

formato básico es el que se emplea normalmente al escribir expresiones matemáticas y para hacer operacio-

nes solo hemos de introducir la expresión. Así, para sumar y restar usamos los signos + y -. Para multiplicar

y dividir usamos el signo * y la barra /. Para elevar un número a otro utilizamos el signo ˆ.

En los siguientes ejemplos vemos algunos de los comandos básicos en los que hay que tener en cuenta

que se escriben en minúsculas y que tienen el nombre en inglés correspondiente a la función o a la acción

que realizan (sus opciones también tienen nombres en inglés descriptivos y no las comentaremos).

Ejemplo 1.1 Para que Maxima realice cálculos simbólicos tenemos que pedírselo con el comando expand

( % i1) 2+5*3ˆ2;

47 ( % o1)

( % i2) (a+b)ˆ2;

(b + a)2 ( % o2)

( % i3) expand( %);

b2+2ab+a2 ( % o3)

( % i4) (a+b)*(a-b);

(a − b) (b + a) ( % o4)

( % i5) expand( %);

a2 − b2 ( % o5)

( % i6) 2*cos(5* %pi/6);

−√

3 ( % o6)

( % i7) float( %);

−0.86602540 ( % o7)

( % i8) log(2* %e);

log (2 %e) ( % o8)

( % i9) float( %);

1.693147 ( % o9)

Ejemplo 1.2 Maxima permite definir funciones, para lo que se utiliza el signo igual precedido de dos pun-

tos (:=) Otra forma de definir una función es mediante el comando define que siempre evalúa la expresión

con la que definimos a la función y se utiliza para definir funciones que dependen de otras funciones

( % i1) f(x):=xˆ2+1;

f(x) := x2 + 1 ( % o1)

( % i2) f(2);

5 ( % o2)

( % i3) define(g(x),f(x+1)-1);

g(x) := (x + 1)2 ( % o28)

Ejemplo 1.3 Para definir una función a trozos utilizamos una evaluación condicional del tipo

si condición entonces acción 1 en otro caso acción 2

Para ello, utilizamos la instrucción if cond then ac1 else ac2. Por ejemplo, la función valor absoluto se

puede definir con una evaluación condicional (hay un comando para su cálculo, abs):

( % i1) f(x):=if x≥0 then x else -x;

f(x) := if x>=0 then x else−x ( % o1)

I El signo igual (=) se reserva para indicar a Maxima que tenemos una ecuación. Por ejemplo, la

ecuación en la que la función f (x) es igual a cero se escribe f(x)=0.

PROYECTO MATECO 3.14 (complemento) Página 2

Page 7: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

Ejemplo 1.4 Normalmente tenemos los valores del punto como igualdades y para calcular su valor utili-

zamos los comandos ev y at. La diferencia se aprecia al sustituir en ciertas expresiones, ya que el comando

ev realiza la sustitución antes de evaluar la expresión y el comando at después. Siempre podemos impedir

la evaluación de una expresión anteponiendo un apostrofe (’) y forzar su evaluación anteponiendo dos (”):

( % i4) ev(f(x),x=2);

5 ( % o4)

( % i5) at(f(x),x=2);

5 ( % o5)

( % i6) ’f(2);

f(2) ( % o6)

Ejemplo 1.5 En una variable podemos almacenar cualquier tipo de elemento como, por ejemplo, ecuacio-

nes. Para realizar una asignación se utiliza el signo de dos puntos simple (:) o doble (::), cuya diferencia

es que el segundo evalúa ambos lados de la asignación.

( % i7) a:3;

3 (a)

( % i8) f(a);

10 ( % o8)

( % i9) kill(a);

done ( % o9)

� Las listas son uno de los elementos fundamentales de un CAS y en una lista, [elem1, . . . elemn], sus

elementos, a su vez, también pueden ser listas.

Ejemplo 1.6 Para extraer elementos de una lista utilizamos el comando part, donde para extraer el ele-

mento i de la lista list en vez de part(list, i) podemos escribir list[i] y si este elemento es una lista para

extraer de ella directamente su elemento j escribimos list[i][ j] o part(list, i, j))

( % i1) list:[t,[x,y,z],[1,2,3]];

[t, [x, y, z], [1, 2]] (list)

( % i2) list[2]; /*part(list,2)*/;

[x, y, z] ( % o2)

( % i3) list[2][3]; /*part(list,2,3);*/

z ( % o3)

I La longitud de una lista es el número de elementos en primera instancia (length(list)).

Ejemplo 1.7 En Maxima podemos generar listas siguiendo un patrón, para lo que hay dos comandos

posibles, makelist y create_list, con ligeras diferencias:

( % i1) makelist (x=i, i, [a, b, c]); /*create_list (x=i, i, [a, b, c]);*/

[x = a, x = b, x = c] ( % o1)

( % i2) makelist (aˆi, i, 1,10); /*create_list (aˆi,i,1,10);*/

[a, a2, a3, a4, a5, a6, a7, a8, a9, a10] ( % o2)

Página 3 PROYECTO MATECO 3.14 (complemento)

Page 8: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.2. DERIVADA Y APROXIMACIÓN LINEAL

( % i3) makelist (aˆi, i, 1,10,2); /* con salto (2)*/

[a, a3, a5, a7, a9] ( % o3)

( % i4) create_list (iˆj, i, 1,3, j, 1,3); /* doble iteración*/

[1, 1, 1, 2, 4, 8, 3, 9, 27] ( % o4)

� Además de los comandos más o menos básicos que incluye Maxima, hay conjuntos de comandos rela-

cionados que reciben el nombre de paquetes para poder utilizarlos se cargan con el comando load(paquete).

I Para la representación gráfica utilizamos el paquete draw a través de wxMaxima. En este caso, pode-

mos incluir los gráficos en el documento, para lo que hay que anteponer a los comandos el prefijo "wx".

Ejemplo 1.8 En Maxima podemos representar funciones explícitas en las que la variable dependiente de-

pende directamente de la función y funciones implícitas en las que tenemos una relación entre las variables

dependiente e independiente. Otra posibilidad es representar la gráfica en forma paramétrica (válida para

cualquier curva descrita por parámetros). Aunque aquí no vamos a entrar en este tema, hay un número

suficiente de comandos y opciones para obtener gráficos de gran calidad (no mostraremos las opciones de

los comandos para gráficos pues se pueden utilizar los manuales y menús de ayuda que tiene Maxima).

( % i1) wxdraw2d(explicit(xˆ2, x, -10,10))$

( %i2) wxdraw2d(implicit(xˆ2=y, x, -10,10,y,0,100))$

( %i3) wxdraw2d(parametric(k,kˆ2,k,-10,10));$

I Hay versiones en 3D de todos los gráficos que representamos con el comando wxdraw3d.

1.2. Derivada y aproximación lineal

El primer concepto que necesitamos es el de derivada, que en cada punto indica el ritmo del cambio

en el el valor de la función cuando se produce un cambio infinitesimal en el valor de la variable de la que

depende. Geométricamente es la pendiente de la recta tangente al punto en la dirección del eje de abscisas.

f ′(x0) = lı́m4x→0

4y4x

= lı́m4x→0

f (x0 + 4x) − f (x0)4x

PROYECTO MATECO 3.14 (complemento) Página 4

Page 9: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

En Economía también recibe el nombre de tasa instantánea de variación o tasa marginal de variación

y se suele interpretar como el incremento en el valor de la función cuando la variable se incrementa en una

unidad. Sin embargo, aunque el incremento que marca la derivada es relativo y por unidad, solo es cierto

si el incremento es relativamente pequeño con respecto a las unidades en las que medimos la variable.

Ejemplo 1.9 Para calcular derivadas utilizamos el comando diff, con distintas opciones para sustituir en

un punto.

( % i1) f(x):=xˆ3*(x-1)-xˆ2;

f(x) := x3 ∗ (x − 1) − x2

( % o1)

( % i2) diff(f(x),x);

x3 + 3 (x − 1) x2 − 2x

( % o2)

( % i3) ev( %,x=4);

200 ( % o3)

( % i4) at( %th(2),x=4);

200 ( % o4)

( % i5) ev(”(diff(f(x),x)),x=4);

200 ( % o5)

( % i6) at(diff(f(x),x),x=4);

200 ( % o6)

Ejemplo 1.10 Representar las siguientes funciones y calcular su derivada:

(a) f (x) =x − 1

x2 − 5x + 6(b) f (x) =

√2x2 + 3x − 1 (c) f (x) = x3

√2x + 1 ♣

Para derivar funciones compuestas se utiliza la regla de la cadena, que Maxima aplica directamente.

Esta regla tiene un interés adicional por su interpretación económica. Así, si y = y(x) y, a su vez, x = x(t)

se tiene una función y = y(t) de forma que la tasa de variación de y con respecto a t es producto de la tasa

de variación de y con respecto a x por la tasa de variación de x con respecto a t:

dydx

∣∣∣∣∣t=

dydx

∣∣∣∣∣x(t)

dxdt

∣∣∣∣∣t

Ejemplo 1.11 Sea f (x) =√

x donde x = k0 + k1t + k2ea t.

Calcular la derivada de f con respecto a t componiendo la función y aplicando la regla de la cadena.♣

Cuando una función f (x) es derivable en un intervalo que contiene al punto

x0, podemos aproximar la función en un entorno del punto por la recta tan-

gente a la gráfica en dicho punto, tomando, en vez de los valores reales de la

función, los valores correspondientes a la recta tangente obteniendo la apro-

ximación lineal o aproximación de Taylor de orden uno.

f (x) ≈ f (x0) + f ′(x0)(x − x0).

Página 5 PROYECTO MATECO 3.14 (complemento)

Page 10: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.2. DERIVADA Y APROXIMACIÓN LINEAL

I En Maxima podemos construirla u obtenerla directamente con el comando taylor

Ejemplo 1.12 Calcular 4.12 mediante la aproximación lineal de f (x) = x2 en x = 4.

( % i1) f(x):=xˆ2;f(x) := x2 ( % o1)

( % i2) diff(f(x),x);2x ( % o2)

( % i3) at(diff(f(x),x),x=4);8 ( % o3)

( % i4) define(g(x),f(4)+at(diff(f(x),x),x=4)*(x-4));g(x) := 8 (x − 4) + 16 ( % o4)

( % i5) define(h1(x), taylor(f(x),x,4,1));h1(x) := 16 + 8 (x − 4) + ...

( % o5)/T)( % i6) f(4.1);

16.81 ( % o6)( % i7) g(4.1);

16.8 ( % o7)( % i8) h1(4.1);

16.8 ( % o8)

Ejemplo 1.13 Calcular la derivada de las siguientes funciones en el punto indicado y representarlas junto

la correspondiente aproximación lineal (recta tangente en el punto).

(a) f (x) = 2x ln(x) en x0 = 1 (b) f (x) = ln(2x + 32x + 1

)en x0 = 1/2 (c) f (x) =

ex − 3e2x

1 + ex en x0 = 0. ♣

Ejercicio 1.14 El coste de producir x unidades de un producto viene dado por C(x) = x2 +3x+100, medido

en ciertas unidades monetarias y actualmente estamos produciendo cien unidades del producto:

a) Calcular el coste de la producción actual y el correspondiente coste marginal.

b) Comparar el coste marginal real correspondiente a la producción actual y el coste marginal que se

obtiene con la derivada (representar la función de coste y su tangente). ♣

Ejercicio 1.15 La ley de la demanda establece que existe una relación inversa entre la cantidad demandada

de un bien y su precio, de forma que, si el resto de factores de los que depende se mantienen constantes,

cuando el precio de un producto aumenta la cantidad demandada baja y cuando el precio baja la cantidad

demandada aumenta (existen ciertas excepciones).

La relación funcional entre la cantidad demandada del bien, q, y el precio al que se demanda, p, se

escribe como q = Q(p), recibe el nombre de curva de demanda y, al establecer una relación inversa entre

la demanda y su precio, tiene pendiente negativa, Q′(p) < 0.

� Si la función de demanda es Q(p) = 1500 − 20p − p2 y el precio actual es de 10e:

a) Representar la función de demanda y su recta tangente en el precio actual.

b) Determinar la demanda mediante la aproximación lineal si el precio sube 2 céntimos. ¿Cuál es el valor

exacto?. ♣

PROYECTO MATECO 3.14 (complemento) Página 6

Page 11: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

La derivada tiene el inconveniente de depender de las unidades en las que medimos los factores y como

medida relativa del grado de respuesta de la variable dependiente se considera la variación porcentual en la

función ante variaciones porcentuales en la variable independiente, que recibe el nombre de elasticidad:

E(x) = lı́m4x→0

4y/4xy/x

=f ′(x)

f (x)/x=

x f ′(x)f (x)

Ejemplo 1.16 Obtener las elasticidades de f (x) = ln(x2 + 1) y g(x) =√

x − 2. ♣

Ejemplo 1.17 ¿Hay alguna relación entre las elasticidades de la función f (x) = u(x)v(x) y las elasticida-

des de las funciones u(x) y v(x)?. ♣

Ejercicio 1.18 Como medida relativa del grado de respuesta de la demanda se considera su variación

porcentual ante variaciones porcentuales en el precio, elasticidad precio de la demanda, que es negativa

para bienes que se ajustan a la ley de la demanda (ejercicio 1.15), y permite clasificar los bienes en función

del grado de respuesta de la demanda del bien a los cambios en su precio. Así, tenemos:

la demanda es inelástica si E(p) > −1, de modo que el cambio porcentual en la demanda es menor

que el cambio porcentual en el precio (si E(p) = 0 es perfectamente inelástica)

la demanda es de elasticidad unitaria si E(p) = −1, de modo que el cambio porcentual en la cantidad

demandada es igual que el cambio porcentual en el precio.

la demanda es elástica si E(p) < −1, de modo que el cambio porcentual en la demanda es mayor que

el cambio porcentual en el precio (si E(p) = −∞ es perfectamente elástica).

� Si la función de demanda es Q(p) = 1500 − 20p − p2 y el precio actual es de 10e:

a) Determinar la elasticidad de la función de demanda al precio actual.

b) Determinar para qué rango de precios la función de demanda es elástica y para cuáles inelástica. ♣

Si la derivada de la función es derivable podemos derivarla

y obtener su segunda derivada que caracteriza la forma de

cierta clase de funciones. Así, una función es convexa si para

cada par de puntos el segmento que los une está por encima

de la gráfica de la función y cóncava si está por debajo.convexa cóncava

Si es dos veces derivable en su dominio tenemos:

f es convexa en D si y sólo si f ′′(x) ≥ 0 ∀x ∈ D. f es cóncava en D si y sólo si f ′′(x) ≤ 0 ∀x ∈ D.

Página 7 PROYECTO MATECO 3.14 (complemento)

Page 12: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.2. DERIVADA Y APROXIMACIÓN LINEAL

Ejemplo 1.19 Representar las siguientes funciones y sus derivadas en distintas gráficas y relacionar la

forma de la función con el crecimiento de su derivada y el signo de su derivada segunda.

(a) 32x+1 (b) sen(3x + π) (c) arctan(x − 4). ♣

Ejercicio 1.20 Los costes de producción de una empresa normalmente dependen solo de la producción de

la propia empresa, q, y vienen dados por una función C(q), cuya derivada representa el coste marginal de

la producción correspondiente y cumple C(q) ≥ 0 (ejercicio 1.14).

� Considerando la función C(x) = 2x2 − 0.01x3 + 100:

Representar las funciones de coste total y coste marginal y relacionar la forma de la función con el tipo

de costes marginales y el signo de la derivada segunda. ♣

Práctica 1 Una función de utilidad monetaria mide numéricamente la utilidad que le supone a cierto

agente económico el uso o tenencia de cierta cantidad monetaria o riqueza, U(w), y permite modelar su

toma de decisiones suponiendo que en sus acciones trata de maximizar la utilidad obtenida. Supondremos

que la función de utilidad tiene al menos dos derivadas continuas y una condición básica es que crezca a

medida que crece la riqueza, por lo que imponemos U′(w) > 0.

Un agente puede tener distintas actitudes ante el riesgo. Por ejemplo, puede tener que optar entre

una cuenta bancaria con una tasa de interés baja pero garantizada y una acción que puede tener un alto

rendimiento pero que puede perder su valor o una parte de él. Dependiendo de lo que prefiere cuando

ambas tienen el mismo pago esperado distinguimos tres comportamientos ante la incertidumbre del pago:

Aversión al riesgo: intentan reducir la incertidumbre y prefieren aceptar un pago cierto menor que

el pago esperado (mayor pero incierto). En este caso la utilidad marginal es decreciente y se tiene

U′′(w) < 0, con lo que la función es cóncava.

Propensión al riesgo: corresponde al comportamiento contrario y en él la utilidad marginal es cre-

ciente, U′′(w) > 0, con lo que la función es convexa.

Neutralidad ante el riesgo les es indiferente entre un pago cierto y uno esperado del mismo valor y

la utilidad marginal es constante, U′′(w) = 0, con lo que la función es una recta.

� Determinar si las siguientes funciones pueden ser funciones de utilidad monetaria y, en este caso,

determinar a qué tipo de agente corresponden y representar las correspondientes funciones de utilidad y

de utilidad marginal. ¿Qué relación existe entre la utilidad marginal y el tipo de agente?.

(a) U(w) = ln(w2 + 4) (b) u(w) =√

w + 1 (c) u(w) =√

w3 + 1 (d) u(w) = w2 + 1. ♣

PROYECTO MATECO 3.14 (complemento) Página 8

Page 13: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

1.3. Derivadas parciales y diferencial

Para trabajar en <n representaremos sus elementos por listas, {c1, c2, . . . , cn} y los interpretamos bien

como puntos (espacio métrico), bien como vectores (espacio vectorial). Cuando interpretamos<n como un

espacio métrico se consideran dos tipos de conjuntos de puntos especialmente importantes, los conjuntos

abiertos y cerrados. Estas categorías reproducen la distinción entre un intervalo abierto y otro cerrado e,

informalmente, un conjunto es abierto si no contiene ninguno de sus bordes y cerrado si los contiene todos.

Si un conjunto cerrado está acotado decimos que es compacto.

I Utilizamos el nombre de entorno del punto para referirnos a cualquier abierto que contenga a un

punto determinado y lo denotamos por U(x0).

Las funciones con varias variables relacionan n variables independientes representadas por un vector

x = (x1, x2, . . . , xn) ∈ D ⊆ Rn con un conjunto de m variables que dependen de ellas representado por otro

vector y = (y1, y2, . . . , ym) ∈ Rm. Estas funciones pueden ser escalares (m=1) y a cada vector asociarle un

número o vectoriales (m>1) y a cada vector asociarle un vector (en vez de vectores pueden ser puntos). En

ambos casos escribiremos y = f (x), pero tendremos en cuenta que para n,m > 1 tenemos una relación entre

n variables independientes y m variables dependientes:

y1 = f1(x1, x2, . . . , xn)

y2 = f2(x1, x2, . . . , xn)...

ym = fm(x1, x2, . . . , xn)

Ejemplo 1.21 Para calcular el valor de una función en un punto cuando tenemos varias variables es muy

útil almacenar el punto en una variable y utilizar el comando apply

( % i4) f(x,y):=[sqrt(x-y),xˆ2 + y - 4];

f (x, y) := [√

x − y, x2 +y] ( % o1)

f(5,3);

[√

2, 28] ( % o2)

pto:[5,3];

[5, 3] ( % o3)

apply(f, pto);

[√

2, 28] ( % o4)

Nos referiremos a la aplicación que al punto (x1, x2, . . . , xn) le asocia la coordenada i-ésima de su ima-

gen, fi(x1, x2, . . . , xn), con el nombre de la función componente i-ésima, o el de la proyección de la función

sobre el eje i-ésimo. Estas funciones permiten realizar el estudio de la función a través de ellas, lo que hace

que en muchas situaciones estudiemos funciones escalares.

Página 9 PROYECTO MATECO 3.14 (complemento)

Page 14: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.3. DERIVADAS PARCIALES Y DIFERENCIAL

Ejemplo 1.22 Para obtener las componentes de una función vectorial utilizamos el comando define, ya

que queremos que evalúe la definición:

( % i6) define(f1(x,y), f(x,y)[1]);

f1 (x, y) :=√

x − y ( % o5)

define(f2(x,y), f(x,y)[2]);

f2 (x, y) := y + x2 ( % o6)

Las funciones escalares se pueden representar gráficamente mediante dos tipos de representaciones

asociadas a la función: su gráfica y sus curvas de nivel. En el caso de una función de dos variables su

gráfica, z = f (x, y), es una superficie de R3 y sus curvas de nivel, f (x, y) = k, como su nombre indica, son

curvas en el plano XY . Estas curvas corresponden a los puntos en los que la función toma el valor k y son

las proyecciones en el plano XY del corte de su gráfica con el plano z = k. Cuando la función representa una

cantidad, como la producción, cada curva de nivel recibe el nombre de isocuanta y representa los valores

de las variables que producen una misma cantidad.

Ejemplo 1.23 Representar la función f (x, y) = x2 + y2 y sus curvas de nivel.

( % i4) wxdraw3d(explicit(xˆ2+yˆ2,x, -5,5,y,-5,5))$

wxdraw3d(explicit(xˆ2+yˆ2,x,-5,5,y,-5,5),contour=map)$

wxdraw3d(explicit(xˆ2+yˆ2,x, -5,5,y,-5,5),contour=both)$

wxcontour_plot(xˆ2+yˆ2, [x, -5,5],[y,-5,5]);

( % t1 % t2)

( % t3 % t4)

PROYECTO MATECO 3.14 (complemento) Página 10

Page 15: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

En funciones de una variable la derivada marca el ritmo del cambio que experimenta el valor de la

función cuando se produce un cambio infinitesimal en el valor de la variable de la que depende. Cuando

una función tiene un número cualquiera de variables, y = f (x1, . . . , xn), para cada variable xi tenemos una

derivada en la que se considera que solo cambia esta variable mientras el resto permanecen constantes y nos

referimos a ella como la derivada parcial de la función con respecto a la variable xi:

∂ f∂xi

(x01, . . . , x0n) = lı́m4xi→0

4y4xi

= lı́m4xi→0

f (x01, . . . , x0i + 4xi, . . . , x0n) − f (x01, . . . , x0i, . . . , x0n)4xi

.

I La derivada parcial de una función con respecto a la variable xi en un punto es la pendiente de la

recta tangente a la superficie z = f (x1, . . . , xn) en la dirección del eje xi en el punto.

I La derivada parcial también recibe el nombre de tasa instantánea de variación y, al igual que sucede

cuando solo hay una variable, su interpretación como tasa marginal en la que una variable se incrementa

en una unidad y el resto permanecen constantes tiene la salvedad de que solo es válida si el incremento es

relativamente pequeño con respecto a las unidades en las que medimos la variable.

Ejemplo 1.24 Calcular las derivadas parciales de f (x, y, z) = sen(x + y2 − 4 ∗ z3)

( % i1) f(x,y,z):=sin(x+yˆ2-4*zˆ3);

f (x, y, z) := sin(x + y2 + (−4) z3

)( % o1)

( % i4) diff(f(x,y,z),x,1);

cos(4z3 − y2 − x

)( % o2)

diff(f(x,y,z),y,1);

2y cos(4z3 − y2 − x

)( % o3)

diff(f(x,y,z),z,1);

−12z2 cos(4z3 − y2 − x

)( % o4)

Ejemplo 1.25 Calcular las derivadas parciales de las siguientes funciones:

(a) f (x, y) = arc tg(

x − yx + y

)(b) f (x, y) = (2x2 + 3y2) cos(πx2y4). ♣

Ejercicio 1.26 El volumen de la cosecha de un bien (Y) depende del capital invertido (K) y el trabajo (L)

mediante la siguiente función de producción de Cobb-Douglas

Y = F(K, L) = 10 K1/2L2/3

a) Representar la función de producción y sus isocuantas y determinar qué sucede con el volumen de la

cosecha si se multiplican ambos factores de producción en la misma cantidad.

b) Calcular las tasas de variación a la que aumenta el volumen cuando un factor se incrementa y el otro

permanece constante y determinar qué sucede si se multiplican ambos en la misma cantidad. ♣

Página 11 PROYECTO MATECO 3.14 (complemento)

Page 16: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.3. DERIVADAS PARCIALES Y DIFERENCIAL

Para aproximar localmente una función con varias variables por una aplicación lineal en torno al punto

no basta con que existan sus derivadas parciales y es necesario que la aproximación sea buena, caso en el

que decimos que la función es diferenciable.

I Una condición que permite asegurar que una función es diferenciable es que sus parciales sean

continuas, cosa que supondremos a partir de ahora.

Así, aproximamos la función por la aplicación que a los incrementos de las variables independientes les

asocia el incremento aproximado de la variable dependiente que se obtiene mediante el plano tangente, que

recibe el nombre de diferencial:

D f (x0)[dx] = D f (x0)[(dx1, . . . , dxn)] =∂ f∂x1

(x0)dx1 + . . . +∂ f∂xn

(x0)dxn = ∇ f (x0) · dx

Ejemplo 1.27 Determinar la diferencial de f (x, y) =√

x2 + y2 en el punto (5, 3) y utilizarla para obtener

la aproximación lineal de la función en torno al punto.

( % i1) f(x,y):=sqrt(xˆ2+yˆ2);

f (x, y) :=√

x2 + y2 ( % o1)

( % i2) diff(f(x,y));

y del(y)√y2 + x2

+x del(x)√

y2 + x2( % o2)

( % i3) D:at(diff(f(x,y)),[x=5,y=3]);

3 del(y)√

34+

5 del(x)√

34(D)

( % i4) DD:subst([del(x)=x-5,del(y)=y-3],D);

3 (y − 3)√

34+

5 (x − 5)√

34(DD)

( % i5) define(h(x,y), f(5,3)+DD);

h (x, y) :=3 (y − 3)√

34+

5 (x − 5)√

34+√

34

( % o5)( % i6) wxdraw3d(explicit(h(x,y), x, -10,10,y,-10,10),explicit(f(x,y), x, -10,10,y,-10,10));

Ejemplo 1.28 Calcular la diferencial de las siguientes funciones:

(a) f (x, y) = x 3√

xy − 1 (b) f (x, y, z) = ln(2x2z

y

)♣

PROYECTO MATECO 3.14 (complemento) Página 12

Page 17: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

I El vector formado por las parciales en el punto recibe el nombre de gradiente de la función en el

punto y se denota por ∇ f (x0).

El vector gradiente es perpendicular a la curva de nivel que pasa por el punto e indica la dirección de

máximo crecimiento de la función, de forma que en su dirección la pendiente de la recta tangente tiene

el máximo valor de todas las pendientes de las rectas tangentes en el punto (en el sentido del gradiente

tenemos el máximo crecimiento y en el opuesto el máximo decrecimiento).

Ejercicio 1.29 La compañía Refresquillos S.A. produce dos tipos de refrescos que vende con un beneficio

B(x, y) = (x − 1)2 + (y − 2)2

donde x e y son las toneladas producidas de cada uno de los refrescos (beneficio en miles de euros). En estos

momentos produce 2 toneladas del primer refresco y 4 del segundo pero quiere incrementar su producción.

a) ¿Cuál es el beneficio que obtiene actualmente?. Representa la correspondiente curva de nivel.

b) ¿En que proporción aumentaría el beneficio si se produce un incremento de la producción del primer

refresco y la del segundo se mantiene constante?. ¿Y al contrario? ¿Qué proporción deben tener ambos

factores para que se consiga el máximo incremento en los beneficios?.

c) ¿Cuánto aumentarían los beneficios si la producción de ambos refrescos aumenta en un 5 %?. ♣

Cuando la función tiene más de una componente la diferencial de la función es la aplicación cuyas com-

ponentes son las diferenciales de sus componentes. La función es diferenciable si todas son diferenciables.

En este caso, en la matriz de la aproximación lineal de la función en el punto, matriz jacobiana, sus filas

son los gradientes de las componentes traspuestos. Con esta notación escribimos la aproximación lineal o

aproximación de Taylor de orden uno:

f (x1, x2, . . . , xn) ≈ f (x01, x02, . . . , x0n) + J f (x01, x02, . . . , x0n)(x1 − x01, x2 − x02, . . . , xn − x0n).

Ejemplo 1.30 En Máxima podemos obtener la matriz jacobiana directamente con el comando jacobian.

Así, utilizándolo podemos obtener directamente la aproximación lineal del ejemplo 1.27:

( % i8) define(J(x,y), jacobian([f(x,y)],[x,y]));

J (x, y) :=( x√

y2 + x2

y√y2 + x2

)( % o7)

define(h(x,y), f(5,3)+[x-5,y-3].J(5,3));

h (x, y) :=3 (y − 3)√

34+

5 (x − 5)√

34+√

34 ( % o8)

Página 13 PROYECTO MATECO 3.14 (complemento)

Page 18: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

1.3. DERIVADAS PARCIALES Y DIFERENCIAL

Práctica 2 En el ejercicio 1.15 consideramos que la demanda de un bien, A, dependía de su precio, que

aquí se denota por pa. Ahora vamos a considerar que esta demanda también depende del precio de otro

bien, B, denotado por pb, por lo que ahora la demanda del bien A depende del precio de ambos bienes:

q = Da(pa, pb)

La derivada parcial de esta función con respecto al precio pa es la tasa a la que varía la demanda

cuando el precio del bien A se incrementa infinitesimalmente mientras el precio del bien B se mantiene

constante y siempre es negativa, ya que la demanda disminuye cuando el precio del bien aumenta.

La derivada con respecto a pb es la tasa a la que varía la demanda cuando el precio del bien B aumenta

mientras el precio del bien A se mantiene constante y su signo depende del tipo de bienes y su relación.

Si los bienes pueden utilizarse de forma alternativa, bienes sustitutivos, cuando aumenta el precio

de uno la demanda del otro aumenta y se tiene

∂Da

∂pb(pa, pb) > 0.

Si los bienes son consumidos conjuntamente, bienes complementarios, cuando aumenta el precio de

uno la demanda del otro disminuye y se tiene

∂Da

∂pb(pa, pb) < 0.

Si el precio de uno no influye en la demanda del otro, bienes indiferentes, se tiene

∂Da

∂pb(pa, pb) = 0.

� Suponiendo que la demanda del bien A es D(pa, pb) = 500 − 20pa − p2b − 2pa pb.

a) Representar la función de demanda del bien junto con sus curvas de nivel.

b) Calcular sus derivadas parciales y determinar la relación entre ambos bienes

c) Representar el plano tangente a la función cuando ambos precios son de 5 e y determinar la demanda

mediante la aproximación lineal si el precio del bien A disminuye en dos céntimos y el del B sube en

uno. ¿Cuál sería el valor exacto?. ♣

PROYECTO MATECO 3.14 (complemento) Página 14

Page 19: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 1. ELEMENTOS DE CALCULO DIFERENCIAL CON MAXIMA

Práctica 3 (continuación de la práctica 2) Con respecto a la elasticidad, al igual que sucedía cuando

consideramos que la demanda dependía solo del precio del bien A, las derivadas parciales dependen de las

unidades que consideremos. Como medida relativa del grado de respuesta de la demanda, además de la

elasticidad precio de la demanda correspondiente a la variación porcentual de la demanda ante variaciones

porcentuales en el precio del propio bien, se considera la elasticidad cruzada de la demanda, que mide el

grado de influencia que tiene en la demanda del bien A la variación en el precio del bien B y corresponde

a la variación porcentual en la demanda ante variaciones porcentuales en el precio del bien B.

Cuando los cambios en el precio son infinitesimales es el cociente entre la derivada parcial de la función

de demanda con respecto al precio del bien B y la cantidad demandada por unidad monetaria

Eb(pa, pb) =∂Q(pa, pb)/∂ pb

Q(pa, pb)/pb=

Q(pa, pb)pb

∂Q(pa, pb)∂ pb

El signo de la elasticidad cruzada depende del signo de la derivada parcial y es mayor que cero para un

bien sustituto y menor que cero para un bien complementario. En ambos casos mide el grado de respuesta

de la demanda del bien A a los cambios en el precio del bien B y dependiendo de su valor absoluto será

elástica si es mayor que uno e inelástica si es menor.

� Suponiendo que la demanda del bien A responde a la misma función que en la práctica 2, calcular sus

elasticidades precio y cruzada y determinar el tipo de elasticidad en cada caso. ♣

Página 15 PROYECTO MATECO 3.14 (complemento)

Page 20: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El
Page 21: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Tema 2

Sistemas dinámicos continuos y ecuaciones

diferenciales

2.1. Conceptos generales

Un sistema dinámico está formado por un conjunto de elementos en interacción que evolucionan con el

tiempo y distinguimos entre sistemas dinámicos discretos y continuos, dependiendo de si el tiempo se con-

sidera una variable discreta o continua. Los primeros son modelados mediante ecuaciones en diferencias

(relaciones recursivas entre variables) y los segundos mediante ecuaciones diferenciales (relaciones entre

las variables y sus tasas de variación). En ambos casos, la situación del sistema en cada instante (estado del

sistema) está descrita por distintas variables a las que nos referimos como variables de estado (los sistemas

correspondientes a un modelo general incluyen parámetros que permiten ajustarlo a casos particulares).

Ejemplo 2.1 (Modelo maltusiano de población en tiempo discreto) Denotamos el tamaño de una población

en el momento t por pt = p(t) y consideramos que la tasa de crecimiento de la población de una generación

a otra es constante, k, de forma que el incremento de la población en el periodo siguiente es proporcional

a la población en este momento:

4pt+1 = pt+1 − pt = kpt ⇔ pt+1 = (1 + k)pt. ♣

Ejemplo 2.2 (Modelo maltusiano de población en tiempo continuo) En este modelo la derivada representa

la tasa a la que varía la población con respecto al tiempo y se asume que es proporcional a la población

existente en ese momento (la variación porcentual en la población es constante):dpdt

= k p con k ∈ R ♣

17

Page 22: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.1. CONCEPTOS GENERALES

En un sistema dinámico continuo conocemos en todo momento la relación que existe entre las variables

de estado y las tasas a las que varían, que corresponden a sus derivadas (velocidades de variación). El

orden del sistema es el orden de la derivada de mayor orden que aparece y si las derivadas de mayor orden

aparecen despejadas decimos que el sistema está en forma normal. En particular, un sistema de ecuaciones

diferenciales de primer orden en forma normal, se escribe de forma abreviada x′ = f (t, x), donde utilizamos

la x minúscula para representar tanto una única variable de estado como un vector con varias variables de

estado, dejando la distinción entre ambos al contexto.

Consideramos solo sistemas con el mismo número de ecuaciones que de variables de estado. Así, si

el sistema tiene una única variable de estado vendrá dado por una única ecuación diferencial y si tiene

n variables por un sistema de n ecuaciones diferenciales. En cualquier caso nos referimos a la ecuación

diferencial o sistema de ecuaciones diferenciales como la ecuación de movimiento del sistema y si en esta

ecuación la relación entre las variables y sus derivadas no depende explícitamente del tiempo hablamos de

un sistema dinámico autónomo o invariante en el tiempo.

Un caso particularmente importante, tanto en sistemas discretos como continuos, son los sistemas di-

námicos lineales, donde un sistema de ecuaciones es lineal si todas sus ecuaciones son lineales (si al menos

una es no lineal el sistema es no lineal) y donde una ecuación diferencial es lineal si es de la forma:

a0(t)xn)(t) + a1(t)xn−1)(t) + · · · + an−1(t)x′(t) + an(t)x(t) = b(t)

Ejercicio 2.3 (continuación del ejemplo 2.2) Una extensión inmediata del modelo de crecimiento maltu-

siano es incorporar un flujo de migración, m(t), que puede ser positivo (inmigración) o negativo (emigra-

ción). La ecuación que relaciona la población con su tasa de variación es lineal de orden uno:

dpdt

= k p + m(t)⇐⇒ p′ − k p = m(t) ♣

Ejemplo 2.4 (Curva logística) En el modelo de crecimiento maltusiano asumimos que la población crecía

a una tasa constante, de forma que la variación porcentual de la población era constante. La curva logística

surge al suponer que esta variación es igual a la tasa promedio de nacimientos, Tn, que se supone constante,

Tn = n, menos la tasa promedio de defunciones, Td, que se supone proporcional a la población, Td = m p,

dando lugar a una ecuación de primer orden, que es no lineal al aparecer un producto

dp/dtp

= n − mp⇐⇒dpdt

= k p(a − p) con k = m y a = n/m ♣

PROYECTO MATECO 3.14 (complemento) Página 18

Page 23: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

Ejemplo 2.5 Determinar las características de los siguientes sistemas:

(a)dydx

+ 3xy = ex (b)dxdt

+ 3x = 4 + e−t (c)d2xdt2 −

dxdt

+ x2 = 0 (d)d2xdt2 = 4t

dxdt− 3tx

(e)

x′′ − 2x′ − y = e3t

y′ − 6x = 0(f)

x′ = 2x − y + 3e3t

y′ = 6x(g)

x′′ = 2x − 3t

y′′ = 6x′(h)

x′ = x + y

y′ = xy

En un sistema dinámico el primer objetivo que perseguimos es determinar el comportamiento del sis-

tema a lo largo del tiempo, en particular, estamos interesados en describir la evolución de las variables de

estado como función del tiempo. Así, una solución de una ecuación diferencial de orden n es una función

n veces derivable que la satisface exactamente en un intervalo, x(t), y una solución de un sistema de ecua-

ciones diferenciales un vector x = x(t) = (x1(t), x2(t), . . . , xn(t)) formado por n funciones que satisfacen

conjuntamente cada una de las ecuaciones del sistema en un intervalo. La solución general es una solución

que contiene todas las posibles soluciones mediante el uso de constantes. Si hay alguna solución que no se

puede obtener de esta forma nos referimos a ella como solución singular.

Ejemplo 2.6 La ecuación de movimiento del sistema del modelo de población maltusiano en tiempo con-

tinuo (ejemplo 2.2) es sencilla de resolver escribiendo en cada miembro una única variable para integrar

miembro a miembro (estas ecuaciones reciben el nombre de ecuaciones de variable separada):

dpp

= kdt =⇒

∫dpp

=

∫kdt =⇒ ln(p) = kt + C =⇒ p = eCekt =⇒ p = Cekt

donde para que la solución general incluya la solución singular p(t) = 0 que desaparece al dividir por p,

hemos escrito la constante eC como C (para k > 0 la población aumenta y para k < 0 disminuye).

( % i1) /*k=1*/ wxdraw2d(

explicit(at(C* %eˆ(t),C=1),t,0,3),

explicit(at(C* %eˆ(t),C=2),t,0,3),

explicit(at(C* %eˆ(t),C=3),t,0,3))$

( % t1)

( % i2) /*k=-1*/ wxdraw2d(

explicit(at(C* %eˆ(-t),C=1),t,0,3),

explicit(at(C* %eˆ(-t),C=2),t,0,3),

explicit(at(C* %eˆ(-t),C=3),t,0,3))$

( % t2)

Página 19 PROYECTO MATECO 3.14 (complemento)

Page 24: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.1. CONCEPTOS GENERALES

En este modelo la evolución de la población no queda totalmente determinada por la ecuación diferen-

cial pues hemos obtenido una familia de soluciones. Sin embargo conocemos el valor inicial de la población

podemos determinar la constante de forma que al sustituir obtenemos una única solución

p(t0) = p0 =⇒ p0 = Cekt0 =⇒ C = p0e−kt0 =⇒ p(t) = p0ek(t−t0). ♣

� En una ecuación de primer orden nos referiremos como un problema de valor inicial al problema

de encontrar una solución que satisfaga x(t0) = x0. A su vez, nos referimos a esta condición como una

condición inicial y es equivalente a especificar un punto (t0, x0) por el que pase la curva solución:

dxdt

= f (t, x)

x(t0) = x0

I En ecuaciones con varias variables de estado, x = (x1, x2, . . . , xn), imponemos condiciones iniciales

para cada una de las variables, x1(t0) = x01, x2(t0) = x02, . . . , xn(t0) = x0n

I En una ecuación de orden n la solución depende de n constantes y para especificar una solución

particular en una ecuación de orden mayor que uno necesitamos n − 1 condiciones adicionales, que en

nuestro caso van a ser condiciones iniciales sobre las tasas a la que varía la función y sus derivadas.

I Un problema de valor inicial puede o no tener solución y si la tiene puede que no sea única. Para

garantizar que la solución existe y es única es suficiente que la función sea continuamente diferenciable.

� En Maxima disponemos de una gran variedad de comandos para trabajar con ecuaciones diferenciales.

I Para resolver ecuaciones de primer y segundo orden utilizamos el comando ode2 (para resolver ecua-

ciones de orden mayor que dos hay que transformarlas en sistemas de primer orden).

I Para resolver sistemas de ecuaciones diferenciales lineales utilizamos el comando desolve.

Un sistema dinámico no siempre podemos resolverlo, como sucede en la mayoría de sistemas no lineales

y, aunque podamos, como sucede en muchos de los lineales, no siempre obtenemos soluciones informativas

sobre el comportamiento general del sistema. Por ejemplo, podemos obtener directamente una solución de

un sistema dinámico lineal de primer orden en forma estándar pero la integral que aparece no siempre se

puede resolver en términos de funciones elementales (Maxima utiliza funciones especiales que podemos

utilizar para obtener valores numéricos):

( % i1) ode2(’diff(x,t)+p(t)*x=g(t),x,t);

x = %e−∫

p(t)dt

(∫g(t) %e

∫p(t)dt dt + %c

)( % o1)

PROYECTO MATECO 3.14 (complemento) Página 20

Page 25: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

2.2. Solución de sistemas univariantes con Maxima

Para resolver ecuaciones diferenciales ordinarias de orden mayor que dos hay que transformarlas en

sistemas de primer orden, por lo que, de momento, nos limitamos a ecuaciones de orden uno o dos. Para

resolverlas utilizamos el comando ode2:

ode2 (eqn, dvar, ivar)

Ejemplo 2.7 Resolver la siguiente ecuación diferencial y el problema de valor inicial asociado, represen-

tando alguna de sus soluciones:dxdt

+ 4x = et

( % i1) eq:’diff(x,t)+4*x= %eˆt;

ddt

x + 4x = %et (eq)

( % i2) sol:ode2(eq,x,t);

x = %e−4t

(%e5t

5+ %c

)(sol)

( % i3) sol:expand(sol);

x =%et

5+ %c %e−4t (sol)

( % i4) define(x(t),part(sol,2));

x(t) :=%et

5+ %c %e−4t ( % o4)

( % i6) cte:solve(at(sol,[x=x0,t=t0]), %c);

[ %c =5 %e4t0 x0 − %e5t0

5] (cte)

( % i7) fun:ev(sol,cte);

x =%e−4t

(5 %e4t0 x0 − %e5t0

)5

+%et

5(fun)

I En Maxima podemos hacerlo directamente con el comando ic1

( % i8) ic1(sol, t=t0, x=x0);

x =%e−4t

(5 %e4t0 x0 − %e5t0 + %e5t

)5

( % o8)

( % i9) define(x(t),part(fun,2));

x(t) :=%e−4t

(5 %e4t0 x0 − %e5t0

)5

+%et

5( % o9)

( % i10) wxdraw2d(explicit(at(x(t),x0=0),t,0,3),

explicit(at(x(t),x0=1),t,0,3),

explicit(at(x(t),x0=2),t,0,3),

explicit(at(x(t),x0=3),t,0,3))$

( % t10)

Página 21 PROYECTO MATECO 3.14 (complemento)

Page 26: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.2. SOLUCIÓN DE SISTEMAS UNIVARIANTES CON MAXIMA

Ejemplo 2.8 Resolver la siguiente ecuación diferencial y el problema de valor inicial asociado, represen-

tando alguna de sus soluciones:d2ydx2 + 2

dydx

+ 2y = 5

( % i2) eq:’diff(y,x,2)+2*’diff(y,x)+2*y=5$

sol:ode2(eq, y, x);

y = %e−x ( %k1 sin (x) + %k2 cos (x)) +52

(sol)

( % i4) define(y(x),part(sol,2));

y(x) := %e−x ( %k1 sin (x) + %k2 cos (x))+52

( % o3)

I Las representamos como funciones explícitas:

( % i4) wxdraw2d(explicit(at(y(x),[ %k1=0, %k2=0]),x,0,5),

explicit(at(y(x),[ %k1=0, %k2=1]),x,0,5),

explicit(at(y(x),[ %k1=2, %k2=0]),x,0,5),

explicit(at(y(x),[ %k1=3, %k2=1]),x,0,5))$( % t4)

( % i4) con1:at(sol,[x=0,y=y0]);

y0 = %k2 +52

(con1)( % i5) con2:at(diff(y(x),x),x=0)=s0;

%k1 − %k2 = s0 (con2)

( % i6) cte:solve([con1,con2],[ %k1, %k2]);

[[ %k1 =2y0 + 2s0 − 5

2, %k2 =

2y0 − 52

]] (cte)

( % i8) fun:ev(sol,cte)$

define(y(x),part(fun,2));

y(x) := %e−x

(sin (x) (2y0 + 2s0 − 5)

2+

cos (x) (2y0 − 5)2

)+

52

( % o8)

I En Maxima podemos hacerlo directamente con el comando ic2

( % i9) ic2(sol, x=0, y=y0,’diff(y,x)=s0);

y = %e−x

(sin (x) (2y0 + 2s0 − 5)

2+

cos (x) (2y0 − 5)2

)+

52

( % o9)

Ejercicio 2.9 Resolver las siguientes ecuaciones y los problemas de valor inicial asociados a ellas:

(a)dxdt

=tx2 (b)

dydx

=xy

+yx

(c)dydt

= 2y + 4t

(d) y′′ − 2y′ + y = sen(2t) (e) x′′(t) − x(t) = 2t + 1 (f) x′′(t) − x′(t) = t ♣

PROYECTO MATECO 3.14 (complemento) Página 22

Page 27: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

Ejercicio 2.10 Obtener la solución del problema de valor inicial correspondiente al modelo de crecimiento

maltusiano considerando un flujo de migración constante, m(t) = m ∀ t (ejemplo 2.2):

dpdt

= k p + m⇔ p′ − k p = m ♣

Ejercicio 2.11 Obtener la solución del problema de valor inicial correspondiente al modelo de crecimiento

determinado por la curva logística (ejemplo 2.4):

dpdt

= k p(a − p)

Ejercicio 2.12 La elasticidad de la demanda es una medida relativa de la respuesta de la demanda a los

cambios en el precio, ejemplo 1.15, y cuando es constante hablamos de funciones de elasticidad constante.

Se pide obtener la expresión general de una función de demanda de elasticidad constante. ♣

Ejercicio 2.13 (Capitalización continua) Si una cantidad de dinero C0 se invierte a un tanto de interés r

durante un número de años t el pago recibido en el tiempo t en capitalización compuesta es

P(t) = C0(1 + r)t.

I Si esta cantidad de dinero se invierte al mismo tanto de interés pero se capitalizan los intereses m

veces al año, el pago recibido en el tiempo t es

P(t) = C0

(1 +

rm

)m t.

I Su límite es el pago recibido si los intereses se capitalizan de forma continua en el tiempo:

P(t) = C0 lı́mn→∞

(1 +

rm

)mt= C0er t.

� Comprobar que el pago en capitalización continua responde a la ecuación diferencial P′ = rP y calcu-

lar el pago que se obtiene si añadimos un flujo constante de depósito de modo que P′ = rP + d. ♣

Ejercicio 2.14 La ley de la demanda establece que la demanda es inversamente proporcional al precio, de

forma que cuanto más alto es el precio menor es la demanda (práctica 1.15). La ley de la oferta establece

que la oferta es directamente proporcional al precio, de forma que cuanto más alto es el precio del producto

mayor es su oferta. La ley de la oferta y la demanda establece que la oferta y demanda de un bien dependen

del precio de mercado del bien y que este mercado está en equilibrio si la oferta iguala a la demanda para

cierto precio, precio de equilibrio.

Página 23 PROYECTO MATECO 3.14 (complemento)

Page 28: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.2. SOLUCIÓN DE SISTEMAS UNIVARIANTES CON MAXIMA

Si el precio de un bien está por debajo del precio de equilibrio la demanda supera a la oferta, ya que

los consumidores están dispuestos a pagar más, y, por tanto, el precio sube hasta que los consumidores

no estén dispuestos a comprar más. En la situación inversa, si el precio de un bien es mayor que el precio

de equilibrio la oferta supera a la demanda, ya que los consumidores no están dispuestos a comprar a ese

precio, y, por tanto, el precio baja hasta que se puede vender todo lo que se produce.

� En este modelo de oferta y demanda con ajuste continuo del precio se supone que la demanda y la

oferta dependen linealmente del precio:

qd = a − bp con a, b > 0 curva de precio demanda

qs = c + dp con c, d > 0 curva de precio oferta

b representa la sensibilidad de los demandantes al precio (pendiente de la curva negativa).

d representa la sensibilidad de los oferentes al precio (pendiente de la curva positiva).

a) Obtener la curva solución del precio si se considera que su variación es proporcional a la diferencia

entre oferta y demanda:dpdt

= α(qd − qs) con α > 0.

b) Representar la trayectoria frente al tiempo del precio, oferta y demanda para distintos precios iniciales

(con a = 2, c = 1, b = 1, d = 1 y α = 1). ♣

Práctica 4 Obtener la curva solución del precio si en el modelo de oferta y demanda con ajuste continuo

del precio del ejemplo 2.14 se considera que la cantidad demanda, además de depender del precio, también

depende de su tasa de cambio (representarla para a = 2, c = 1, b = 1, d = 1, α = 1 y h = ±0.25):

qd = a − bp + hdpdt

con b < 0 y h , 0 ♣

Práctica 5 Consideramos una función de utilidad monetaria con al menos dos derivadas continuas corres-

pondiente a un agente con aversión al riesgo, U(w), por tanto, U′(w) > 0 y U′′(w) < 0 ()ejercicio1).

Para medir el grado de aversión al riesgo del agente se utilizan dos medidas:

I el coeficiente de aversión absoluta al riesgo (cambio porcentual de la utilidad marginal):

sa(w) = −u′′(w)/u′(w),

I coeficiente de aversión relativa al riesgo (variación en la utilidad marginal ante variaciones pro-

porcionales de la riqueza):

sr(w) = −wu′′(w)/u′(w),

PROYECTO MATECO 3.14 (complemento) Página 24

Page 29: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

Estas medidas permiten caracterizar dos tipos de funciones de utilidad como funciones de utilidad con

aversión absoluta al riesgo constante o funciones CARA (constant absolute risk aversion) y como funciones

de utilidad con aversión relativa al riesgo constante o funciones CRRA (constant relative risk aversion).

� Obtener la expresión general de ambos tipos de funciones. ♣

2.3. Solución de sistemas multivariantes con Maxima

Además de resolver sistemas de ecuaciones de primer orden resolveremos ecuaciones de orden mayor

que dos transformándolas en sistemas de primer orden. Para resolverlos utilizamos el comando:

desolve ([eqn_1, ..., eqn_n], [x_1, ..., x_n]

I Para utilizarlo tenemos que especificar la dependencia funcional entre las variables.

I En un problema de valor inicial hay que indicar antes las condiciones iniciales con el comando:

atvalue (expr, [x_1 = a_1, ..., x_m = a_m], c)

Ejemplo 2.15 Resolver el siguiente sistema y el correspondiente problema de valor inicial:

x′ = −2x − 2y

y′ = 2x − 2y

( % i2) eq11: ’diff(x,t) =-2*x-2*y$

eq1:sublis([x=x(t),y=y(t)],eq11);

ddt

x(t) = −2 y(t) − 2 x(t) (eq1)

( % i4) eq22: ’diff(y,t) =2*x-2*y$

eq2:sublis([x=x(t),y=y(t)],eq22);

ddt

y(t) = 2 x(t) − 2 y(t) (eq2)

( % i5) atvalue(x(t),[t=0],x0);x0 ( % o5)

( % i6) atvalue(y(t),[t=0],y0);y0 ( % o6)

I Resolvemos la ecuación y definimos las variables de estado

( % i9) sol:desolve([eq1, eq2], [x(t),y(t)])$

define(x(t),part(sol,1,2));

define(y(t),part(sol,2,2));

x(t) := %e−2t

(sin (2t) (2 (2x0 − 2y0) − 4x0)

4+ cos (2t)x0

)( % o8)

y(t) := %e−2t

(sin (2t) (2 (2y0 + 2x0) − 4y0)

4+ cos (2t)y0

)( % o9)

Página 25 PROYECTO MATECO 3.14 (complemento)

Page 30: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.3. SOLUCIÓN DE SISTEMAS MULTIVARIANTES CON MAXIMA

I Para analizar el sistema gráficamente podemos representar x(t) e y(t) para varias condiciones iniciales

(gráficos % t14 y % t19) o representarlas simultáneamente para una condición inicial concreta ( % t22).

( % i14) graf1:explicit(at(x(t),[x0=0,y0=0]),t,0,5)$

graf2:explicit(at(x(t),[x0=2,y0=0]),t,0,5)$

graf3:explicit(at(x(t),[x0=0,y0=2]),t,0,5)$

graf4:explicit(at(x(t),[x0=2,y0=2]),t,0,5)$ ( % t14)wxdraw2d(graf1,color=red,graf2,color=green, graf3,color=yellow,graf4)$

( % i19) graf1:explicit(at(y(t),[x0=0,y0=0]),t,0,5)$

graf2:explicit(at(y(t),[x0=2,y0=0]),t,0,5)$

graf3:explicit(at(y(t),[x0=0,y0=2]),t,0,5)$

graf4:explicit(at(y(t),[x0=2,y0=2]),t,0,5)$ ( % t19)wxdraw2d(graf1,color=red,graf2,color=green, graf3,color=yellow,graf4)$

( % i22) graf1:explicit(at(x(t),[x0=2,y0=2]),t,0,5)$

graf2:explicit(at(y(t),[x0=2,y0=2]),t,0,5)$

wxdraw2d(graf1,color=red,graf2,color=green)$ ( % t22)

I Otra posibilidad es representar la solución como puntos en el espacio y estudiar su recorrido frente

al tiempo (t, x(t), y(t))), gráfico % t27, o representarla como puntos en el plano que sólo muestran los va-

lores de las variables de estado sin incluir el tiempo (x(t), y(t))), gráfico % t32 (en ambos casos para varias

condiciones iniciales).

( % i27) graf1:at(parametric(t,x(t),y(t),t,0,5),[x0=0,y0=0])$

graf2:at(parametric(t,x(t),y(t),t,0,5),[x0=2,y0=0])$

graf3:at(parametric(t,x(t),y(t),t,0,5),[x0=0,y0=2])$

graf4:at(parametric(t,x(t),y(t),t,0,5),[x0=2,y0=2])$ ( % t27)wxdraw3d(graf1,color=red,graf2,color=green,graf3,color=yellow,graf4)$

( % i32) graf1:at(parametric(x(t),y(t),t,0,5),[x0=0,y0=0])$

graf2:at(parametric(x(t),y(t),t,0,5),[x0=2,y0=0])$

graf3:at(parametric(x(t),y(t),t,0,5),[x0=0,y0=2])$

graf4:at(parametric(x(t),y(t),t,0,5),[x0=2,y0=2])$ ( % t32)wxdraw2d(graf1,color=red,graf2,color=green, graf3,color=yellow,graf4)$

PROYECTO MATECO 3.14 (complemento) Página 26

Page 31: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

En el gráfico % t27 representamos en el espacio las curvas (t, x(t), y(t)) correspondientes a varias solu-

ciones, que reciben el nombre de curvas integrales. En el gráfico % t32 representamos en el plano XY o

plano de fases las curvas (x(t), y(t)) correspondientes a las mismas soluciones descritas paramétricamente

en función del tiempo, que reciben el nombre de órbitas o trayectorias y son la proyección de las curvas

integrales sobre el plano de fases (cada uno de sus puntos determina el estado del sistema).

Práctica 6 (antecedentes) En la práctica 2.14 consideramos que la demanda y la oferta de un bien depen-

dían de su precio. Aquí vamos a considerar que existen dos bienes en el mercado cuya oferta y demanda

dependen del precio de ambos bienes, p1 y p2 (el mercado está en equilibrio si para ambos bienes su oferta

iguala a su demanda para ciertos precios).

• Las suposiciones de este modelo de oferta y demanda con ajuste continuo del precio son

La dependencia de la oferta y la demanda respecto a ambos precios es lineal

qd1 = a − bp1 + cp2 qd

2 = a + cp1 − bp2 con a > 0

qs1 = d + ep1 + f p2 qs

2 = d + f p1 + ep2 con d > 0

la variación del precio de un bien es proporcional a la diferencia entre la oferta y demanda del bien:

dp1

dt= α(qd

1 − qs1) con α > 0,

dp2

dt= β(qd

2 − qs2) con β > 0.

• Para simplificar el model también hemos supuesto

las tasas a la que varían la oferta y la demanda con respecto al precio del propio bien son las mismas

para ambos bienes (−b ≤ 0 y e ≥ 0)

∂ qd1

∂ p1(p1, p2) =

∂ qd2

∂ p2(p1, p2) = −b

∂ qs1

∂ p1(p1, p2) =

∂ qs2

∂ p2(p1, p2) = e

las tasas a las que varían la oferta y la demanda con respecto al precio del otro bien son las misma

para ambos bienes (el signo depende de la relación entre los bienes)

∂ qd1

∂ p2(p1, p2) =

∂ qd2

∂ p1(p1, p2) = c

∂ qs1

∂ p2(p1, p2) =

∂ qs2

∂ p1(p1, p2) = f

� Estudiar el caso particular a = 2, b = 1, c = 3/4, d = 1, e = 1/2, f = 1/2, α = 3/4 y β = 1/2. ♣

Página 27 PROYECTO MATECO 3.14 (complemento)

Page 32: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.4. ESTUDIO GRÁFICO DE SISTEMAS CON MAXIMA

2.4. Estudio gráfico de sistemas con Maxima

Aunque hay sistemas dinámicos que no se pueden resolver, existen distintos tipos de gráficas que se

basan en las propiedades de la función que define el movimiento del sistema y permiten estudiarlos sin

necesidad de encontrar su solución. Aunque solo es posible dibujarlas en un máximo de tres dimensiones,

algunos conceptos se pueden extender a dimensiones superiores. En particular, en los sistemas autónomos

tenemos dos gráficos que tiene sentido para cualquier dimensión: los campos de direcciones, que asocia

a cada punto del espacio de fases un vector que índica la dirección de avance de la curva solución, y los

mapas de fases, correspondientes al dibujo en el espacio de fases de las trayectorias de las soluciones.

� El campo de direcciones de un sistema dinámico de primer orden autónomo, x′ = f (x), es el conjunto

de vectores gradiente de la función f (x) en los distintos puntos del dominio.

Los gradientes de la función f (x) en los distintos puntos del dominio son tangentes a la trayectoria que

pasa por el punto e indican la dirección de avance de la curva solución. Dibujando un número suficiente de

vectores, el campo de direcciones permite adivinar la forma que tienen las soluciones del sistema (si hay

parámetros tenemos que darles valores). En nuestro caso vamos a considerar un sistema con una variable,

que no tiene por qué ser autónomo, y un sistema con dos variables que sí tiene que serlo.

I Los campos de direcciones de un sistema los construimos en Maxima utilizando el comando drawdf,

que además permite incluir soluciones obtenidas por métodos numéricos (hay que cargarlo previamente):

drawdf (dydx, ...options and objects...)

Ejemplo 2.16 Construir el campo de direcciones del modelo maltusiano de población (ejemplo 2.2).

( % i2) load("drawdf")$

( % i4) /* k=0.25*/ wxdrawdf(0.25*p,[t,0,5], [p,0,200],

solns_at([0,25],[0,50],[0,75],[0,100]))$

/* k=-0.25*/ wxdrawdf(-0.25*p,[t,0,5], [p,0,200],

solns_at([0,50],[0,100],[0,150],[0,200]))$( % t13 % t4)

Ejemplo 2.17 Construir el campo de direcciones del sistema dinámico del ejemplo 2.15:

( % i34) load("drawdf")$

wxdrawdf([-2*x-2*y, 2*x-2*y],[x,-5,5],[y,-5,5],

color=blue, soln_at(0,0), color=red,soln_at(2,0),

color=green,soln_at(0,2), color=yellow, soln_at(2,2))$

( % t34)

PROYECTO MATECO 3.14 (complemento) Página 28

Page 33: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 2. SISTEMAS DINÁMICOS CONTINUOS Y ECUACIONES DIFERENCIALES

Ejercicio 2.18 Representar el campo de direcciones del modelo de crecimiento maltusiano en el que se

introduce un flujo de migración constante (ejemplo 2.2). ♣

Ejercicio 2.19 Representar el campo de direcciones del modelo de crecimiento correspondiente a la curva

logística (ejemplo 2.4). ♣

� El mapa de fases de un sistema autónomo es el conjunto de todas las trayectorias del sistema sobre el

espacio de fases y también recibe el nombre de retrato fase o diagrama de fases (aunque podemos considerar

cualquier número de variables su representación gráfica solo es posible con tres o menos).

I El mapa de fases solo tiene sentido en los sistemas autónomos y en él cada una de las trayectorias

corresponde a varias soluciones en la que los puntos de la trayectoria son alcanzados para diferentes valores

del tiempo. De forma que si (x(t), y(t)) una trayectoria del sistema también es una solución cualquier otra

parametrización suya (x(t + k), y(t + k)) ∀ k ∈ <.

I Por cada punto del espacio de fases pasa solo una trayectoria, de forma que si una trayectoria pasa

dos veces por el mismo punto tiene que ser una curva cerrada simple y corresponde a una solución periódica

con x(t + k) = x(t) e y(t + k) = y(t) para cierto k.

I Para hacerse una idea del diagrama de fases sin resolver el sistema podemos representar el campo de

direcciones y alguna de sus trayectorias obtenidas por métodos numéricos.

I Otra posibilidad es eliminar el tiempo como parámetro, utilizando que dydx =

dy/dtdx/dt , y escribirlo como

una ecuación diferencial ordinaria, que recibe el nombre de ecuación de las trayectorias:

dxdy

=g(x, y)f (x, y)

Las curvas solución del sistema y de la ecuación de las trayectorias son las mismas, salvo que en el

sistema tienen una orientación inducida por el recorrido del tiempo y en la ecuación no. Por tanto, si se

conocen la soluciones de la ecuación de las trayectorias para conocer las soluciones del sistema sólo queda

determinar cuál es su orientación (por ejemplo, mediante el campo de direcciones).

Ejercicio 2.20 Resolver el siguiente sistema y la correspondiente ecuación de sus trayectorias. Considerar

en ambos casos el problema de valores iniciales con x(0) = 2 e y(0) = 3 y comparar sus soluciones

x′ = 2x

y′ = y

Página 29 PROYECTO MATECO 3.14 (complemento)

Page 34: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

2.4. ESTUDIO GRÁFICO DE SISTEMAS CON MAXIMA

Ejercicio 2.21 Resolver los siguientes sistemas y esbozar su mapa de fases:

(a)

x′ = 2x − y

y′ = 2x(b)

x′ = 3x − 2y

y′ = 2x − 2y(c)

x′ = y

y′ = −x

Ejemplo 2.22 (Modelo presa-depredador) En este modelo se considera un hábitat cerrado en el que con-

viven una presa y su depredador con poblaciones x(t) e y(t) respectivamente.

La presa se alimenta de un recurso abundante en el hábitat, de forma que si no hubiera depredadores el

número de presas aumentaría proporcionalmente a la población a una tasa constante, αx > 0 (crecimiento

exponencial)

x′ = αx x =⇒ x(t) = Ceαx t.

Por otra parte, el depredador solo se alimenta de las presas, de forma que si no hubiera presas la población

de depredadores disminuiría a una tasa constante, −αy > 0 (disminución exponencial)

y′ = −αy y =⇒ y(t) = C′eαy t

La interacción entre presas y depredadores hace que cuantas más veces se encuentren ambas especies

mayor será el número de depredadores y menor el de presas. Así, se considera que la tasa de variación de

las presas disminuye con respecto a la que tendría si no hubiera depredadores

x′ = αx x − βxxy con βy > 0

y la tasa de variación de los depredadores aumenta con respecto a la que tendría si no hubiera presas

y′ = −αy y + βyxy con βx > 0

El término de segundo grado que modeliza este fenómeno hace que tengamos un sistema de ecuaciones

de primer orden con dos variables no lineal: x′ = αx x − βxxy

y′ = −αy y + βyxy ♣

PROYECTO MATECO 3.14 (complemento) Página 30

Page 35: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Tema 3

Sistemas continuos autónomos y estabilidad

3.1. Conceptos generales

Estamos interesados en los puntos de equilibrio de un sistema dinámico autónomo, x′ = f (x), corres-

pondientes a soluciones constantes en el tiempo con x(t) = x∗ ∀ t ∈ R. Al ser la solución constante, en un

punto de equilibrio se anulan las derivadas de las soluciones, ∇ x∗(t) = θ, y, por tanto, se verifica f (x∗) = θ.

Esta ecuación recibe el nombre de ecuación de equilibrio del sistema y sus soluciones se pueden encontrar

sin necesidad de resolver el sistema de ecuaciones.

Al determinar si un sistema alcanza algún tipo de equilibrio con el transcurso del tiempo, una cuestión

importante es saber si los pequeños cambios en las condiciones iniciales tendrá influencia en el comporta-

miento de la solución a largo plazo. En general, un sistema es estable si para valores grandes de t el efecto

de pequeños cambios se disipa y el sistema alcanza un equilibrio y, por el contrario, si cambios pequeños

llevan a diferencias significativas en el comportamiento de las soluciones el sistema es inestable.

Ejemplo 3.1 Si en el modelo de crecimiento correspondiente a la curva logística, ejemplo 2.4, igualamos

la ecuación de movimiento a cero obtenemos dos soluciones constantes

dpdt

= k p(a − p) = 0 =⇒

p = 0

p = a

La primera solución, p(t) = 0, corresponde a la condición inicial p(t0) = 0 y la segunda, p(t) = a,

a la condición inicial p(t0) = a. Ambas tienen en común que no se producen cambios en la población

(soluciones de equilibrio).

31

Page 36: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

3.1. CONCEPTOS GENERALES

Podemos observar en el campo de direcciones que las soluciones con

un valor inicial p0 > 0 se alejan del valor de equilibrio p∗1 = 0 (equi-

librio inestable). Estas soluciones, tanto para valores iniciales meno-

res que a como mayores, se aproximan al valor de equilibrio p∗2 = a

(equilibrio estable). ♣

Los distintos tipos de puntos de equilibrio se basan en el comportamiento de las trayectorias de las

soluciones en el espacio de fases. De este modo, cuando cualquier trayectoria que pasa cerca del punto

de equilibrio se mantiene cerca suyo, el punto es un punto de equilibrio estable y en caso contrario un

punto de equilibrio inestable. Cuando es estable y las trayectorias que pasan cerca suya se aproximan a él

a medida que avanza el tiempo decimos que es un punto de equilibrio asintóticamente estable.

Si sólo hay un punto crítico, este punto es o bien globalmente estable y para cada valor inicial distinto

al punto crítico el sistema converge a él, o bien globalmente inestable y para cada valor inicial distinto al

punto crítico el sistema se aleja de él. Cuando hay más de uno hablamos de estabilidad e inestabilidad

local. El mayor conjunto en el que las trayectorias que comienzan en él convergen al punto de equilibrio

recibe el nombre de cuenca de atracción (si es globalmente estable su cuenca de atracción es todo el plano).

Ejemplo 3.2 En el modelo de crecimiento correspondiente a la curva logística, ejemplos 2.4 y 3.1, la

estabilidad es local pues hay dos soluciones de equilibrio, p(t) = 0 (inestable) y p(t) = a (asintóticamente

estable). La cuenca de atracción de la solución p = a es todo el plano menos el origen. ♣

Ejemplo 3.3 Obtener las soluciones de equilibrio del sistema x′ = x2 y estudiar su estabilidad resolviendo

la ecuación y representando sus soluciones. ♣

Práctica 7 (modelo de difusión de Bass) Describe el proceso de introducción de nuevos productos en un

mercado, cuyo nivel de saturación se denota por m, teniendo en cuenta que en el número de adoptantes

de un nuevo producto, x(t), depende tanto del número de consumidores que ya lo han adoptado, efecto de

imitación, como del numero de consumidores potenciales que no lo han hecho, efecto de innovación

x′ = (p + q x)(m − x) p y q coeficientes de innovación e imitación resp.

� Obtener el punto de equilibrio considerando que p y q son positivos. Estudiar si es estable resolviendo

la ecuación y representando varias trayectorias para valores concretos de los parámetros. ♣

PROYECTO MATECO 3.14 (complemento) Página 32

Page 37: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 3. SISTEMAS CONTINUOS AUTÓNOMOS Y ESTABILIDAD

3.2. Estabilidad de los sistemas univariantes de primer orden

Un caso en el que siempre es posible obtener un retrato fase significativo corresponde a un sistema

dinámico homogéneo con una única variable de estado:

x′(t) = f (x)

En este caso, el espacio de fases es una línea (línea de fases) y en ella un punto crítico corresponde a

una solución constante cuya trayectoría define un único punto en la línea de fases.

Para construir el retrato fase se representan los puntos críticos sobre la línea de fases. Como la función

solo puede cambiar de signo en los puntos críticos y el valor de la derivada de una solución x(t) coincide

con el valor de la función f (x), en cada uno de los intervalos que definen los puntos críticos la derivada de

la solución tendrá el mismo signo, que se calcula considerando un punto intermedio:

Si la función es positiva la derivada también lo es y la solución es creciente. En este caso, representa-

mos un triángulo con la punta a la derecha indicando que los valores de la solución crecen

Si la función es negativa la derivada también lo es y la solución es decreciente. En este caso, repre-

sentamos un triángulo con la punta a la izquierda indicando que los valores de la solución decrecen.

De este modo podemos distinguir los distintos tipos de puntos críticos observando la dirección de las

flechas:

atractor Repulsor Atractor-repulsor Repulsor-atractor

Dependiendo del signo de la función tenemos:

El punto crítico es un atractor si f (x) > 0 para x < x∗ y f (x) < 0 para x > x∗.

El punto crítico es un repulsor si f (x) < 0 para x < x∗ y f (x) > 0 para x > x∗.

El punto crítico es una derivación si f (x) > 0 para x , x∗ (atractor–repulsor) o si f (x) < 0 para

x , x∗ (repulsor–atractor). ♣

Página 33 PROYECTO MATECO 3.14 (complemento)

Page 38: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

3.2. ESTABILIDAD DE LOS SISTEMAS UNIVARIANTES DE PRIMER ORDEN

Ejemplo 3.4 En el caso de la ecuación logística f (p) = kp(a − p), ejemplo 2.4, sus puntos críticos son

p∗ = 0 y p∗ = a. Como k y a son positivos la función es positiva si p < a y negativa si p > a.

Para 0 < p < a tenemos p′(t) = f (p) > 0, con lo que la población crece y

para p > a tenemos p′(t) = f (p) < 0, con lo que la población decrece. Esto

lleva a que las trayectorias se alejen del valor crítico p∗ = 0 y se acerquen

al valor crítico p∗ = a (incluimos la función f (p)). ♣

Observación En este tipo de gráficos no merece la pena utilizar Maxima, ya que, al no haber un comando

que lo haga directamente, se construye atendiendo al tipo de ecuación.

� Podemos observar que en un entorno de un atractor la función es decreciente y en el de un repulsor

creciente. Por tanto, podemos distinguir el tipo de punto atendiendo al signo de la derivada de forma que:

Si f ′(x∗) < 0 el punto de equilibrio x∗ es asintóticamente estable.

Si f ′(x∗) > 0 el punto de equilibrio x∗ es inestable.

Ejercicio 3.5 Estudiar las soluciones de equilibrio y su estabilidad en los siguientes sistemas dinámicos

sin resolver las ecuaciones:

(a) x′ = x2 + 2x − 15 (b) x′ = x2 − 1 (c) x′ = x2

Práctica 8 (Modelo de Vidale y Wolfe sobre publicidad) Este modelo describe la respuesta de las ventas

de un determinado producto, x(t), al gasto en publicidad que la empresa realiza, u(t), partiendo de unas

ventas x0 con 0 ≤ x0 ≤ s donde s es el nivel de saturación del mercado.

Se supone que la tasa a la que varían las ventas responde a dos factores. Por una parte, está el efecto

de desgaste en la evolución de las ventas que hace que cuando no hay publicidad disminuyan a una tasa

proporcional al volumen de venta y, por otra, el efecto de la publicidad que hace que las ventas aumenten

a una tasa proporcional al producto del gasto publicitario por la diferencia entre el nivel de saturación y

las ventas. La combinación de los factores hace que la ecuación de movimiento del sistema quede:

x′ = −λ x +rsu(t)(s − x)

donde λ > 0 es el coeficiente de desgaste y r ∈ (0, 1] el coeficiente de efectividad de la publicidad.

� Obtener el punto de equilibrio del sistema y estudiar su estabilidad mediante el mapa de fases supo-

niendo que el gasto en publicidad es constante, u(t) = u. ♣

PROYECTO MATECO 3.14 (complemento) Página 34

Page 39: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 3. SISTEMAS CONTINUOS AUTÓNOMOS Y ESTABILIDAD

3.3. Estabilidad de los sistemas multivariantes de primer orden

Como las ideas a desarrollar se extrapolan a ordenes superiores consideramos un sistema lineal plano

con coeficientes constantes con dos ecuaciones y dos incógnitas en el que el origen es el único punto de

equilibrio, cuya estabilidad depende de los autovalores de la matriz, λ1 y λ2, que van a ser distintos de cero

(suponemos det(A) , 0): x′ = a11x + a12y

y′ = a21x + a22y

I λ1 y λ2 autovalores reales distintos con autovectores v1 y v2, con solución X(t) = c1eλ1tv1 + c2eλ2tv2

I.I λ1 < λ2 < 0: Las soluciones convergen y el sistema es estable (nodo atractor de dos tangentes).

I.II λ1 < 0 < λ2: Unas soluciones convergen y otras no por lo que es inestable (silla hiperbólica)

I.III 0 < λ1 < λ2:Las soluciones divergen y el sistema es inestable (nodo repulsor de dos tangentes).

II λ1 = λ2 = λ autovalor real doble con dos autovectores asociados al autovalor linealmente independien-

tes, v1 y v2 (diagonalizable), cuya solución general es X(t) = c1eλtv1 + c2eλtv2

II.I λ < 0 las soluciones convergen y el sistema es estable (nodo estelar atractor.)

II.II λ > 0 las soluciones divergen y el sistema es inestable (nodo estelar repulsor).

III λ1 = λ2 = λ autovalor real doble con solo un autovector asociado, v1, y un autovector generalizado de

orden 2, v2 (no diagonalizable), cuya solución general es X(t) = c1eλtv1 + c2(eλtv2 + teλt(A − λI)v2)

III.I λ < 0 las soluciones convergen y el sistema es estable (nodo atractor de una tangente)

III.II λ > 0 las soluciones divergen y el sistema es inestable (nodo repulsor de una tangente)

IV λi = α±βi autovalores complejos conjugados con dos autovectores asociados conjugados, vi = b1±b2i,

cuya solución general es X(t) = c1eαt [b1 cos(βt) − b2 sen(βt)]+ c2eαt [b2 cos(βt) + b1 sen(βt)

]IV.I a < 0: las soluciones convergen en espiral y es asintóticamente estable (foco atractor o pozo).

IV.II a = 0: Las soluciones son curvas cerradas y es estable pero no asintóticamente (centro).

IV.III a > 0: las soluciones divergen en espiral y el sistema es inestable (foco repulsor o fuente). ♣

Así, si los autovalores de la matriz A son números reales el diagrama de fases es nodal y si son números

complejos conjugados el diagrama de fase es espiral. En un diagrama de fase nodal las trayectorias se

Página 35 PROYECTO MATECO 3.14 (complemento)

Page 40: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

3.3. ESTABILIDAD DE LOS SISTEMAS MULTIVARIANTES DE PRIMER ORDEN

acercan o se alejan del punto de equilibrio tangencialmente a las rectas invariantes y cuando todas se acercan

este es un atractor (nodo estable), cuando todas se alejan es un repulsor (nodo inestable) y cuando unas

se acercan y otras se alejan es un punto de silla (nodo inestable). En un diagrama de fase en espiral las

trayectorias describen curvas en espiral que con respecto al punto de equilibrio se acercan (pozo), alejan

(fuente) o describen círculos cerrados (centro). Respecto a la estabilidad, si todas las raices tienen parte

real negativa el sistema es asintóticamente estable y si al menos una raíz tiene parte real positiva el sistema

es inestable. Si hay autovalores con parte real negativa y positiva hay soluciones que convergen (variedad

estable), y soluciones que divergen (variedad inestable).

Ejercicio 3.6 Determinar el punto de equilibrio de los siguientes sistemas y estudiar su estabilidad anali-

zando sus desviaciones con respecto al punto de equilibrio:

(a)

x′ = x + y

y′ = 4x + y(b)

x′ = x + y

y′ = x − y(c)

x′ = x

y′ = 2x + y(d)

x′ = x + y

y′ = −x + y

(e)

x′ = −2x + y + 1

y′ = x − 2y − 1(f)

x′ = 3x − 2y − 2

y′ = 2x − 2y + 1(g)

x′ = 2x − 2

y′ = 2y + 2(h)

x′ = 3x + 5y + 1

y′ = −5x − 3y

Práctica 9 (antecedentes) La matriz tecnológica de un sistema económico dividido en n sectores produc-

tivos representa las interacciones entre los distintos sectores. Sus elementos representan el valor de la

cantidad necesaria del bien i−ésimo para producir el bien j−ésimo por valor de una unidad monetaria, se

denotan por ai, j y reciben el nombre de coeficientes técnicos. Si los bienes producidos por el sector i que no

entran de nuevo en el sistema productivo se dedican a satisfacer una demanda final, di, establece una rela-

ción implícita entre los vector de producción y demanda (X(t) = (X1(t), . . . , Xn(t)) y d(t) = (d1(t), . . . , dn(t)))

X(t) = A · X(t) + d(t)

� Estudiar la estabilidad de los puntos de equilibrio del siguiente sistema dinámico en el que se considera

que la producción de los distintos bienes se ajusta de manera proporcional al exceso de demanda

X′(t) = A · X(t) + d(t) − X(t)

donde la matriz tecnológica y el vector de demanda son

A =

0.3 0.4

0.3 0.2

d(t) =

100

50

PROYECTO MATECO 3.14 (complemento) Página 36

Page 41: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 3. SISTEMAS CONTINUOS AUTÓNOMOS Y ESTABILIDAD

3.4. Estabilidad de los sistemas univariantes de orden superior

En los sistemas lineales con coeficientes constantes el problema de valor inicial tiene solución única para

cada conjunto de n condiciones iniciales (una condición para la variable y n − 1 condiciones para sus n − 1

primeras derivadas). En este caso la ecuación homogénea asociada tiene como único punto de equilibrio

el origen y cada solución es una combinación lineal de n soluciones suyas linealmente independientes,

sistema fundamental de soluciones. La estabilidad depende del tipo de funciones del sistema fundamental

y, a su vez, el tipo de funciones depende del tipo de soluciones de la ecuación característica, que se obtiene

al sustituir la derivada enésima de la función (xn)) por la potencia enésima de una nueva incógnita (λn). Los

distintos casos que se presentan son similares a los que aparecen en los sistemas lineales de primer orden,

por lo que no los veremos explícitamente. El resultado principal es que si todas las raices tienen parte real

negativa el sistema es asintóticamente estable y si al menos una raíz tiene parte real positiva el sistema es

inestable (si una raíz es cero solo puede ser estable si es simple). Cuando hay raíces con parte real negativa

y positiva hay soluciones que divergen y soluciones que convergen, recibiendo el conjunto de soluciones

que convergen el nombre de variedad estable.

Ejercicio 3.7 Estudiar la estabilidad del punto de equilibrio de los siguientes sistemas dinámicos mediante

el cálculo de sus raíces características y representar alguna de sus soluciones:

(a)d2xdt2 − 3

dxdt

+ 2x = 0 (b)d2xdt2 +

dxdt− 2x = 0 (c)

d2xdt2 + 3

dxdt

+ 2x = 0

(d)d2xdt2 + 2

dxdt

+ x = 0 (e)d2xdt2 +

dxdt

= 0 (f)d2xdt2 = 0

(g)d2xdt2 − 6

dxdt

+ 25x = 0 (h)d2xdt2 + 6

dxdt

+ 25x = 0 (i)d2xdt2 + x = 0

Práctica 10 (Modelo de Dresch de formación de precios) En este modelo la tasa de cambio de los precios

es proporcional al total acumulado de los excesos de demanda pasados

p′(t) = a∫ t

−∞[D(p(s)) − S (p(s))]ds con a > 0

donde al derivar con respecto a t obtenemos una ecuación diferencial de segundo orden

p′′(t) = a[D(p(t)) − S (p(t))]

� Estudiar la estabilidad del modelo considerando que tanto la demanda como la oferta dependen lineal-

mente del precio, D(t) = a − bp(t) y S (t) = c + dp(t). ♣

Página 37 PROYECTO MATECO 3.14 (complemento)

Page 42: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El
Page 43: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Tema 4

Sistemas dinámicos discretos y ecuaciones en

diferencias

4.1. Conceptos generales

Un sistema dinámico discreto está formado por un conjunto de elementos en interacción que evolu-

cionan con el tiempo, que solo toma valores enteros (t = 0, 1, 2, . . .). Al igual que en el caso continuo, la

situación del sistema en cada instante, estado del sistema, está descrita por distintas variables de estado y

se modela mediante relaciones recursivas entre valores de las variables, ecuaciones en diferencias finitas,

que pueden incluir parámetros para ajustarlas a diferentes casos. Si solo tenemos una variable los valores

de las variables forman una sucesión numérica {x(t)}, que suele representarse con los valores del tiempo en

forma de subíndice, {xt} y si tenemos más de una sus valores forman una sucesión vectorial que se repre-

senta de la misma manera considerando que xt es un vector. El sistema es lineal si todas las ecuaciones son

lineales. En todos los casos, el orden del sistema es la mayor diferencia entre los subíndices temporales

que aparecen en las ecuaciones.

Ejemplo 4.1 (Modelo maltusiano de población en tiempo discreto) Se supone que la población en el mo-

mento t, p(t) = pt, crece de una generación a otra a una la tasa constante, k, de forma que el incremento

de la población en el periodo siguiente, 4pt+1 = pt+1 − pt, es proporcional a la población en este momento

(sistema lineal de orden uno):

4pt+1 = kpt ⇐⇒ pt+1 − pt = kpt ⇐⇒ pt+1 = (1 + k)pt,

de esta forma la variable de mayor subíndice temporal aparece despejada y decimos que está definido de

modo recursivo. ♣.

39

Page 44: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.1. CONCEPTOS GENERALES

En un sistema definido de modo recursivo las variables de estado dependen de sus valores anteriores

mediante una regla que relaciona su valor actual con sus valores pasados, de forma que las variables de

mayor subíndice temporal aparecen despejadas en el primer miembro según una función que es vectorial si

hay más de una variable (consideramos solo sistemas con el mismo número de variables que de ecuaciones):

xt+n+1 = f (t, xt, xt+1, . . . , xt+n)

Ejemplo 4.2 Determinar las características de los siguientes sistemas:

(a)4yt+1 = 3yt − 3 (b) yt+1 = 2yt (1 − yt) (c) yt+1 = tyt

(d) yt+1 = yt + 3 (e) yt = yt−1 + 3 (f) ayt+2 + byt+1 + cyt = gt

(g)

xt+1 = xt + yt

yt+1 = 4xt + yt

(h)

xt+1 = xtyt

yt+1 = xt − t2(i)

xt+1 = xt

yt+1 = y2t

Una función es una solución de la ecuación si su sustitución la transforma en una identidad. Esta fun-

ción expresa xt en función de t y puede depender de los valores iniciales de xt, que reciben el nombre de

condiciones iniciales, pero no de otros valores anteriores, ya que nos tiene que informar de la dependencia

de xt del tiempo (no puede incluir retardos de la propia incógnita). La solución general es el conjunto de

todas sus soluciones y tiene tantos parámetros como orden tiene la ecuación, de forma que podemos ob-

tener las distintas soluciones particulares mediante la determinación de estos parámetros a partir de unas

condiciones iniciales.

En sistema dinámico discreto la ecuación recursiva permite calcular los valores de las variables cuando

conocemos sus valores anteriores y en un problema de valor inicial cada solución define a partir de las

condiciones iniciales una sucesión de puntos que recibe el nombre de trayectoria u órbita (cuando el

sistema es autónomo el espacio en el que toman valores las variables de estado recibe el nombre de espacio

de fases). En particular, en un sistema de primer orden podemos calcular una órbita concreta iterando a

partir de un único valor inicial x0. Si el sistema es autónomo esta órbita es x0, f (x0), f ( f (x0)), . . .; que

escribimos como { f n(x0)}, con f n(x0) = f ◦ · · ·n) ◦ f (x0).

Ejemplo 4.3 En el modelo maltusiano de población en tiempo discreto, ejemplo 4.1, podemos obtener la

solución por iteración del valor de la población inicial, p0 partiendo de la ecuación en forma recursiva,

pt+1 = (1 + k)pt:

p0, p1 = (1 + k) p0 =⇒ p2 = (1 + k) p1 = (1 + k)2 p0 =⇒ . . . =⇒ pt = (1 + k)t p0

La conclusión es la misma que en el modelo en tiempo continuo. Así, para k > 0 la población crece de

una generación a otra exponencialmente, para k = 0 el tamaño de la población se mantiene constante y

para k < 0 la población decrece y se extingue a largo plazo. ♣

PROYECTO MATECO 3.14 (complemento) Página 40

Page 45: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

4.2. Solución de sistemas discretos con Maxima

El problema de obtener una solución de un sistema discreto en forma recursiva se puede abordar partien-

do de las condiciones iniciales y aplicar la regla de recursión de forma sucesiva para obtener los siguientes

términos y calcular o deducir la solución general (se puede hacer con una o varias variables). Además,

si el sistema es autónomo, este método permite seguir la trayectoria de una solución en el plano de fases

partiendo de un valor inicial concreto.

( % i1) p[0]:p0;

p0 ( % o1)

( % i2) p[t]:=(1+k)*p[t-1];

pt := (1 + k) pt−1 ( % o2)

( % i3) p[5];

(k + 1)5 p0 ( % o3)

( % i6) makelist([t,p[t]],t,0,5)$

at( %,[p0=2,k=0.5])$

wxdraw2d(points( %))$( % t6)

Ejemplo 4.4 (utilizamos la letra n para el tiempo comenzando en n = 1)

Una progresión aritmética es una sucesión de números tales que la diferencia de dos términos con-

secutivos (diferencia) es constante y corresponde a la ecuación en diferencias

at+1 − at = d

cuya solución se puede obtener por iteración de la condición inicial

a1, a2 = a1 + d =⇒ a3 = a1 + d + d = a1 + 2d =⇒ . . . =⇒ an = a1 + (n − 1)d

Una progresión geométrica es una sucesión de números tales que el cociente entre dos términos

consecutivos es constante (razón) y corresponde a la ecuación en diferencias

ant+1 = ran

cuya solución se puede obtener por iteración de la condición inicial

a1, a2 = a a1 =⇒ a3 = a a2 = a2 a1 =⇒ . . . =⇒ an = an−1 a1

Nota Dos fórmulas muy útiles corresponden a la suma de los n primeros términos de estas progresiones

sn = a1 + · · · + an = na1 + an

2(aritmética) sn = a1 + · · · + an =

n a0 r = 1a1 − an+1

1 − rr , 1

(geométrica)

Página 41 PROYECTO MATECO 3.14 (complemento)

Page 46: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

I Una ecuación en diferencias de primer orden está definida a partir de un único valor inicial pero en

una de segundo orden cada elemento depende de los dos anteriores y se necesitan dos valores iniciales. En

una ecuación en diferencias de orden n depende de los n anteriores y se necesitan n valores iniciales. ♣

Una segunda opción es resolver la ecuación mediante el comando solve_rec, que resuelve la mayoría de

las ecuaciones lineales y sus correspondientes problemas de valor inicial.

Ejemplo 4.5 En el modelo maltusiano de población en tiempo discreto, ejemplo 4.1, podemos obtener la

solución directamente

( % i1) load(solve_rec)$

( % i2) solve_rec(p[t]=(1+k)*p[t-1],p[t]);

pt = %k1 (k + 1)t ( % o2)

( % i3) solve_rec(p[t]=(1+k)*p[t-1],p[t],p[0]=p0);

pt = (k + 1)t p0 ( % o3)

Ejercicio 4.6 Obtener la solución general del modelo de crecimiento maltusiano si se incorpora un flujo

de migración constante, m, que puede ser positivo (inmigración) o negativo (emigración). ♣

Ejercicio 4.7 Obtener la solución general de los siguientes sistemas dinámicos:

(a) xt+2 + 3xt+1 + 2xt = 0 (b) 2xt+2 + xt+1 − xt = −3 (c) xt+2 − 2xt+1 + xt = 1/2 ♣

Maxima no tiene un comando específico para resolver sistemas con más de una variable pero como nos

vamos a limitar a los lineales podemos transformarlos en una ecuación del mismo orden que el sistema.

Ejercicio 4.8 Obtener la solución general de los siguientes sistemas dinámicos:

(a)

xt+1 = xt + yt

yt+1 = 4xt + yt

(b)

xt+1 = xt + yt

yt+1 = xt − yt

(c)

xt+1 = xt

yt+1 = 2xt + yt

(d)

xt+1 = −2xt + yt + 1

yt+1 = xt − 2yt − 1(e)

xt+1 = 3xt − 2yt − 2

yt+1 = 2xt − 2yt + 1(f)

xt+1 = 2xt − 2

yt+1 = 2yt + 2

4.3. Estabilidad de sistemas autónomos discretos

� Al igual que en el caso continuo, en los sistemas autónomos los puntos de equilibrio corresponden a

soluciones constantes y en los sistemas de primer orden también reciben el nombre de puntos fijos pues

cumplen x∗ = f (x∗) 1.

1Una tipo de comportamiento propio de los sistemas discretos es la existencia de puntos eventualmente de equilibrio, queson soluciones que después de un número finito de iteraciones se mantienen constantes (van en tiempo finito de un estado de noequilibrio a un estado de equilibrio).

PROYECTO MATECO 3.14 (complemento) Página 42

Page 47: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

Estamos interesados en el comportamiento global de las órbitas del sistema y, en particular, en el com-

portamiento de las órbitas cercanas a los puntos de equilibrio. La primera distinción está entre puntos de

equilibrio estables, en los que las órbitas de puntos cercanos se mantienen cerca e inestables, en los que en

algún momento las órbitas se alejan de él. Si además de mantenerse cerca del punto de equilibrio se apro-

ximan a él a lo largo del tiempo tenemos un punto de equilibrio asintóticamente estable y, a veces, nos

referimos a un punto asintóticamente estable como atractor en contraposición a un repulsor, en el que las

órbitas de los puntos cercanos se alejan (si es estable pero no asintóticamente decimos que es neutralmente

estable).

Si todas las órbitas se aproximan al punto de equilibrio decimos que es globalmente estable y hablamos

de estabilidad global. En caso contrario, hablamos de estabilidad local y nos referimos al conjunto de puntos

cuyas órbitas se aproximan al punto de equilibrio como su cuenca de atracción.

Equilibrio asintóticamente

estable

Equilibrio neutralmente

estable

Equilibrio inestable

Ejemplo 4.9 Estudiar en función de sus parámetros la estabilidad de la ecuación lineal de primer orden:

xt+1 = axt + b

Solución (load(solve_rec)$)

Tenemos que distinguir si a es igual a uno o no, ya que la solución general no es válida para a = 1

( % i2) sol:solve_rec(x[t]=a*x[t-1]+b,x[t],x[0]=x0);

xt = at x0 +atb

a − 1−

ba − 1

(sol)

( % i3) sol1:solve_rec(x[t]=x[t-1]+b,x[t],x[0]=x0);

xt = x0 + bt ( % o3)

En el primer caso hay un único punto de equilibrio y en el segundo ninguno, salvo para b = 0 donde

todas las soluciones son constantes (puntos de equilibrio estables pero no asintóticamente estables):

( % i4) pto:solve(xp=a*xp+b,xp);

[xp = −b

a − 1] (pto)

( % i5) pto1:solve(xp=xp+b,xp);

[] (pto1)

Página 43 PROYECTO MATECO 3.14 (complemento)

Page 48: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

La estabilidad depende del valor del coeficiente a y consideramos ahora que es distinto de uno y defini-

mos la solución correspondiente

( % i6) define(x[t],rhs(sol));

xt := at x0 +atb

a − 1−

ba − 1

( % o6)

Para |a| < 1 el punto de equilibrio es asintóticamente estable, ya que los dos primeros sumandos se

hacen cada vez más pequeños y la solución tienden al punto de equilibrio. Si a es negativo los valores

alternan entre positivos y negativos y la solución se acerca al equilibrio oscilando amortiguadamente.

Para |a| > 1 el punto de equilibrio es inestable , ya que los valores de xn se alejan del punto de

equilibrio (si a es negativo se alejan oscilando explosivamente).

Para a = −1 cada solución alterna entre x0 y b−x0 (corresponden a soluciones periódicas o ciclos que,

al igual que en el caso continuo, aparecen cuando una solución toma el mismo valor en dos instantes).

Para representar gráficamente hay que dar valores a los parámetros, que incluimos en una lista.

( % i7) par:[a=1/2,b=1];

[a =12, b = 1] (par)

( % i8) solp:at(x[t],par);

x02t − 21−t + 2 (solp)

( % i9) ptop:at(rhs(pto[1]),par);

2 (ptop)

( % i15) lista1:at(makelist([t,ev(solp)],t,0,10),x0=0)$

lista2:at(makelist([t,ev(solp)],t,0,10),x0=4)$

grf11:points(lista1)$

grf12:points(lista2)$

grf2:explicit(ptop,t,0,10)$

wxdraw2d(point_type=circle,points_joined=true,grf2,color=green,grf11,color=red,grf12)$( % t15)

Práctica 11 (Modelo de crecimiento de Harrod-Domar) Este modelo relaciona la renta (Y) y el ahorro (S )

con la inversión (I), correspondiente al incremento en el stock de capital (K), bajo las siguientes hipótesis:

El ahorro es proporcional al ingreso, S = sY, donde s, con 0 < s < 1, es el coeficiente de ahorro.

El stock de capital es proporcional al ingreso, K = vY, donde v, con v > 0, es el coeficiente tecnoló-

gico; lo que se traduce en que la inversión es proporcional a la variación del ingreso.

PROYECTO MATECO 3.14 (complemento) Página 44

Page 49: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

El equilibrio se alcanza cuando el ahorro es igual a la inversión S = I.

a) En el modelo en tiempo continuo obtener la ecuación que relaciona el ingreso con su tasa de variación

b) En el modelo en tiempo discreto obtener la ecuación que relaciona el ingreso con el ingreso del periodo

anterior considerando que el ahorro depende del ingreso en el periodo anterior).

c) Obtener la solución de ambos modelos y comparar su comportamiento a largo plazo. ♣

4.3.1. Estabilidad de sistemas dinámicos lineales con coeficientes constantes

� En los sistemas lineales univariantes

anxt+n + an−1xt+n−1 + · · · + a1xt+1 + a0xt = k

la estabilidad depende del tipo de funciones de un sistema fundamental de soluciones, que, a su vez, depende

del tipo de soluciones de la ecuación característica obtenida al sustituir cada valor retardado xt+n por la

potencia enésima de lambda λn (raíces características)

anλt+n + an−1λ

t+n−1 + · · · + a1λt+1 + a0 = 0

En las correspondientes soluciones del sistema aparecen potencias de base λ, que al igual que sucede en

la ecuación lineal de primer orden, son convergentes si la base tiene módulo menor que uno y divergentes

si es mayor. Esto hace que en una ecuación lineal de orden n tengamos que si todos las raíces tienen

módulo menor que uno el sistema es asintóticamente estable y si al menos una tiene módulo mayor que

uno inestable. Como el valor del módulo de una raíz está relacionado con su localización con respecto al

circulo de radio 1 (circulo unidad), decimos que es estable si todas las raíces están dentro del circulo unidad

e inestable si alguna está fuera.

En el caso particular de una ecuación lineal de orden dos,

axt+2 + bxt+1 + cxt = k con ecuación característica aλ2 + bλ1 + c = 0,

todas las raíces están dentro del circulo unidad si y sólo si Q(0) es menor que coeficiente líder y Q(1) y

Q(−1) son mayores que cero (condiciones de Jury), de modo que el punto de equilibrio es asintóticamente

estable si y sólo si

a + b + c > 0 a − b + c > 0 a > c

� En un sistema dinámico lineal con varias variables de primer orden

xt+1 = A xt + b

Página 45 PROYECTO MATECO 3.14 (complemento)

Page 50: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

la estabilidad depende de los autovalores de su ecuación característica, que es la ecuación característica

de la matriz del sistema.

a la hora de estudiar su estabilidad podemos escribir el sistema como xt+1 = A xt + b, con lo que un

punto de equilibrio verifica x∗ = A x∗ + b, lo que hace que podamos expresar el sistema en función de las

desviaciones del punto de equilibrio como un sistema homogéneo

xt+1 = A xt + b = A xt + x∗ − A x∗ = A(xt − X∗x) + x∗ ⇐⇒ xt+1 − x∗ = A(xt − x∗)

donde suponemos que la matriz I − A es invertible, de forma que tenemos un único punto de equilibrio

x∗ = (I − A)−1b.

Los requisitos para que el sistema sea estable son los mismos que para que lo sea un sistema dinámico

regido por una ecuación lineal de igual orden a la dimensión del sistema con la misma ecuación caracte-

rística. Así, en un sistema lineal se cumple que si todos las raices tienen módulo menor que uno el sistema

es asintóticamente estable y que si al menos una raíz tiene módulo mayor que uno el sistema es inestable.

Igualmente, decimos que el sistema es estable si todas las raíces están dentro del circulo unidad e inestable

si alguna está fuera.

Ejercicio 4.10 Estudiar la estabilidad de los puntos de equilibrio de los sistemas del ejercicio 4.7. ♣

Ejercicio 4.11 Calcular los puntos de equilibrio de los sistemas dinámicos del ejercicio 4.8 y estudiar su

estabilidad analizando las desviaciones del sistema con respecto al punto de equilibrio. ♣

Ejercicio 4.12 (El modelo multiplicador-acelerador) En este modelo se descompone la renta como suma

de consumo, inversión y gasto

Yt = Ct + It + Gt

� El consumo es proporcional a la renta del periodo anterior Ct = bYt−1 con 0 < b < 1

� La inversión es proporcional al incremento de renta del periodo anterior It = v (Yt−1 − Yt−2) con v > 0

� El gasto es constante, Gt = G0 ∀t.

a) Comprobar que las hipótesis dan lugar a una ecuación en diferencias no homogénea de segundo orden

xt − (b + v)xt−1 + vxt−2 = G0

b) Estudiar en función de los parámetros el comportamiento a largo plazo de las soluciones.

Solución La estabilidad depende de las raíces de la ecuación característica de la ecuación homogénea

λ2 − (b + v)λ + v = 0 con λi =(b + v) ±

√(b + v)2 − 4v2

PROYECTO MATECO 3.14 (complemento) Página 46

Page 51: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

� (b + v)2 − 4v > 0: la ecuación característica tiene dos raíces reales, λ1 y λ2, y la solución general es

xt = c1λt1 + c2λ

t2 + x∗. Ambas raíces son positivas (λ1λ2 = v > 0 y λ1 +λ2 = b + v > 0) y no hay oscilaciones:

Si v < 1 las soluciones convergen al punto de equilibrio y éste es asintóticamente estable

0 < 1 − b = (1 − λ1)(1 − λ2) < 1 y 0 < v = λ1λ2 < 1 =⇒ 0 < λ1, λ2 < 1

Si v > 1 las soluciones divergen monótonamente y el punto de equilibrio es inestable

0 < 1 − b = (1 − λ1)(1 − λ2) < 1 y v = λ1λ2 > 1 =⇒ λ1, λ2 > 1

� (b + v)2 − 4v = 0 la ecuación característica tiene una única raíz real positiva, λ, por lo que tampoco hay

oscilaciones y la solución general es yt = c1λt + c2tλt + x∗

Si v < 1 las soluciones convergen y el punto de equilibrio es asintóticamente estable (0 < λ < 1).

Si v > 1 las soluciones divergen y el punto de equilibrio es inestable (λ > 1).

� (b+v)2−4v < 0 la ecuación característica tiene dos raíces complejas conjugadas λ j = α±βi y la solución

general viene dada por yt = ρt [c1 cos(θt) + c2 sen(θt)] donde ρ es el módulo de λ j y θ su argumento.

Si v < 1 las soluciones oscilan amortiguadamente y el punto es asintóticamente estable (ρ =√

v < 1).

Si v > 1 las soluciones oscilan explosivamente y el punto de equilibrio es inestable (ρ =√

v < 1).

v � 1 Hb+ vL2 � 4 v

0 1 2 3 4 50.0

0.2

0.4

0.6

0.8

1.0

En resumen, la curva (b + v)2 = 4v divide las raíces reales (soluciones

monótonas) y las raíces imaginarias (soluciones oscilantes). A su vez,

la curva v = 1 divide las raíces con modulo menor que uno (atractores)

y las raíces con modulo mayor que uno (repulsores). ♣

Práctica 12 (Matriz de migración) Los estudios demográficos realizados en cierta región muestran que

actualmente el 60 % de la población vive en el centro y el 40 % restante en el extrarradio. Además muestran

que cada año, el 5 % de la población del centro se muda al extrarradio (el 95 % permanece en el centro)

y el 3 % de la población del extrarradio se muda al centro (el 97 % se queda en el extrarradio). Para el

estudio de la evolución de la población se considera el vector de población correspondiente a cada año

como: pk = (ck, ek), donde ck es el porcentaje de la población que reside en el centro en el año k y ek el

porcentaje correspondiente a la población en el extrarradio.

� Establecer una relación matricial entre las poblaciones correspondientes a dos años consecutivos y

estudiar cómo estará distribuida la población en 20 años. ¿Cuál será su evolución a largo plazo? ♣

Página 47 PROYECTO MATECO 3.14 (complemento)

Page 52: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

4.3.2. Estabilidad de sistemas autónomos univariantes

Los puntos de equilibrio del sistema también reciben el nombre de puntos fijos, ya que, al ser soluciones

constantes, su imagen es el propio punto. Así, x∗ es un punto de equilibrio del sistema siempre y cuando

x∗ = f (x∗)

Esta caracterización permite determinar los puntos de equilibrio gráficamente, como los puntos de corte

de la gráfica de la función y la bisectriz del primer cuadrante. También permite analizar su estabilidad

mediante un gráfico que recibe el nombre de diagrama en escalera y podemos construirlo directamente

con el comando, staircase (tenemos que cargar el paquete dynamic).

Este diagrama parte del dibujo de las gráficas de la función f y de la bisectriz del primer cuadrante y

el primer paso es representar la condición inicial x0 sobre el eje de ordenadas. Al trazar una recta vertical

desde el punto, (x0, 0), hasta su punto de corte con la gráfica de la función, (x0, f (x0)), obtenemos sobre

el eje de abscisas el valor x1 = f (x0). Para trasladar el valor x1 al eje de ordenadas trazamos una recta

horizontal desde el punto (x0, x1) hasta la bisectriz obteniendo el punto de corte (x1, x1). Desde este punto

trazamos una recta vertical hasta el punto de corte con la gráfica de la función, (x1, f (x1)), obteniendo el

valor x2 = f (x1) sobre el eje de abscisas Repitiendo el proceso vamos obteniendo todos los valores de la

sucesión y visualizamos si converge o no.

Ejercicio 4.13 Estudiar mediante un diagrama en escalera la estabilidad de los puntos fijos de los siste-

mas:

(a) xt+1 = x3t (b) xt+1 = x2

t − xt + 1 ♣

Cuando es continuamente diferenciable la función que define recursivamente el sistema, xt+1 = f (xt),

podemos estudiar analíticamente la estabilidad asintótica de sus puntos de equilibrio; para lo que distingui-

mos entre puntos hiperbólicos donde | f ′(x∗)| , 1 y puntos no hiperbólicos donde | f ′(x∗)| = 1

I Cuando el punto fijo es hiperbólico la estabilidad depende del valor absoluto de la derivada:

x∗ es un atractor asintóticamente estable si | f ′(x∗)| < 1

x∗ es un repulsor inestable si | f ′(x∗)| > 1

I Cuando el punto fijo no es hiperbólico distinguimos si la derivada es positiva o negativa

Si f ′(x∗) = 1 el punto es inestable si f ′′(x∗) , 0. Si f ′′(x∗) = 0 también es inestable si f ′′′(x∗) > 0

pero asintóticamente estable si f ′′′(x∗) < 0.

PROYECTO MATECO 3.14 (complemento) Página 48

Page 53: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

Si f ′(x∗) = −1 la estabilidad depende del signo de la derivada de Schwarz de f ,

S f (x) = f ′′′(x) − 32 ( f ′′(x))2,

de forma que el punto es asintóticamente estable si S f (x∗) < 0 e inestable si S f (x∗) > 0.

Ejercicio 4.14 Estudiar analíticamente la estabilidad de los puntos de equilibrio de los siguientes siste-

mas:(a) xt+1 = −0.5xt + 3 (b) 2xt+1 = −3xt + 4 (c) xt+1 = −xt + 6

(d) xt+1 = 0.5xt + 3 (e) 4xt+2 + 4xt+1 = 2 (f) xt+1 = x2t + 3xt ♣

Práctica 13 El modelo de telaraña es un modelo dinámico discreto de oferta y demanda correspondiente

a artículos cuya producción exige un período de tiempo al final del cual se obtiene la producción corres-

pondiente al periodo y recibe su nombre por el aspecto del gráfico en el que se representa la evolución

temporal de la oferta y la demanda, que es muy parecido a un diagrama en escalera y no lo vamos a ver.

Aunque se supone que el precio se determina como consecuencia de la oferta y la demanda, este mo-

delo tiene la particularidad de que el precio del producto lo determina el mercado al final del periodo de

producción y la producción se emprende al principio del periodo siguiente suponiendo que el precio se va

a mantener hasta el final del periodo:

la demanda en t, Dt, depende del precio, pt: Dt = a − bpt con a, b > 0.

La oferta en t, S t, depende del precio del periodo anterior, pt−1: S t = c + dpt−1 con c, d > 0

La demanda se iguala con la oferta en cada periodo: Dt = S t.

En el modelo de telaraña se parte de un precio inicial p0 al que le corresponde una cantidad ofertada

para el siguiente período S (1). A esta cantidad ofertada le corresponde una demanda D(1) = S (1) y, a su

vez, a esta cantidad demandada le corresponde un precio p(1). Al precio p(1) le corresponde una cantidad

ofertada en el período siguiente S (2), dando lugar a una cantidad demandada D(2) = S (2) a la que le

corresponde un precio p(2). Y así sucesivamente.

a) Obtener la ecuación de formación del precio y analizar la estabilidad del precio de equilibrio.

b) Estudiar gráficamente la estabilidad del precio de equilibrio mediante el diagrama en escalera, par-

tiendo de un punto inicial adecuado, en los siguientes modelos de telaraña

(1) a = 10, b = 3, c = 2 y d = 1 (2) a = 25, b = 4, c = 3 y d = 4 (3) a = 45, b = 2.5, c = 5 y d = 7.5

Página 49 PROYECTO MATECO 3.14 (complemento)

Page 54: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

Solución (apartado a)

La ecuación de formación del precio se obtiene sustituyendo las dos primeras ecuaciones en la última,

sólo tiene sentido económico si a ≥ c y corresponde a un sistema dinámico discreto lineal de primer orden

no homogéneo autónomo

p(t) =a − c

b−

db

p(t − 1).

El único punto de equilibrio es:

p∗ =a − c

b−

db

p∗ ⇔ p∗ =a − cb + d

.

Para analizar su estabilidad medimos las desviaciones del precio con respecto al punto de equilibrio:

p(t) − p∗ =a − c

b−

db

p(t − 1) −a − cb + d

= −db

(p(t − 1) − p∗) =⇒ p(t) − p∗ =

(−

db

)t

(p0 − p∗)

Podemos observar que estas desviaciones forman una progresión geométrica cuya razón r =(−d

b

)es

negativa. Por tanto, los precios oscilan en torno al precio de equilibrio y su convergencia depende de si esta

razón es mayor o menor que uno:

Si |r| = db < 1 los precios convergen al precio de equilibrio oscilando amortiguadamente y éste es

asintóticamente estable.

Si |r| = db > 1 los precios oscilan en torno al punto de equilibrio pero progresivamente se alejan de él

y el punto de equilibrio es inestable.

Si |r| = db = 1 los precios oscilan entre dos valores, p0 y a−c

b − p0 y el equilibrio es estable pero no

asintóticamente estable. ♣

4.3.3. Órbitas periódicas de los sistemas autónomos univariantes

El sistema autónomo xt+1 = f (xt) tiene un punto k-periódico si hay un punto x∗ y un entero positivo k

tales que f k(x∗) = x∗. En este caso, la órbita de x∗ bajo f se denomina k-ciclo o ciclo de orden k (donde k

es el menor número tal que f k(x∗) = x∗)

{x∗, f (x∗), . . . , f k−1(x∗)}

Un punto k-periódico de f es un punto fijo del sistema xt+1 = f k(xt), por tanto, los puntos k-periódicos

de f son los puntos fijos de f k y se pueden obtener gráficamente como los puntos de corte de la bisectriz

del primer cuadrante con la gráfica de f k.

PROYECTO MATECO 3.14 (complemento) Página 50

Page 55: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

Ejercicio 4.15 Obtener los puntos de equilibrio y los ciclos de orden 2 de los siguientes sistemas:

(a) xt+1 = x2t − 0.85 (b) xt+1 = 2xt − x2

t (c) xt+1 = 3.2xt − 0.8x2t (d) xt+1 = x3

t (e) xt+1 = x2t − xt + 1. ♣

La idea de estabilidad en un punto de equilibrio refleja el comportamiento de las órbitas que pasan cerca

de él, de forma que el punto es estable cuando las iteraciones de puntos cercanos se mantienen próximas a

él y sus órbitas se comportan casi como la órbita del punto de equilibrio. Esta idea se puede extender a la

órbita de cualquier punto, considerando que la órbita de un punto x∗ es estable si se mantienen próximas a

su órbita las órbitas de los puntos que están cerca de él. De este modo, para cada ε > 0 existe un δ > 0 tal

que los puntos que están a una distancia menor que δ del punto, |x − x∗| < δ, se mantienen a una distancia

menor que ε en sucesivas iteraciones, | f k(x) − f k(x∗)| < ε ∀k > 0.

Al contrario, un punto x∗ tiene una órbita inestable si existe un ε0 > 0 tal que para todo δ > 0 existe un

punto x′ que está a una distancia menor que δ del punto, |x− x∗| < δ, cuya órbita se separa de la órbita de x∗

en alguna iteración una distancia mayor o igual a ε0, | f n(y) − f n(x∗)| ≥ ε0.

En particular, la estabilidad de un punto k-periódico del sistema xt+1 = f (xt) se reduce al estudio de

la estabilidad del punto como un punto de equilibrio del sistema xt+1 = f k(xt) y la órbita de un punto

k-periódico es estable, asintóticamente estable o inestable si el punto es un punto de equilibrio estable,

asintóticamente estable o inestable del sistema xt+1 = f k(xt).

Cuando la función f es continuamente diferenciable del criterio que tenemos para determinar la estabi-

lidad de un punto de equilibrio se deduce un criterio para determinar la estabilidad de un k-ciclo teniendo

en cuenta que [ f k]′(x0) = f ′(xk−1) · · · f ′(x1) f ′(x0)

Un k-ciclo es asintóticamente estable si | f ′(x0) f ′(x1) · · · f ′(xk−1)| < 1

Un k-ciclo es inestable si | f ′(x0) f ′(x1) · · · f ′(xk−1)| > 1. ♣

Ejercicio 4.16 Estudiar los puntos de equilibrio y los ciclos de orden 2 de los sistemas del ejercicio 4.15.♣

Ejercicio 4.17 Estudiar los puntos de equilibrio y los ciclos de los siguientes sistemas (función tienda de

campaña y función del panadero):

(a) xt+1 =

2xt 0 ≤ xt ≤12

2(xt − 1) 12 ≤ xt ≤ 1

(b) xt+1 =

2xt 0 ≤ xt ≤12

2xt − 1 12 ≤ xt ≤ 1

Práctica 14 La curva logística en tiempo discreto, al igual que el modelo continuo, surge como modelo

poblacional al suponer que variación porcentual de la población, ∆pp , no es constante y corresponde a la

Página 51 PROYECTO MATECO 3.14 (complemento)

Page 56: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

4.3. ESTABILIDAD DE SISTEMAS AUTÓNOMOS DISCRETOS

tasa promedio de nacimientos, Tn = n que sí se supone constante, menos la tasa promedio de defunciones,

Td = mp, que se supone proporcional a la población, dando lugar a la ecuación:

∆pp

= n − mp

I Esta ecuación se escribe de forma recursiva sustituyendo ∆p por p(t+1)− p(t) y despejando p(t+1):

∆pp

=p(t + 1) − p(t)

p(t)= n − mp(t)⇔ p(t + 1) = p(t) + (n − mp(t))p(t)

I La expresión habitual de la curva logística en tiempo discreto,

xt+1 = µ(1 − xt)xt

se obtiene de la ecuación recursiva dividiendo por 1 + n y multiplicando por m para tomar µ = 1 + n:

mp(t + 1)1 + n

=

(1 + n1 + n

−mp(t)1 + n

)mp(t)⇔ x(t + 1) = µ(1 − x(t))x(t) donde x(t) =

mp(t)1 + n

La variable de estado xt se interpreta como una medida de la densidad de la población relativa a la

capacidad máxima del medio y varía entre cero y uno, 0 ≤ xt < 1.

El parámetro µ tiene que ser tal que en la siguiente generación la variable de estado también esté

entre cero y uno, por lo que varía entre cero y cuatro, 0 ≤ µ < 4.

Hay dos puntos de equilibrio x∗0 = 0, correspondiente a la extinción de la población y x∗µ = 1 − 1µ,

correspondiente al alcance de la población de la capacidad máxima del medio.

� Realizar un estudio gráfico completo de los puntos fijos y ciclos la curva logística en tiempo discreto

para valores del parámetro cumpliendo:

(a) 0 < µ < 1 (b) 1 < µ < 3 (c) 3 < µ < 1 +√

6 (d) 1 +√

6 < µ < µ∞ ≈ 3.57 (e) µ∞ < µ < 4.

donde la idea de la práctica es mostrar gráficamente la siguiente situación:

0 < µ < 1: El punto de equilibrio x∗µ es negativo y el único punto fijo positivo x∗0 = 0 es estable.

µ = 1 es un valor de bifurcación del parámetro, en el que el comportamiento del sistema cambia.

1 < µ < 3: El punto de equilibrio x∗0 = 0 es inestable y el punto de equilibrio x∗µ asintóticamente

estable (cuando µ tiende a 1 el punto x∗µ se acerca a x∗0).

PROYECTO MATECO 3.14 (complemento) Página 52

Page 57: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

TEMA 4. SISTEMAS DINÁMICOS DISCRETOS Y ECUACIONES EN DIFERENCIAS

µ = 3 es un valor de bifurcación.

3 < µ < 1 +√

6: Los puntos fijos son inestables y hay dos puntos periódicos que forman un ciclo de

orden 2 asintóticamente estable:

x∗a =1 + µ −

√(µ − 3)(µ + 1)2a

, x∗b =1 + µ +

√(µ − 3)(µ + 1)2a

µ = 1 +√

6 ≈ 3.45 comienza una cadena de valores de bifurcación con duplicación de período.

Para 1 +√

6 < µ < µ∞ ≈ 3.57 la órbita de orden 2 es inestable y aparece una órbita de periodo

cuatro que es asintóticamente estable, hasta que para otro valor de bifurcación de µ la órbita de orden

4 es inestable y aparecen órbitas de periodo doble que son asintóticamente estables. Los valores de

bifurcación de µ van creciendo y las órbitas de período 2n−1 pasan a ser repulsoras y aparecen órbitas

atractoras de período 2n. Este proceso continua hasta un valor µ∞ ≈ 3.57

µ∞ ≈ 3.57 es un valor de bifurcación a partir del cual el sistema tiene infinitas órbitas periódicas

inestables de cualquier período y el comportamiento de las órbitas se va haciendo más complejo. ♣

Página 53 PROYECTO MATECO 3.14 (complemento)

Page 58: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El
Page 59: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Apéndice A

Un poco de Álgebra

� Desde el punto de vista del Álgebra, una matriz es una tabla ordenada de m × n números. En Maxima

las matrices tienen que declararse como matrices y se construyen con el comando matrix aplicado a las

filas de la matriz. Un vector es una matriz columna, que a veces escribimos como una n-tupla y en Maxima

se representa por una lista con las coordenadas del vector.

Ejemplo A.1 Vectores y matrices

( % i1) u:[1,2,3]; /*vector*/

[1, 2, 3] (u)

( % i2) A:matrix ([a,b], [c, d]); /*matriz*/

a b

c d

(A)

Podemos representar la matriz por la lista de sus filas con el comando args y transformar una lista de

listas en una matriz aplicándoles el comando matrix (con el comando apply)

( % i3) args(A); /*lista de listas*/

[[a, b], [c, d]] ( % o3)

( % i4) apply(’matrix,[[a,b],[c,d]]); /*matriz*/

a b

c d

( % o4)

En Maxima, además de las operaciones habituales, se realizan otras operando elemento a elemento

basándose en operaciones entre números. Esto hace que se empleen signos específicos para las operaciones

habituales entre vectores y matrices, que no siempre corresponden a los utilizados tradicionalmente. Para la

suma tanto de vectores como de matrices se usa el signo mas (+). Para el producto escalar de vectores y el

producto de matrices el punto normal (.). Para la potencia de matrices usamos el doble exponente ( ˆˆ ).

55

Page 60: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Ejemplo A.2 Operaciones con vectores y matrices

( % i1) u:[u1,u2];

[u1, u2] (u)

( % i2) v:[v1,v2];

[v1, v2] (v)

( % i3) A:matrix ([a11,a12], [a21, a22]);

a11 a12

a21 a22

(A)

( % i4) B:matrix ([b11,b12], [b21, b22]);

b11 b12

b21 b22

(B)

( % i5) u+v; /*suma de vectores */

(u+v=v+u)

[v1 + u1, v2 + u2] ( % o5)

( % i6) A+B; /*suma de matrices */

(A+B=B+A)

b11 + a11 b12 + a12

b21 + a21 b22 + a22

( % o6)

( % i7) α+A; /*suma α a los elementos de A */

(α+A;=A+α)

α + a11 α + a12

α + a21 α + a22

( % o7)

( % i8) u+A; /*fila i de A más coordenada i de u*/

(u+A=A+u);

u1 + a11 u1 + a12

u2 + a21 u2 + a22

( % o8)

( % i9) α*u; /*producto de

escalar por vector

(α*u=u*α)*/

[u1α, u2α] ( % o9)

( % i10) u.v; /*producto escalar

de vectores

(u.v=v.u)*/

u2 v2 + u1 v1 ( % o10)

( % i11) u*v; /*elemento a ele-

mento */

(u*v=v*u)

[u1 v1, u2 v2] ( % o11)

( % i12) A.B; /*producto de matrices */

(A.B,B.A)

a12 b21 + a11 b11 a12 b22 + a11 b12

a22 b21 + a21 b11 a22 b22 + a21 b12

( % o12)

( % i13) A.u; /*matriz por vector*/

(A.u,u.A)

a12 u2 + a11 u1

a22 u2 + a21 u1

( % o13)

( % i14) A*B; /*elemento a elemento */

(A*B=B*A)

a11 b11 a12 b12

a21 b21 a22 b22

( % o15)

( % i15) A*u; /*fila i de A por coordena-

da i de u */ (A*u=u*A)

a11 u1 a12 u1

a21 u2 a22 u2

( % o15)

PROYECTO MATECO 3.14 (complemento) Página 56

Page 61: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

APÉNDICE A. UN POCO DE ÁLGEBRA

( % i16) Aˆˆ2;/*potencia de matrices*/

a12 a21 + a112 a12 a22 + a11 a12

a21 a22 + a11 a21 a222 + a12 a21

( % o16)

( % i17) Aˆ2;/*elemento a elemento*/

a112 a122

a212 a222

( % o17)

Además Maxima calcula directamente el determinante, determinant(A), y la inversa de una matriz cua-

drada, invert(A) o Aˆˆ-1 (tiene inversa si y solo si su determinante es distinto de cero). También lo hace con

el rango, rank(A), y la traspuesta, transpose(A), de una matriz cualquiera.

En Maxima podemos construir una matriz mediante una fórmula basada en los subíndices de sus ele-

mentos con el comando genmatrix y para definir la función que actúa sobre los índices sin ponerle nombre

(función anónima) se utiliza el comando lambda. En particular, aunque hay comandos para ello, vamos a

generar la matriz nula de orden m × n y la matriz identidad de orden n (zeromatrix(m, n) e ident(n)),

θ = (0)m,ni, j=1 I = (δi j)n,n

i, j=1 con δi j =

1 si i = j

0 si i , j

donde la función δi j recibe el nombre de delta de Kronecker y en Maxima el comando es kron_delta.

( % i1) genmatrix (lambda ([i, j], 0), 3, 2);

0 0

0 0

0 0

( % o1)

( % i2) genmatrix (lambda ([i, j], kron_delta(i,j)), 3, 3);

1 0 0

0 1 0

0 0 1

( % o2)

� Un caso particular de los sistemas de ecuaciones son los sistemas lineales, A x = b, con A la matriz de

coeficientes, x el vector de incógnitas y b el vector de términos independientes:

a11x1 + a12x2 + · · · + a1nxn = b1

a21x1 + a22x2 + · · · + a2nxn = b2

......

...

am1x1 + am2x2 + · · · + amnxn = bm

A︷ ︸︸ ︷

a11 a12 · · · a1n

a21 a22 · · · a2n

......

...

am1 am2 · · · amn

x︷︸︸︷

x1

x2

...

xn

=

b︷ ︸︸ ︷

b1

b2

...

bm

En la expresión vectorial interpretamos las incógnitas como los coeficientes que permiten expresar el

vector de términos independientes como combinación de las columnas de A:

a1x1 + a2x2 + . . . + an + xn = b.

Página 57 PROYECTO MATECO 3.14 (complemento)

Page 62: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

� Una solución del sistema es un vector x∗ = (x∗1, x∗2, · · · , x

∗n) que verifica todas las ecuaciones, es decir, tal

que A x∗ = b. Puede suceder que tenga solución (compatible) o que no (incompatible). Si la tiene puede ser

única (determinado) o no (indeterminado). En Maxima para resolver un sistema, lineal o no, utilizaremos

el comando solve que distingue los distintos casos y, en su caso, introduce los parámetros necesarios.

Ejemplo A.3

( % i1) sist:[2*x+2*y+5*z=21,2*x-y+z=6];

[5z + 2y + 2x = 21, z − y + 2x = 6] (sist)

( % i3) sist:[2*x+2*y+5*z=21,2*x+2*y+5*z=6];

[5z+2y+2x = 21, 5z+2y+2x = 6] (sist)

( % i2) solve(sist,[x,y,z]);

[[x = −7 %r1 − 33

6, y = −

4 %r1 − 153

, z = %r1]]

( % o2)

( % i4) solve(sist,[x,y,z]);

[] ( % o4)

El parámetro utilizado en el primer sistema es z = %r1 y lo introduce Maxima numerando los paráme-

tros que aparecen en cada sesión de manera sucesiva. ♣

Una base de un espacio vectorial n-dimensional es un conjunto de n vectores linealmente indepen-

dientes que al hacer combinaciones lineales con ellos genera todos los vectores del espacio. Cada base es un

sistema de referencia, ya que la combinación es única para cada vector y podemos identificar el vector con

los coeficientes de la combinación lineal, que reciben el nombre de coordenadas del vector en la base:

~v = a1~u1 + a2~u2 + · · · + an~un. =⇒ ~v = (a1, a2, . . . , an)B.

Si conocemos las coordenadas de los vectores de B respecto a C podemos transformar las coordenadas

de un vector respecto a B en coordenadas respecto a C mediante la ecuación del cambio de base de B a C

xC = P xB

donde P (matriz de paso) tiene como columnas las coordenadas de los vectores de B respecto de C y su

determinante es distinto de cero, det(P) , 0 (condición necesaria y suficiente para que sea base).

Ejemplo A.4 Sea B = {u1, u2)} con u1 = (1, 1) y u2 = (1,−1) una base.

La base canónica establece el sistema de

coordenadas cartesiano formado por lí-

neas verticales y horizontales. En la base

B las líneas que lo forman siguen las di-

recciones de los vectores de la base. Base C Base B

PROYECTO MATECO 3.14 (complemento) Página 58

Page 63: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

APÉNDICE A. UN POCO DE ÁLGEBRA

Si denotamos por (α, β) las coordenadas respecto a B y por (x, y) las coordenadas respecto a la base

canónica la ecuación del cambio de base es:

x

y

=

1 1

1 −1

·αβ

( % i5) u1:[1,1]$ u2:[1,-1]$

P:transpose(matrix(u1,u2))$

u:transpose(matrix([x,y]))$

v:transpose(matrix([ %alpha, %beta]))$

( % i6) u=P.v;

x

y

=

β + α

α − β

( % o6)

( % i7) v=(Pˆˆ-1).u;

αβ =

y2

+x2x

2−

y2

( % o7)

Los subespacios vectoriales son subconjuntos del espacio vectorial que mantienen la estructura de espa-

cio vectorial, de modo que cada combinación de vectores del subespacio está dentro del subespacio (condi-

ción necesaria y suficiente) y tales que contienen al vector cero (condición necesaria). Se pueden generar a

partir de un conjunto de vectores linealmente independientes cuyo número es la dimensión del subespacio

(base del subespacio) y son solución de un sistema homogéneo (ecuaciones implícitas del subespacio).

Ejemplo A.5 Obtener la dimensión, base y ecuaciones paramétricas del siguiente subespacio dado por

sus ecuaciones implícitas:

E = {(x, y, z) ∈ R3/ 2x + 2y + 5z = 0, 2x − y + z = 0}

Solución Las ecuaciones implícitas forman un sistema que, al estar en<3, tienen tres variables.

( % i2) sist:[2*x+2*y+5*z=0,2*x-y+z=0];

var:[x,y,z]$

[5z + 2y + 2x = 0, z − y + 2x = 0] (sist)

( % i3) sol:solve(sist,var); /*paramétricas*/

[[x = −7 %r1

6, y = −

4 %r13

, z = %r1]]

(sol)La dimensión es el número de parámetros, que se sustituyen por valores para obtener la base:

( % i4) length(var)-rank(A); /*dimensión*/

1 ( % o4)( % i5) at(sol[1], %r1=6)$ at(var, %); /*base*/

[−7,−8, 6] ( % o5)

Podemos calcula la base de un sistema homogéneo dado por su matriz con el comando nullspace:

( % i7) A:coefmatrix(sist,var);

2 2 5

2 −1 1

(A)

( % i8) nullspace(A);

span

7

8

−6

( % o8)

Página 59 PROYECTO MATECO 3.14 (complemento)

Page 64: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

� Directamente relacionadas con las matrices están las aplicaciones lineales, cuya principal característica

es que la imagen de una combinación lineal de vectores se transforma en la correspondiente combinación

lineal de la imagen de estos vectores (condición necesaria y suficiente para que una aplicación sea lineal).

Es fácil reconocerlas pues en la expresión explícita de f (x) ∈ Rm para x ∈ Rn, que recibe el nombre de ex-

presión analítica, sus funciones componentes son combinaciones lineales de las variables independientes

f (x1, . . . , xn) = ( f1(x1, . . . , xn), . . . , fm(x1, . . . , xn))

I La expresión matricial de f respecto a las bases canónicas es f (x) = Ax, donde la matriz A recibe

el nombre de matriz de la aplicación lineal y en ella los elementos de cada fila son los coeficientes de las

variables en cada componente (las columnas corresponden a la imagen de los vectores de la base canónica):

f1(x1, . . . , xn) = a11x1 + a12x2 + . . . + a1nxn

f2(x1, . . . , xn) = a21x1 + a22x2 + . . . + a2nxn

...

fm(x1, . . . , xn) = am1x1 + am2x2 + . . . + amnxn

⇐⇒

y1

y2

...

ym

=

f (e1)↓

f (e2)↓ · · ·

f (en)↓

a11 a12 · · · a1n

a21 a22 · · · a2n

...... · · ·

...

am1 am2 · · · amn

x1

x2

...

xn

Ejercicio A.6 Obtener la expresión matricial y analítica de las siguientes aplicaciones lineales:

(a) f (x, y, z) = (2x + y, x − y + 3z, x + z) (b) g(x, y, z) =

1 1 −1

1 −1 1

x

y

z

(c)

h(1, 0) = (1, 1, 1)

h(0, 1) = (0,−1, 0)

Solución

(a) En este caso tenemos como dato la expresión analítica y la matriz de la aplicación lineal es su jacobiana:

( % i2) f(x,y,z):=[2*x+y,x-y+3*z,x+z];

var:[x,y,z]$

f (x, y, z) := [2x+y, x−y+3z, x+z] ( % o1)

( % i3) A:jacobian(f(x,y,z),var);2 1 0

1 −1 3

1 0 1

(A)

(b) En este caso tenemos como dato la expresión matricial

( % i5) B:matrix([1,1,-1],[1,-1,1]); var:[x,y,z]$1 1 −1

1 −1 1

(B)

( % i6) define(g(x,y,z),flatten(args(B.var)));

g (x, y, z) := [−z + y + x, z− y + x] ( % o6)

PROYECTO MATECO 3.14 (complemento) Página 60

Page 65: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

APÉNDICE A. UN POCO DE ÁLGEBRA

(c) En este caso tenemos como dato la imagen de la base canónica que nos da las columnas de la matriz

( % i9) u1:[1,1,1]; u2:[0,-1,0]; var:[x,y]$

[1, 1, 1] (u1)[0,−1, 0] (u2)

( % i10) define(h(x,y),var[1]*u1+var[2]*u2);

h (x, y) := [x, x − y, x] ( % o10)

� En general, el espacio de partida y el de llegada no tienen por qué coincidir, pero un caso que nos ocupa

es el problema de obtener la expresión más simple de un endomorfismo en el que el espacio inicial y el

final son el mismo y cuya matriz asociada es cuadrada (consideramos la misma base en ambos espacios).

I Si y = Ax es la expresión matricial respecto a la base canónica su expresión respecto a la base B es

yB = P−1 A P xB,

donde x = P xB es la ecuación del cambio de base de B a la base canónica (P es la matriz de paso).

Estamos interesados en obtener una base en la que la expresión del endomorfismo sea lo más sencilla

posible y la situación ideal se da si existe una base respecto a la que su matriz asociada es diagonal, caso en

el que decimos que el endomorfismo es diagonalizable. En este caso existirá una matriz de paso P tal que

P−1 A P = D con D diagonal

I Un escalar λ ∈ R es un autovalor de un endomorfismo f si existe un vector no nulo u ∈ Rn tal que

f (u) = λ u,

donde cada vector no nulo que cumple la igualdad recibe el nombre de autovector de f asociado a λ y junto

con el vector nulo forman el subespacio de autovectores asociado al autovalor

H(λi) = {u ∈ Rn/(A − λi I) u = 0}

I Si la matriz asociada al endomorfismo en una base es diagonal la imagen de todos los vector de la base

es proporcional a ellos mismos, de modo que, como se puede observar, un endomorfismo es diagonalizable

siempre y cuando tengamos una base formada por autovectores:

D =

d1 0 · · · 0

0 d2 · · · 0...

.... . .

...

0 0 · · · dn

⇐⇒

f (u1) = d1u1

f (u2) = d2u2

.... . .

f (un) = dnun

Página 61 PROYECTO MATECO 3.14 (complemento)

Page 66: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

I Si A es la matriz del endomorfismo sus autovalores son las soluciones de la ecuación característica:

|A − λ I| = 0,

que corresponde a un polinomio de grado n que se obtiene con el comando charpoly (A, %lambda) y donde

las soluciones pueden estar repetidas (su multiplicidad (algebraica) es el número de veces que aparecen).

I En Maxima podemos obtener los autovalores y sus multiplicidades con el comando eigenvalues(A).

Con el comando eigenvectors(A) obtenemos además una base de cada subespacio de autovectores.

I El endomorfismo es diagonalizable si al unir las bases de los subespacios de autovectores obtenemos

un número de autovectores suficiente para formar una base. Como este número está limitado para cada

autovalor por su multiplicidad (1 ≤ dim(H(λi)) ≤ mi), solo obtendremos esta base si en cada subespacio

obtenemos el número de vectores linealmente independientes que nos indica su multiplicidad. Por tanto

A es diagonalizable si y sólo si dim(H(λi)) = mi ∀ i : 1 ≤ i ≤ k.

Ejemplo A.7 Obtener, si es posible, una expresión diagonal de las siguiente matrices, junto con la corres-

pondiente matriz de paso:

A =

1 1 1

1 1 1

1 1 1

B =

1 −1 1

1 3 1

0 0 2

Solución

( % i2) A:matrix([1,1,1],[1,1,1],[1,1,1])$ eigenvectors(A);

[[[0, 3], [2, 1]], [[[1, 0,−1], [0, 1,−1]], [[1, 1, 1]]]] ( % o2)

Los autovalores son λ1 = 0 y λ2 = 3 de multiplicidades respectivas m1 = 2 y m2 = 1. La matriz A tiene

tres autovectores linealmente independientes y, por tanto, es diagonalizable. La base y la matriz de paso se

obtienen de la lista de autovectores:

( % i4) autovect:eigenvectors(A)[2]$

base:append(autovect[1],autovect[2]);

[[1, 0,−1], [0, 1,−1], [1, 1, 1]] (base)

( % i5) P:transpose(apply(’matrix,base));

1 0 1

0 1 1

−1 −1 1

(P)

( % i7) B:matrix([1,-1,1],[1,3,1],[0,0,2])$ eigenvectors(B);

[[[2], [3]], [[[1,−1, 0]]]] ( % o7)El único autovalor es λ = 2 de multiplicidad m = 3. La matriz B tiene solo un autovector linealmente

independiente y, por tanto, no es diagonalizable. ♣

PROYECTO MATECO 3.14 (complemento) Página 62

Page 67: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

APÉNDICE A. UN POCO DE ÁLGEBRA

� Cuando no es diagonalizable buscamos una expresión de la matriz que permita operar de forma sencilla,

que recibe el nombre de forma canónica de Jordan.

Esta expresión es una matriz cuadrada diagonal por cajas del mismo orden que la matriz original en la

que cada caja se puede descomponer como suma de una matriz diagonal, D, y una matriz nilpotente, J −D,

cuyas potencias son cero a partir de cierto exponente. Cada caja está asociada a un autovalor λ y tiene como

elementos no nulos el autovalor en la diagonal principal y unos en la diagonal inmediatamente superior:

J =

J1 θ . . . θ

θ J2 . . . θ

......

. . ....

θ θ . . . Jk

J =

)J =

λ 1

0 λ

J =

λ 1 0

0 λ 1

0 0 λ

J =

λ 1 0 0

0 λ 1 0

0 0 λ 1

0 0 0 λ

Cuando la matriz es diagonalizable su forma de Jordan es la correspondiente matriz diagonal con todas

las cajas de orden 1. De modo que las formas de Jordan son generalizaciones de las matrices diagonales,

con la ventaja de que toda matriz tiene una forma canónica semejante.

I Para determinar la matriz de paso y la base en la que se expresa la forma canónica ampliamos el

concepto de autovector con el concepto de autovector generalizado de orden k asociado a un autovalor λ

como un vector u , θ tal que (A − λ I)k u = 0 donde el subespacio que forman, junto al vector cero, es

Hk(λi) = {u ∈ Rn/(A − λi I)k u = 0}

Estos subespacios forman una cadena que empieza en el vector cero, H0(λi) = θ y continua con el subes-

pacio de autovectores, H1(λi) = H(λi). La cadena sigue creciendo hasta un orden ki en el que la dimensión

del subespacio coincide con la multiplicidad del autovalor, de forma que siempre podamos obtener tantos

autovectores generalizados como nos indica la multiplicidad:

H0(λ) ⊆ H1(λ) ⊆ H2(λ) ⊆ · · ·Hki−1(λi) ⊆ Hki(λi) = Hk(λi) con dim(Hk(λi)) = mi ∀ k ≥ ki

I Para obtener una base de autovectores generalizados y la forma canónica cargamos el paquete diag.

El número de cajas de cada orden asociadas a cada autovalor, que recibe el nombre de partición de

multiplicidad, se obtiene directamente con el comando jordan.

La forma canónica se construye con el comando dispJordan aplicado a la salida del comando jordan.

La matriz de paso se obtiene con el comando ModeMatrix (la base se obtiene a partir de ella).

Página 63 PROYECTO MATECO 3.14 (complemento)

Page 68: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

Ejemplo A.8 Obtener una forma canónica de la matriz B del ejemplo A.7, en el que vimos que no es

diagonalizable, al tener un autovalor triple y un solo autovector linealmente independiente.

Solución

( % i11) load("diag")$

J1:jordan(B);

%lambda:J1[1][1];

[[2, 3]] (J1)2 (o11)

J:dispJordan (J1);

2 1 0

0 2 1

0 0 2

(J)

Con el comando ModeMatrix obtenemos la matriz de paso, y, por tanto, la base:

( % i35) P:ModeMatrix(B);

base:args(P); −2 1 0

2 1 0

0 0 1

(P)

[[−2, 1, 0], [2, 1, 0], [0, 0, 1]] (base)

( % i36) (Pˆˆ-1).B.P; /* comprobación*/

2 1 0

0 2 1

0 0 2

( % o36)

� Para calcular la potencia k-esima de una matriz, Ak, y su exponencial, eA, el primer paso es obtener la

forma canónica (o la matriz diagonal si es diagonalizable), y utilizar que de J = P−1AP se tiene A = PJP−1

con P la matriz de paso y J su forma canónica (o la matriz diagonal) de forma que:

I Si A es diagonalizable Ak = PDkP−1 y eA = PeDP−1

D =

λ1 0 . . . 0

0 λ2 . . . 0

0 0 . . . λn

=⇒ Dk =

λ1

k 0 . . . 0

0 λ2k . . . 0

0 0 . . . λnk

eD =

eλ1 0 . . . 0

0 eλ2 . . . 0

0 0 . . . eλn

I Si A no es diagonalizable Ak = PJkP−1 y eA = PeJP−1

Para calcular Jk y eJ se descompone J como J = D + J0, con D la diagonal principal de J y J0 igual que J

pero con ceros en diagonal principal (J0 = J −D) y se tiene en cuenta que existe una potencia de J0 a partir

de la cual las potencias sucesivas son cero.

I Para la potencia se aplica el binomio de Newton

Jk = (D + J0)k =

(k0

)Dk +

(k1

)Dk−1J1

0 +

(k2

)Dk−2J2

0 + · · ·

PROYECTO MATECO 3.14 (complemento) Página 64

Page 69: Sistemas dinámicos con Maxima - Universidad de …1.1. CONCEPTOS GENERALES Maxima incluye la mayoría de los símbolos y funciones matemáticas, así como múltiples comandos. El

APÉNDICE A. UN POCO DE ÁLGEBRA

I Para la exponencial utilizamos que eJ = eD+J0 = eD · eJ0 y se aplica el desarrollo en serie de eJ0

eJ0 =

∞∑k=0

1k!

Jk0 = I + J0 +

12!

J20 +

13!

J30 + . . .

En Maxima ambos casos se obtienen directamente con el desarrollo en serie de la correspondiente

función aplicado a la matriz mediante el comando mat_function (f, A):

Ejemplo A.9 Obtener la potencia k-esima y la exponencial de las matrices del ejemplo A.7.

El primer paso es obtener, según el caso, la matriz diagonal o la forma canónica y la correspondiente matriz

de paso, que aquí obtenemos directamente:

( % i3) load("diag")$ A:matrix([1,1,1],[1,1,1],[1,1,1])$ B:matrix([1,-1,1],[1,3,1],[0,0,2])$

( % i25) pot(x) := block ([k], declare (k, integer), xˆk)$

mat_function (pot, A);

mat_function (pot, B);

3k−1 3k−1 3k−1

3k−1 3k−1 3k−1

3k−1 3k−1 3k−1

( % o24)

2k−1 − 2

(k 2k−2 − 2k−2

)2k−1 − 2

(k 2k−2 + 2k−2

)k 2k−1 − (k − 1) k 2k−2

2k−1 + 2(k 2k−2 − 2k−2

)2k−1 + 2

(k 2k−2 + 2k−2

)k 2k−1 + (k − 1) k 2k−2

0 0 2k

( % o25)

( % i26) mat_function (exp, A);

%e3

3 + 23

%e3

3 −13

%e3

3 −13

%e3

3 −13

%e3

3 + 23

%e3

3 −13

%e3

3 −13

%e3

3 −13

%e3

3 + 23

( % o26)

( % i27) mat_function (exp, B);

0 −%e2 0

%e2 2 %e2 2 %e2

0 0 %e2

( % o27)

Práctica 15 La energía que utiliza cierta fábrica proviene de dos fuentes de energía: carbón y electricidad

convencional. La compañía propietaria quiere introducir energía renovable y decide reducir un 5 % anual

el gasto en cada una de las energías procedentes de fuentes no renovables, manteniéndose constante el

gasto total. ¿Cuál será el porcentaje que dedicará a energías renovables dentro de cinco años si ahora

utiliza 40.000 kw procedentes del carbón y 60.000 kw de la electricidad convencional? ♣

Página 65 PROYECTO MATECO 3.14 (complemento)